Contents

PHP的array_slice與array_splice差別

回傳值

array_slice回傳是提取出來陣列
array_splice回傳是提取出來陣列

看來return 出來東西都是一樣

帶進度array參數

  • array array_slice ( array $array , int $offset [, int $length = NULL [, bool $preserve_keys = FALSE ]] )
  • array array_splice ( array &$input , int $offset [, int $length = count($input) [, mixed $replacement = array() ]] )

會發現上面兩者回傳都一樣,但帶進去陣列參數執行結果不一樣

array_splice大致上跟JavaScript的splice一樣

結論

兩者最大不同是一個call by reference一個call by value
怎麼看呢?看文件上面有個&

PHP Object好像也是call by reference(address)

參考來源: