亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

在PHP中最好使用$ array [] = $ value或array_push

在PHP中最好使用$ array [] = $ value或array_push

慕桂英4014372 2019-12-25 15:36:02
在PHP中最好使用追加數組成員的方法:$array[] = $value;要么array_push($array, $value);盡管手冊說您最好避免進行函數調用,但我閱讀$array[]的速度也比慢得多array_push()。有沒有人有任何澄清或基準?
查看完整描述

3 回答

?
繁星coding

TA貢獻1797條經驗 獲得超4個贊

沒有基準,但是我個人感覺看起來$array[]更干凈一些,并且誠實地在幾毫秒內拆分頭發是無關緊要的,除非您計劃在數組中添加成千上萬個字符串。


編輯:運行此代碼:


$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;

第一種方法使用的$array[]速度比第二種方法快50%。


一些基準測試結果:

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[]

這并不奇怪,因為PHP手冊指出了這一點:


如果使用array_push()將一個元素添加到數組中,則最好使用$ array [] =,因為這樣就不會產生調用函數的開銷。


它的用詞方式如果array_push添加多個值更有效,我也不會感到驚訝。編輯:出于好奇,進行了一些進一步的測試,即使添加了大量內容,單個$array[]通話也比一個通話快array_push。有趣。


查看完整回答
反對 回復 2019-12-25
?
慕仙森

TA貢獻1827條經驗 獲得超8個贊

array_push()的主要用途是可以將多個值壓入數組的末尾。


它在文檔中說:


如果使用array_push()將一個元素添加到數組中,則最好使用$ array [] =,因為這樣就不會產生調用函數的開銷。


查看完整回答
反對 回復 2019-12-25
?
千巷貓影

TA貢獻1829條經驗 獲得超7個贊

一個區別是,您可以使用兩個以上的參數來調用array_push(),即您可以一次將一個以上的元素推入數組。


$myArray = array();

array_push($myArray, 1,2,3,4);

echo join(',', $myArray);

版畫 1,2,3,4


查看完整回答
反對 回復 2019-12-25
  • 3 回答
  • 0 關注
  • 1102 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號