PHP 移除陣列中的元素

URL Link //n.sfs.tw/13023

2019-01-11 18:28:08 By 張○○

假設一個全數字的陣列

  $ar=array("one","two","three","four","seven","eleven");

我想要移除其中的 "seven" 這個元素,

結果陣列要是

  $arr=array("one","two","three","four","eleven");

 

使用函數

$ar=array("one","two","three","four","seven","eleven");

if (($key = array_search("seven", $ar)) !== false) {
    unset($ar[$key]);
}

 

使用迴圈

$n = sizeof($ar);
for( $ii=0; $ii <$n; $ii++){
    if( $ar[$ii] === "seven") unset($ar[$ii]);
}

注意第三行是 三個等號的運算子 '==='

基本上用迴圈+unset ,不旦直覺而且簡單快速;但是使用函數也可以。

 

參考資料

[1] https://stackoverflow.com/questions/7225070/php-array-delete-by-value-not-key