php二维数组删除
1. php二维数组去重
方法一:
//二维数组去掉重复值function array_unique_fb($array2D){ foreach ($array2D as $v){ $v=join(',',$v); //降维,也可以用implode,将一维数组转换为用逗号连接的字符串 $temp[]=$v; } $temp=array_unique($temp); //去掉重复的字符串,也就是重复的一维数组 foreach ($temp as $k => $v){ $temp[$k]=explode(',',$v); //再将拆开的数组重新组装 } return $temp;}
方法二:
//二维数组去掉重复值,并保留键值function array_unique_fb($array2D){ foreach ($array2D as $k=>$v){ $v=join(',',$v); //降维,也可以用implode,将一维数组转换为用逗号连接的字符串 $temp[$k]=$v; } $temp=array_unique($temp); //去掉重复的字符串,也就是重复的一维数组 foreach ($temp as $k => $v){ $array=explode(',',$v); //再将拆开的数组重新组装 //下面的索引根据自己的情况进行修改即可 $temp2[$k]['id'] =$array[0]; $temp2[$k]['title'] =$array[1]; $temp2[$k]['keywords'] =$array[2]; $temp2[$k]['content'] =$array[3]; } return $temp2;}
2. php如何循环删除二维数组中的元素
PHP 中的 unset() 函数可以实现
unset() 函数用来清除、销毁变量,不用的变量,我们可以用unset()将它销毁。
与删除一维数组的原理一样
数组的话,通过数组的键名来删除对应的元素
例如:
<?php
$array = array('a'=>array('a1','a2'),'b'=>array('b1','b2'));
foreach($array as $key=>$value){
if($key == 'a')[
unset($array[$key]);
}
//或者删除二维数组中二维中的元素
if($key == 'a')[
unset($array[$key][0]);
}
}
print_r($array);
?>
3. 求教php二维数组根据某一元素删除
<?php
$arr=array(
2=>array(
'catid'=>2,
'catdir'=>'notice',
),
5=>array(
'catid'=>5,
'catdir'=>'subject',
),
6=>array(
'catid'=>6,
'catdir'=>'news'
)
);
functionfindVal($arr,$dir){
foreach($arras$key=>$val){
if(in_array($dir,$val))
return$key;
}
}
functionarray_remove_by_key($arr,$key){
if(!array_key_exists($key,$arr)){
return$arr;
}
$keys=array_keys($arr);
$index=array_search($key,$keys);
if($index!==FALSE){
array_splice($arr,$index,1);
}
return$arr;
}
$keyz=findVal($arr,'subject');
print_r(array_remove_by_key($arr,$keyz));
?>
4. PHP二维数组如何实现去除重复项
PHP数组去除重复项有个内置函数array_unique(),但是php的array_unique函数只适用于一维数组,对多维数组并不适用,不过你可以在二维数组中的值,用array_unique()即可。
比如:
$array = array(array(1,1,2),array(2,3,4,3));
$temp_array = array();
foreach($array as $key=>$value){
$temp_array[$key] = array_unique($value);
}
$array = $temp_array;
5. php 删除二维数组中的IMG标签
foreach($arrayas$k=>$v){
$array[$k]['talk_content']=strip_tags($v['talk_content']);
}
或者我一般会这样写:
foreach($arrayas$k=>$v){
$array[$k]['talk_content2']=strip_tags($v['talk_content']);
}
6. php如何根据条件删除二维数组中的元素
<?php
header("Content-type:text/html;charset=utf-8");
$array=['0'=>['name'=>'张三','sex'=>'女'],'1'=>['name'=>'李四','sex'=>'男']];
foreach($arrayas$key=>$value){
if($value['name']=='张三'){
unset($array[$key]);
}
}
print_r($array);
?>
7. php中如何删除二维数组中含有指定元素的所有一维数组要求如下:
foreach( $arr as $key => $value ) {
if(in_array('w',$value)) unset($arr[$key]);
}
8. php二维数组删除指定的重复元素,只保留一条
array_unique($array);直接可以移除重复值