Adakah $array[] Benar-benar Lebih Cepat Daripada array_push() dalam PHP?

Susan Sarandon
Lepaskan: 2024-11-06 07:55:02
asal
847 orang telah melayarinya

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

Membandingkan Kelajuan $array[] dan array_push() dalam PHP

Apabila ia datang untuk menambahkan elemen pada tatasusunan dalam PHP, terdapat dua pendekatan biasa: menggunakan $array[] atau array_push(). Walaupun manual PHP mengesyorkan mengelakkan fungsi atas sebab prestasi, argumen tertentu mencadangkan bahawa $array[] adalah lebih perlahan daripada array_push(). Untuk menjelaskan isu ini, mari kita mendalami perbahasan dengan beberapa penanda aras.

Keputusan Penanda Aras

Untuk menentukan perbezaan kelajuan antara kedua-dua kaedah ini, kod berikut telah dilaksanakan:

<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>
Salin selepas log masuk

Keputusan secara konsisten menunjukkan bahawa $array[] adalah lebih kurang 50% lebih pantas daripada array_push().

PHP Manual Insight

The Manual PHP menerangkan bahawa menggunakan $array[] mengelakkan overhed memanggil fungsi untuk penambahan elemen tunggal. Anehnya, walaupun apabila menambah berbilang elemen, panggilan $array[] individu terbukti lebih pantas daripada panggilan array_push() tunggal.

Kesimpulan

Bertentangan dengan beberapa hujah, $array[] jelas lebih pantas daripada array_push() untuk penambahan elemen tunggal dan berbilang. Walaupun kedua-dua kaedah sesuai untuk senario yang berbeza, $array[] harus dipertimbangkan apabila kelajuan menjadi keutamaan.

Atas ialah kandungan terperinci Adakah $array[] Benar-benar Lebih Cepat Daripada array_push() dalam PHP?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan
Tentang kita Penafian Sitemap
Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!