Hayır kriterler, ama ben şahsen $array[]
bakmak temizleyici, ve sizin dizi için dizeleri yüzbinlerce ekleme planı sürece dürüst milisaniye tüyleri bölme oldukça ilgisizdir gibi hissediyorum.
Edit: Bu kodu Ran:
$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;
Kullanan ilk yöntem $array[]
, ikinci olandan neredeyse% 50 daha hızlıdır.
Some benchmark results:
Run 1
0.0054171085357666 // array_push
0.0028800964355469 // array[]
Run 2
0.0054559707641602 // array_push
0.002892017364502 // array[]
Run 3
0.0055501461029053 // array_push
0.0028610229492188 // array[]
Bu, PHP kılavuzu notları gibi, şaşırtıcı olmamalıdır:
Eğer diziye bir öğe eklemek için () array_push kullanırsanız o [] = çünkü bu şekilde bir işlevi çağırmadan hiçbir yükü yoktur $ dizi kullanmak daha iyidir.
Birden değerlerini eklerken array_push
daha verimli ise o phrased yolu ben şaşırmam. EDIT: meraktan, biraz daha test yaptım, ve hatta eklemeler büyük miktarda bireysel $array[]
aramaları daha hızlı bir büyük array_push
vardır. İlginç.