ホームページ >バックエンド開発 >PHPチュートリアル >PHP 関数memory_get_usage を使用して現在の PHP メモリ消費量を取得し、プログラムのパフォーマンスを最適化します。
PHP のパフォーマンス最適化プロセス中に、PHP のメモリ消費量を取得することは避けられません。memory_get_usage() 関数を使用して、現在のメモリ消費量を取得します。この関数の使用方法は簡単です。 () 関数を使用して、現在の PHP メモリ使用量を取得します。
1 つ、関数プロトタイプ intmemory_get_usage ([ bool $real_usage=false ] )
2 つ、PHP 4 >= 4.3.2、PHP 5 と互換性のあるバージョン
3 , 基本的な使い方と例1、現在のメモリ消費量を取得
<p><?php </p>echo memory_get_usage();<br />$var=str_repeat("www.scutephp.com",10000);<br />echo memory_get_usage();<br />unset($var);<br />echo memory_get_usage();<br /><p>?> </p>
結果出力:62328 122504 62416
説明:memory_get_usage()関数によって出力される値はバイト単位 2 で、書式設定されたmemory_get_usage() の結果は KB 単位で出力されます
<p><?php </p>function convert($size){ <br /> $unit=array('b','kb','mb','gb','tb','pb');<br /> return @round($size/pow(1024,($i=floor(log($size,1024)))),2).' '.$unit[$i];<br />}<br />echo convert(memory_get_usage(true));<br /><p>?></p>
出力: 256 kb3、取得カスタム関数による 配列または変数値のサイズ
<p><?php </p>function array_size($arr){<br /> ob_start();<br /> print_r($arr);<br /> $mem=ob_get_contents();<br /> ob_end_clean();<br /> $mem=preg_replace("/\n +/","",$mem);<br /> $mem=strlen($mem);<br /> return $mem;<br />} <br />$memEstimate=array_size($GLOBALS);<br /><p>?></p>
メモリ使用量を削減するには、PHP unset() を使用できることがわかります。不要になった変数を削除する機能。
同様に、
PHP mysql_free_result() 関数があります。この関数は、データベースのクエリによって取得された不要になった結果セットをクリアして、より多くの利用可能なメモリを取得できるようにします。
PHPmemory_get_usage() には、値がブール値であるパラメーター $real_usage を持つこともできます。デフォルトは FALSE で、取得されたメモリ使用量にはこの関数 (PHP メモリ マネージャー) が占有するメモリが含まれないことを意味します。TRUE に設定すると、取得されたメモリにはこの関数 (PHP メモリ マネージャー) が占有するメモリが含まれます。したがって、実際のプログラミングでは、PHPのmemory_get_usage()を使用して各メソッドが占有するメモリを比較し、どのメソッドがより少ないメモリを使用するかを選択できます。