摘要:php删除指定key的方法:首先用“array_search”函数根据value去搜索;然后按key进行查找key对应的位置;最后使用自定义好的“array_remove”方法删除指定key即可。PHP删除Array数
php删除指定key的方法:首先用“array_search”函数根据value去搜索;然后按key进行查找key对应的位置;最后使用自定义好的“array_remove”方法删除指定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,所以得按绝对比较,使用!
相关文章推荐
网站谷歌评分90+意味着什么?2022-09-06
怎样将不安全网站变成安全网站访问?2022-09-26
网站排名下降,可能跟算法更新没关系2022-09-20
网站如何设置高质量的网页标题?2022-09-14
做外贸网站选哪些语言?法语、德语最吃香2022-09-13