$list = array('red', 'blue', 'white', 'green', 'black', 'orange', 'brown', 'violet', 'magenta');
在执行 var_dump($list) 之前,如何删除具有键 [3] 和值为“orange”的项目,然后删除没有这些项目的 var_dump($list)?
(必须使用“if”语句 - 学校作业)
$list = array('red', 'blue', 'white', 'green', 'black', 'orange', 'brown', 'violet', 'magenta');
在执行 var_dump($list) 之前,如何删除具有键 [3] 和值为“orange”的项目,然后删除没有这些项目的 var_dump($list)?
(必须使用“if”语句 - 学校作业)
foreach ($list as $key => &$value)
{
if ($value == 'orange' || $key == 3)
{
unset($list[$key])
}
echo $value . "\n";
}
你试过什么?解决问题将帮助您成为更好的程序员。
无循环
$list = array('red', 'blue', 'white', 'green', 'black', 'orange', 'brown', 'violet', 'magenta');
unset($list[3]);
unset($list[array_search('orange', $list)]);
var_dump($list);
该问题可以使用上面的 foreach 来解决,或者您可以使用只需要使用“if”语句的条件。
结合上面的两个答案将提供更有效的解决方案:
unset($list[3]);
if (($key = array_search('orange', $list)) !== false)
unset($list[$key]);
print_r($list);
unset 只是从数组中删除该元素。我会得到'orange'的$key,如果它存在,然后取消设置,最后打印数组。