我有一个如下所示的PHP数组:
Array
(
[0] => Array
(
[start] => DateTime Object
(
)
[end] => DateTime Object
(
)
[comment] => A comment.
)
[1] => Array
(
[start] => DateTime Object
(
)
[end] => DateTime Object
(
)
[comment] => Another comment.
)
)
我想创建一个从匹配函数输入的数组中删除元素(start,end,comment)的函数,如果不存在则返回false。是否已有PHP功能可以执行此操作?
答案 0 :(得分:6)
猜猜你的意思是array_search()
:
while (($pos = array_search($input, $multiArray)) !== false) {
unset($multiArray[$pos]);
}
答案 1 :(得分:2)
不完全是。你可以这样做:
function array_remove(&$array, $search, $strict = false) {
$keys = array_keys($array, $search, $strict);
if(!$keys)
return false;
foreach($keys as $key)
unset($array[$key]);
return count($keys);
}
与使用array_search()
不同,如果有多个匹配的条目,这将有效。