ホームページ  >  記事  >  バックエンド開発  >  とても便利なPHP関数

とても便利なPHP関数

小云云
小云云オリジナル
2018-03-27 15:54:121461ブラウズ

この記事では主に非常に便利な PHP 関数を紹介します。これらの関数は一般的には使用されませんが、お役に立てば幸いです。

1. sys_getloadavg()
sys_getloadavt()でシステムの負荷状況を取得できます。この関数は 3 つの要素を含む配列を返します。各要素は過去 1、5、15 分間のシステムの平均負荷を表します。過剰な負荷によってサーバーをクラッシュさせるよりも、システム負荷が非常に高いときにスクリプトを積極的に停止する方が、この機能を実現しやすくするために使用されます。 残念ながら、この機能は Windows では無効です。
2. Pack()
Pack() は、md5() によって返された 32 ビットの 16 進文字列を 16 ビットのバイナリ文字列に変換でき、ストレージ領域を節約できます。
3. cal_days_in_month()
cal_days_in_month() は、指定された月の日数を返すことができます。
4. _()
WordPress 開発者は、_e() と同様にこの関数をよく目にします。これら 2 つの関数は同じ機能を持ち、gettext() 関数と組み合わせて使用​​することで Web サイトの多言語化を実現できます。詳細については、PHP マニュアルの該当部分を参照してください。
5. get_browser()
ページを送信する前にユーザーのブラウザで何ができるかを確認するのは良いことではないでしょうか? get_browser() はユーザーのブラウザの種類とブラウザでサポートされている関数を取得できますが、まず関数の参照ファイルとして機能する php_browscap.ini ファイルが必要です。
この機能によるブラウザの機能の判断は、このタイプのブラウザの一般的な特性に基づいていることに注意してください。たとえば、ユーザーがブラウザーで JavaScript サポートをオフにしている場合、関数はこれを知る方法がありません。ただし、この関数はブラウザの種類と OS プラットフォームを非常に正確に判断します。
6. debug_print_backtrace()
これはデバッグに使用される関数で、コード内の論理エラーを見つけるのに役立ちます。この関数を理解するために、例を見てみましょう:

$a = 0;
function iterate() {
global $a;
if( $a < 10 )
recur();
echo $a . “, “;
}
function recur() {
global $a;
$a++;
// how did I get here?
echo “\n\n\n”;
debug_print_backtrace();
if( $a < 10 )
iterate();
}
iterate();
# OUTPUT:
#0 recur() called at [C:\htdocs\php_stuff\index.php:8]
#1 iterate() called at [C:\htdocs\php_stuff\index.php:25]
#0 recur() called at [C:\htdocs\php_stuff\index.php:8]
#1 iterate() called at [C:\htdocs\php_stuff\index.php:21]
#2 recur() called at [C:\htdocs\php_stuff\index.php:8]
#3 iterate() called at [C:\htdocs\php_stuff\index.php:25]
#0 recur() called at [C:\htdocs\php_stuff\index.php:8]
#1 iterate() called at [C:\htdocs\php_stuff\index.php:21]
#2 recur() called at [C:\htdocs\php_stuff\index.php:8]
#3 iterate() called at [C:\htdocs\php_stuff\index.php:21]
#4 recur() called at [C:\htdocs\php_stuff\index.php:8]
#5 iterate() called at [C:\htdocs\php_stuff\index.php:25]  
7. metaphone()
这个函数返回单词的metaphone值,相同读音的单词具有相同的metaphone值,也就是说这个函数可以帮你判断两个单词的读音是否 相同。
8. natsort()
natsort()能将一个数组以自然排序法 进行排列,直接看个例子吧:
$items = array(
“100 apples”, “5 apples”, “110 apples”, “55 apples”
);
// normal sorting:
sort($items);
print_r($items);
# Outputs:
# Array
# (
# [0] => 100 apples
# [1] => 110 apples
# [2] => 5 apples
# [3] => 55 apples
# )
natsort($items);
print_r($items);
# Outputs:
# Array
# (
# [2] => 5 apples
# [3] => 55 apples
# [0] => 100 apples
# [1] => 110 apples
# )  
9. levenshtein()
Levenshtein()告诉你两个单词之间的“距离”。它告诉你如果想把一个单词变成另一个单词,需要插入、替换和删除多少字母。
看个例子吧:
$dictionary = array(
“php”, “javascript”, “css”
);
$word = “japhp”;
$best_match = $dictionary[0];
$match_value = levenshtein($dictionary[0], $word);
foreach($dictionary as $w) {
$value = levenshtein($word, $w);
if( $value < $match_value ) {
$best_match = $w;
$match_value = $value;
}
}
echo “Did you mean the ‘$best_match’ category?”;  
10. glob()
glob()会让你觉得用 opendir(), readdir()和closedir()来寻找文件非常蠢。
foreach (glob(“*.php”) as $file)
echo “$file\n”;

関連する推奨事項:

PHP 関数の静的変数の使用方法

PHP 関数の例の紹介

共有する 10 の非常に便利な PHP 関数

以上がとても便利なPHP関数の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。