PHP 二维数组和三维数组的过滤

废话不多说了,直接给大家贴代码了,具体代码如下所示:

<?php
$arr = [
[,,,,],
[,,,,]
];
$arr = [
'list' => [
[,,,],
[,,,],
[,,,],
]
];
$arr = [
'list' => [
[,,,],
[,,,],
[,,,]
]
];
$res = array_map(function($arr){
return array_filter($arr, function($v) {
return $v !== ;
});
}, $arr);
$res = array_map(function($val) {
return array_filter($val, function($v) {
return !in_array(, $v);
});
}, $arr);
$res = [];
array_walk($arr, function($val, $key) use(&$res) {
$res[$key] = array_filter($val, function($v) {
return !in_array(, $v);
});
});
var_dump($res);
var_dump($res);

下面一段代码给大家介绍php三维数组变二维数组

<?php
$result = Array(0 => Array(0 => Array(bid => 41,brealname => 'we教官',cid => 41,crealname => 'we教官')),
1 => Array(0 => Array(bid => 6,brealname => '虎子',cid => 19,crealname => '张鱼'))
);
//原数组
print_r($result);
echo "<br />";
//第一种方法:
foreach ($result as $key =>$v){
$new_arr[]=$v[0];
}
echo '<pre>';
print_r($new_arr);
//第二种方法
//初始化$arr2
$arr2=array();
//循环遍历三维数组$arr3
foreach($result as $value){
foreach($value as $v){
$arr2[]=$v;
}
}
//销毁$arr3
unset($result,$value,$v);
echo "<br /s>";
echo "第二种方法:";
echo '<pre>';
print_r($arr2);
?>

关于PHP 二维数组和三维数组的过滤小编就给大家介绍这么多,希望对大家有所帮助!

(0)

相关推荐

  • PHP二维数组排序的3种方法和自定义函数分享

    关于排序一般我们都是通过数据库或者nosql(eg:redis)先排好序然后输出到程序里直接使用,但是有些时候我们需要通过PHP直接来对数组进行排序,而在PHP里存储数据用到最多的就是对象和数组,但处理较多的就是数组,因为有非常丰富的内置函数库(其实对象一定程度上也可以理解为是数组),这些函数库很大程度上可以帮助我们实现某些功能.常用的系统函数有sort.asort.arsort.ksort.krsort等等,这里我主要说下对二维数组的排序,两种方法: 一.用PHP自带array_multiso

  • php三维数组去重(示例代码)

    假设叫数组 $my_array; 复制代码 代码如下: // 新建一个空的数组.$tmp_array = array(); $new_array = array(); // 1. 循环出所有的行. ( $val 就是某个行)foreach($my_array as $k => $val){ $hash = md5(json_encode($val));    if (in_array($hash, $tmp_array)) {        echo('这个行已经有过了');    }else{

  • PHP实现将MySQL重复ID二维数组重组为三维数组的方法

    本文实例讲述了PHP实现将MySQL重复ID二维数组重组为三维数组的方法.分享给大家供大家参考,具体如下: 应用场景 MYSQL在使用关联查询时,比如 产品表 与 产品图片表关联,一个产品多张产品图片,关联查询结果如下: $arr=[ ['id'=>1,'img'=>'img1'], ['id'=>1,'img'=>'img2'], ['id'=>1,'img'=>'img3'], ['id'=>2,'img'=>'img1'], ['id'=>2,'

  • PHP实现一维数组转二维数组的方法

    本文实例讲述了PHP实现一维数组转二维数组的方法.分享给大家供大家参考.具体实现方法如下: <?php $asr[1] = array("a","b","c","d"); $asr[2] = array("a","b","c","d"); $asr[3] = array("a","b","c&

  • PHP二维数组的去重问题解析

    之前写了一篇关于数组去重的文章,但是仅限于一维数组.下面的函数可以用于二维数组: 复制代码 代码如下: //二维数组去掉重复值 function array_unique_fb($array2D) { foreach ($array2D as $v) { $v = join(",",$v); //降维,也可以用implode,将一维数组转换为用逗号连接的字符串 $temp[] = $v; } $temp = array_unique($temp); //去掉重复的字符串,也就是重复的一

  • php二维数组排序方法(array_multisort usort)

    例如像下面的数组: 复制代码 代码如下: $users = array(    array('name' => 'tom', 'age' => 20)    , array('name' => 'anny', 'age' => 18)    , array('name' => 'jack', 'age' => 22)); 希望能按照age从小到大进行排序.笔者整理了两个方法出来,分享给大家. 1.使用array_multisort 使用这个方法,会比较麻烦些,要将age

  • php对二维数组进行相关操作(排序、转换、去空白等)

    技巧提示: array_keys($array) //返回所有键名 array_values($array) //返回所有键值 $result=array_reverse($input); //将数组颠倒,不保留键名 $result_keyed=array_reverse($input,true); //将数组颠倒,保留键名 array_keys($array,"blue"); //返回值为blue的键名 1. PHP二维数组去重复项函数  PHP数组去除重复项有个内置函数array_

  • 改写函数实现PHP二维/三维数组转字符串

    由于工作需要,自己在手册给定的示例函数基础上改写出了这样一个函数,代码如下: 复制代码 代码如下: //将多维数组中所有的数值转换成字符串---->最多支持三维数组 function implodex( $glue, $array, $separator='' ) { if ( ! is_array( $array ) ) return $array; $string = array(); $count = 0; foreach ( $array as $key => $val ) { if

  • PHP 如何获取二维数组中某个key的集合

    本文为代码分享,也是在工作中看到一些"大牛"的代码,做做分享. 具体是这样的,如下一个二维数组,是从库中读取出来的. 代码清单: 复制代码 代码如下: $user = array( 0 => array( 'id' => 1, 'name' => '张三', 'email' => 'zhangsan@sina.com', ), 1 => array( 'id' => 2, 'name' => '李四', 'email' => 'lisi@

  • PHP遍历二维数组的代码

    一开始打算用foreach来历遍,但是发现没有成功,oo不过关,没办法oo写······ 研究后决定用for循环,演示代码如下: 复制代码 代码如下: <?php $blog=array( array( "titledata"=>"titleMM", "bodydata"=>"bodyMM" ), array( "titledata"=>"titleGG", &q

  • php二维数组转成字符串示例

    复制代码 代码如下: function arr2str ($arr){    foreach ($arr as $v)    {        $v = join(",",$v); //可以用implode将一维数组转换为用逗号连接的字符串        $temp[] = $v;    }    $t="";    foreach($temp as $v){        $t.="'".$v."'".",&quo

  • php将一维数组转换为每3个连续值组成的二维数组

    本文实例讲述了php实现将一维数组转换为每3个连续值组成的二维数组.分享给大家供大家参考,具体如下: <?php $aaa = array('aa','bb','cc','dd','ee','ff','gg','hh','ii'); for($i=0;$i<3;$i++) { $bbb[] = array_slice($aaa, $i * 3 ,3); } print_r($bbb); ?> 运行结果如下: Array ( [0] => Array ( [0] => aa [

随机推荐