去除步骤:1、循环遍历二维数组的外层数组元素,语法“foreach($arr as $k=>$v){循环体代码}”;2、在循环体中,用unset()去除指定值,语法“if(is_array($v)){$ck=array_search(值,$v);if($ck){unset($arr[$k][$ck]);}}else{if($v===值){unset($arr[$k]);}}”。
本教程操作环境:windows7系统、PHP8.1版、DELL G3电脑
在php中,可以利用foreach语句并结合unset()函数来删除二维数组中的某个指定值。
实现步骤:
步骤1:使用foreach语句循环遍历二维数组的外层数组元素
foreach ($arr as $k => $v){
//循环体代码
}
遍历给定的 $arr 数组,在每次循环中会将当前数组的值赋给 $v,键名赋给 $k。
步骤2:在循环体中,去除二维数组中的指定值
使用is_array()函数判断外层元素是否为数组类型(是否为子数组)
如果是则使用array_search()获取指定值对应的键名,再根据键名使用unset()函数删除该元素
如果不是,则直接利用“===”判断当前元素是否为指定元素,如果是用unset()函数删除该元素。
if (is_array($v)) {
$ck = array_search(指定值, $v);
if ($ck) {
unset($arr[$k][$ck]);
}
} else {
if ($v === 指定值) {
unset($arr[$k]);
}
}
完整实现代码:去除二维数组中的1
<?php
header("content-type:text/html;charset=utf-8");
$arr = array(1, 2, 3, array(4, 1, 6), array(7, 8, 9, 10));
echo "原数组:";
var_dump($arr);
foreach ($arr as $k => $v) {
if (is_array($v)) {
$ck = array_search(1, $v);
if ($ck) {
unset($arr[$k][$ck]);
}
} else {
if ($v === 1) {
unset($arr[$k]);
}
}
}
echo "去除元素1后:";
var_dump($arr);
?>
以上就是php怎么去除二维数组中的某个值的详细内容,更多请关注编程网其它相关文章!