php如何过滤数组
Ⅰ PHP中如何去除一个数组中的空元素
array_filter() 函数用回调函数过滤数组中的值。
该函数把输入数组中的每个键值传给回调函数。内如果回调函数返回 true,则容把输入数组中的当前键值返回结果数组中。数组键名保持不变。
例如:
<?php
function test_odd($var)
{
return($var & 1);
}
$a1=array("a","b",2,3,4);
print_r(array_filter($a1,"test_odd"));
?>
运行结果:Array ( [3] => 3 )
(1)php如何过滤数组扩展阅读:
循环遍历数组,把有值的元素放进一个新数组中。
$arr = array();
foreach ($urlArr as $key => $val) {
if (empty($val)) {continue;}
$arr[] = $val;
}
$arr是去除空元素的新数组。
Ⅱ php如何过滤数组重复值啊
|先用explode()函数分解成数组,然后用array_unique() 函数给数组去重复,然后用implode()合并成字符专串
<?php
$str='1|属2|1|5|4|2';
$a=explode('|',$str);
$b=array_unique($a);
$c=implode('|',$b);
var_mp($c);
?>
Ⅲ 怎么样才能过滤相同数组php
//考虑到你指定的键值不一定是连续的相同的,中间可以有间断,所以程序如下
//1,2,5同,3,4同
$a=array(
array(
'confuguarable_sku'=>'0572911',
'sku'=>4561,
'conseille'=>'No'),
array(
'confuguarable_sku'=>'0572911',
'sku'=>4561,
'conseille'=>'No'),
array(
'confuguarable_sku'=>'0572912',
'sku'=>4561,
'conseille'=>'No'),
array(
'confuguarable_sku'=>'0572912',
'sku'=>4561,
'conseille'=>'No'),
array(
'confuguarable_sku'=>'0572911',
'sku'=>4561,
'conseille'=>'No'),
);
print_r($a);
$b=array();
foreach($aas$key=>$value){
$temp[$key]=$value['confuguarable_sku'];
}
print_r($temp);
print_r($temp=array_unique($temp));
foreach($tempas$key=>$value){
$res[$key]=$a[$key];
}
//显示结果
print_r($res);
Ⅳ php数组筛选问题
<?php
$res=array (
0 => array('id' =>'76',
'title' =>'gf',
'type' =>'4' ,
'update_time' =>'1433814812',
'status' =>'1' ,
'view' =>'0',
'category_id' =>'2' ,
'model_id' =>'2',
'pid' =>'0'),
1 => array('id' =>'75',
'title' =>'骑士妙招破死局' ,
'type' =>'1',
'update_time' =>'1433758503',
'status' =>'1' ,
'view' =>'0' ,
'category_id' =>'2',
'model_id' =>'2',
'pid' =>'0'),
2 =>array('id' =>'74',
'title' =>'职场新人要学会的4件事',
'type' =>'5',
'update_time' =>'1433757936',
'status' =>'1',
'view' =>'0',
'category_id' =>'2',
'model_id' =>'2',
'pid' =>'0'),
3 =>array('id' =>'73',
'title' =>'职场新人该如何看待繁琐的工作',
'type' =>'5',
'update_time' =>'1433757902',
'status' =>'0',
'view' =>'0',
'category_id' =>'2',
'model_id' =>'2',
'pid' =>'0'));
$tot=count($res);
for($i=0;$i<$tot;$i++)
{
if($res[$i]['type']=='5')
{
foreach($res[$i] as $a)
{
echo("<div>".$a."</div>");
}
}
}
?>
Ⅳ php数组的重复值如何过滤掉
array_unique() 函数移除数组中的重复的值,并返回结果数组。
当几个数组元素的值相专等时,只保留第属一个元素,其他的元素被删除。
返回的数组中键名不变。
array_unique() 先将值作为字符串排序,然后对每个值只保留第一个遇到的键名,接着忽略所有后面的键名。这并不意味着在未排序的 array 中同一个值的第一个出现的键名会被保留。
Ⅵ PHP如何对一个数组进行筛选出对应的数字
<?phpfunction filter($elem){ return $elem['type'] == '空调';}$arr=Array( Array('id' => 1,'type' => '空调'), Array('id' => 2,'type' => '电视内机容'), Array('id' => 3,'type' => '空调'));$newarr = array_filter($arr, 'filter');print_r($newarr);exit;
Ⅶ php如何去除数组key
array_values() 函数返回一个包含给定数组中所有键值的数组,但不保留键名。
Ⅷ php用回调函数过滤数组中的单元
array_filter
(PHP 4 >= 4.0.6, PHP 5, PHP 7)
array_filter — 用回调函数过滤数组中的单元
1.说明
array_filter ( array $array [, callable $callback [, int $flag = 0 ]] ) : array
依次将 array 数组中的每个值传递到 callback 函数。如果 callback 函数返回 true,则 array 数组的当前值会被包含在返回的结果数组中。数组的键名保留不变。
2.参数
array
要循环的数组
callback
使用的回调函数
如果没有提供 callback 函数, 将删除 array 中所有等值为 false 的条目。更多信息见转换为布尔值。
flag
决定callback接收的参数形式:
ARRAY_FILTER_USE_KEY - callback接受键名作为的唯一参数
ARRAY_FILTER_USE_BOTH - callback同时接受键名和键值
3.返回值
返回过滤后的数组。
更新日志
版本 说明
5.6.0 添加可选的参数 flag,以及常量 ARRAY_FILTER_USE_KEY 和 ARRAY_FILTER_USE_BOTH。
范例
示例 #1 array_filter() 例子
1, "b"=>2, "c"=>3, "d"=>4, "e"=>5);
$array2 = array(6, 7, 8, 9, 10, 11, 12);
echo "Odd :\n";
print_r(array_filter($array1, "odd"));
echo "Even:\n";
print_r(array_filter($array2, "even"));
?>
Ⅸ php中过滤数组中的某个值
<?php
$bb=array('a');
$aa=array('a','b','c','d','e','f');
$cc=array_diff($aa,$bb);
print_r($cc);
?>
array_diff 返回2个数组的差集,数组元素多版的放前面权
Ⅹ php 根据某一元素值进行数组筛选
<?php
functionfilter($elem){
return$elem['type']=='空调';
}
$arr=Array(
Array('id'=>1,'type'=>'空调'),
Array('id'=>2,'type'=>'电视专机属'),
Array('id'=>3,'type'=>'空调')
);
$newarr=array_filter($arr,'filter');
print_r($newarr);
exit;