ホームページ >バックエンド開発 >PHPチュートリアル >$array[] は本当に PHP の array_push() より速いのでしょうか?
PHP の $array[] と array_push() の速度の比較
PHP で配列に要素を追加する場合、一般的なアプローチは 2 つあり、$array[] または array_push() を使用します。 PHP マニュアルではパフォーマンス上の理由から関数を避けることを推奨していますが、特定の引数では $array[] が array_push() よりも遅いことが示唆されています。この問題を明確にするために、いくつかのベンチマークを使用して議論を掘り下げてみましょう。
ベンチマーク結果
これら 2 つの方法の速度差を確認するために、次のコードが実行されました。
<code class="php">$t = microtime(true); $array = array(); for($i = 0; $i < 10000; $i++) { $array[] = $i; } print microtime(true) - $t; print '<br>'; $t = microtime(true); $array = array(); for($i = 0; $i < 10000; $i++) { array_push($array, $i); } print microtime(true) - $t;</code>
結果は一貫して $array[] がより約 50% 高速であることを示しました。 array_push().
PHP Manual Insight
PHP マニュアルでは、$array[] を使用すると、単一要素の追加で関数を呼び出すオーバーヘッドが回避されると説明されています。驚くべきことに、複数の要素を追加する場合でも、個々の $array[] 呼び出しは単一の array_push() 呼び出しよりも高速であることが証明されました。
結論
いくつかの議論に反して、 $array[] は、単一要素と複数要素の追加の両方において、array_push() よりも明らかに高速です。どちらの方法もさまざまなシナリオに適していますが、速度が優先される場合は $array[] を考慮する必要があります。
以上が$array[] は本当に PHP の array_push() より速いのでしょうか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。