PHP で PHP スクリプトによって使用されるメモリを取得するには、例として PHP 独自の関数memory_get_usage() を使用します。これは、現在の PHP スクリプトの実行によって占有されているメモリを確認できます。
memory_get_usage() の公式構文を見てみましょう。
1. 関数のプロトタイプ
int Memory_get_usage ([ bool $real_usage = false ] )
第二に、バージョンの互換性
PHP 4 >= 4.3.2、PHP 5
3、基本的な使い方と例
PHP 関数のmemory_get_usage() を直接使用して、システムが現在の PHP スクリプトの実行に割り当てたメモリ量を確認できます。
コードは次のとおりです | コードをコピー |
echomemory_get_usage(), ' |
プログラムによって出力される数値単位はバイトです。これは、その時点で PHP スクリプトによって使用されるメモリです (memory_get_usage() 関数自体によって占有されるメモリを除く)。
上記の例からわかるように、メモリ使用量を減らすために、PHP unset() 関数を使用して不要になった変数を削除できます。同様のものには、PHP の mysql_free_result() 関数が含まれます。この関数は、データベースのクエリによって取得された不要になった結果セットをクリアして、より多くの利用可能なメモリを取得できるようにします。
PHPのmemory_get_usage()関数は、値がブール値であるパラメータ$real_usageを持つこともできます。デフォルトは FALSE で、取得されたメモリ使用量にはこの関数 (PHP メモリ マネージャー) が占有するメモリは含まれません。TRUE に設定すると、取得されたメモリにはこの関数 (PHP メモリ マネージャー) が占有するメモリは含まれません。
フォーマットされたmemory_get_usage()の結果がKB単位で出力されます
コードは次のとおりです | コードをコピー |
関数convert($size){ $unit=array('b','kb','mb','gb','tb','pb'); @round($size/pow(1024,($i=floor(log($size,1024))),2).' を返します。'.$unit[$i];} エコー変換(memory_get_usage(true)); ?>
|
コードは次のとおりです
関数 array_size($arr){ | |||||||||
print_r($arr); $mem=ob_get_contents(); ob_end_clean(); $mem=preg_replace("/n +/","",$mem); $mem=strlen($mem); $mem を返します; } $memEstimate=array_size($GLOBALS); ?> 実際のプログラミングでは、memory_get_usage() 関数を使用して各メソッドが占有するメモリを比較し、どのメソッドがより少ないメモリを使用するかを選択できます。 使用機能が付属しています:
別の関数の使用例:
http://www.bkjia.com/PHPjc/631518.html |