ホームページ >バックエンド開発 >PHPチュートリアル >$array[] は本当に PHP の array_push() より速いのでしょうか?

$array[] は本当に PHP の array_push() より速いのでしょうか?

Susan Sarandon
Susan Sarandonオリジナル
2024-11-06 07:55:02933ブラウズ

Is $array[] Really Faster Than array_push() in PHP?

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 サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。