関数は PHP のこうした力の源ですが、多くの PHP 関数は十分に活用されていません。ここでは、あまり見かけないけどとても便利な機能を10個簡単に紹介します。
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++;
// どうやってここに来ましたか? 🎜>echo “nnn”;
debug_print_backtrace();
if( $a iterate();
}
iterate();
#出力:
#0 recur() が [C:htdocsphp_stuffindex.php:8] で呼び出されました。
#1 iterate() が [C:htdocsphp_stuffindex.php:25] で呼び出されました。
#0 recur() が呼び出されました[C:htdocsphp_stuffindex.php:8]
#1 iterate() が [C:htdocsphp_stuffindex.php:21] で呼び出されました。
#2 recur() が [C:htdocsphp_stuffindex.php:8] で呼び出されました。
#3 iterate() [C:htdocsphp_stuffindex.php:25] で呼び出されます。 php:21]
#2 recur() は [C:htdocsphp_stuffindex.php:8] で呼び出されます。
#3 iterate() は [C:htdocsphp_stuffindex.php:21] で呼び出されます。
#4 recur( ) [C:htdocsphp_stuffindex.php:8] で呼び出される
#5 iterate() で [C:htdocsphp_stuffindex.php:25] で呼び出される
7. metaphone()
この関数は単語のメタフォン値を返します。 , 同じ発音を持つ単語は同じメタフォン値を持ちます。つまり、この関数は 2 つの単語が同じ発音を持つかどうかを判断するのに役立ちます。
8. natsort()
natsort() は、自然な並べ替え方法で配列を配置できます。例を見てみましょう:
$items = array( “100 apples”, “5 apples”, “ 110 個のリンゴ”、55 個のリンゴ”
);
// 通常の並べ替え:
sort($items);
print_r($items);
# 出力:
# Array
# ( この記事のリンク http://www.cxybl.com/html/wlbc/Php/20130504/37465.html