ホームページ >バックエンド開発 >PHPチュートリアル >array_push 効率テスト_PHP チュートリアル

array_push 効率テスト_PHP チュートリアル

WBOY
WBOYオリジナル
2016-07-13 17:49:571315ブラウズ

PHPで配列に値を代入する場合、array_push()よりarray[]を使用した方が効率が高いため、様々な理由から以下のテストを行っています
テストコード:
1 2 /**
3 *アレイパフォーマンステスト
4 *for ループはパフォーマンスに影響するため、役に立ちません
5 *テストでは、$count パラメーターを変更し (10 から 100000 まで増分)、メソッドを呼び出して手動で更新します。記録時間は平均的なおおよその時間です
。 6 **/
7
8 $count = 10;
9
10 配列テスト01($count); 11
12 関数 arrayTest01($count){
13 $arr = array();
14 $time = microtime(true);
15 for($i = 0; $i 16 $array[] = $i;
17 }
18 エコー (microtime(true) - $time);
19 }
20
21 関数 arrayTest02($count){
22 $arr = array();
23 $time = microtime(true);
24 for($i = 0; $i 25 array_push($arr, $i);
26 }
27 エコー (microtime(true) - $time);
28 }
29
30?>

array[]の約2倍の効率です

テスト環境はubuntu 11とwindows 7です。

Windows php-5.2.17/Apache2.2

回($count) 10 100 1000
10000 100000 1000000

配列[] 2.31E-05 0.000104
0.000867 0.008417 0.043666
0.288323
配列プッシュ 2.79E-05
0.000181 0.001614 0.014447
0.055875 0.491052
ubuntu11.04 PHP 5.3.6/apache2.2
配列[] 1.91E-05 7.70E-05
0.000726 0.007669 0.040492 エラー

アレイプッシュ2.50E-05
1.26E-04 0.001149 0.013714
0.056978 エラー

公式サイトにはこう書いてあります

注: array_push() を使用して要素を配列に追加する場合は、関数を呼び出す追加の負担がないため、$array[] = を使用することをお勧めします。
公式ウェブサイトのリンク:
http://cn.php.net/array_push


心を育む穏やかさより抜粋

http://www.bkjia.com/PHPjc/478305.htmlwww.bkjia.comtru​​ehttp://www.bkjia.com/PHPjc/478305.html技術記事 PHP で配列に値を割り当てる場合、array_push() よりも array[] を使用する方が効率的であるため、さまざまな理由から次のテスト コードが作成されます: 1?php 2 /** 3 *配列のパフォーマンス テスト。
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。