首頁  >  文章  >  後端開發  >  php如何刪除指定key

php如何刪除指定key

藏色散人
藏色散人原創
2020-07-22 11:17:513844瀏覽

php刪除指定key的方法:先用「array_search」函數依照value去搜尋;然後按key進行尋找key對應的位置;最後使用自訂好的「array_remove」方法刪除指定key即可。

php如何刪除指定key

PHP刪除Array陣列裡指定的key(完整版,已封裝成函數,附測試程式碼)

問題背景:array裡一般是key--value的儲存方式,我們有時候需要刪除指定的key及對應的value。但不知道為啥,那麼多貼文都是在講知道value,並刪除該value的事情,差點誤導我。

推薦:《PHP教學

現在將我寫的完整版程式碼附下:

function array_remove($data, $key){
    if(!array_key_exists($key, $data)){
        return $data;
    }
    $keys = array_keys($data);
    $index = array_search($key, $keys);
    if($index !== FALSE){
        array_splice($data, $index, 1);
    }
    return $data;
 
}
$data = array('name'=>'apple','age'=>12,'address'=>'ChinaGuangZhou');
$result = array_remove($data, 'name');
var_dump($result);

補充說明:

1,其實問題出在array_search這個函數上,這個函數按照value去搜索,得到位置,如果找不到就返回NULL或false;

2,因此,在按key進行查找key對應的位置時,需要在$keys裡去找,這就是呼叫array_keys的原因

3,因為array_search這個函數可能會回傳NULL和false,所以得按絕對比較,使用!

以上是php如何刪除指定key的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn