在PHP中从数组中删除子项?

时间:2010-03-18 15:39:21

标签: php arrays

让我说我有这个阵列:

$queue = array("orange", "banana", 'apple', 'watermelon');

如果我想删除其中任何一个,例如我想删除香蕉,该怎么办?

3 个答案:

答案 0 :(得分:4)

if (in_array('banana', $array)) 
{
    unset($array[array_search('banana', $array)]);
}

答案 1 :(得分:1)

您需要search获取该元素并使用密钥删除它:

$pos = array_search('banana', $array);
if ($pos !== false) {
    unset($array[$pos]);
}

如果数组可以多次包含该值,则应使用array_keys()代替:

foreach (array_keys($array, 'banana') as $key) {
    unset($array[$key]);
}

答案 2 :(得分:0)

array_filter

$array = array_filter($array, create_function('$v', 'return $v != \'value to remove\';'));