值得学习的入门示例:
unction delEmpty($v)
{
if ($v==="" || $v==="php") //当数组中存在空值和php值时,换回false,也就是去掉该数组中的空值和php值
{
return false;
}
return true;
}
$a=array(0=>"pig",1=>"Cat",2=>"",3=>"php");
print_r(array_filter($a,"delEmpty"));
最后输出结果是:Array ( [0] => pig [1] => Cat ) 相信大家已经很明白array_filter的用法了,array_filter很强悍吧!
细化一下用来做数组的配置文件过滤:
剔除函数调用如下:
如果没有提供 callback 函数,array_filter() 将删除 array 中所有等值为 FALSE 的条目.这也就是过滤数组空白元素的精华所在.
# <?php
# $entry = array(
# 0 => 'jackxiang绿色软件',
# 1 => false,
# 2 => 1,
# 3 => null,
# 4 => '',
# 5 => 'http://www.k686.com',
# 6 =>'0'
# );
# print_r(array_filter($entry));
# ?>
上面代码输出结果为:
Array
(
[0] => jackxiang绿色软件
[2] => 1
[5] => http://www.k686.com
)
可以看出,false,null,和真正的''空白以及0都被过滤了,而且数组的下标没有改变!
这样就引申出来一个新问题,如果我想对array_filter()处理过的新数组的键名序列化成0,1,2,3这样的怎么办呢?这在数组比较中是很有用的,那么需要用到 php的sort()函数.
bool sort ( array &array [, int sort_flags] )
本函数对数组进行排序。当本函数结束时数组单元将被从最低到最高重新安排。
注意: 本函数为 array 中的单元赋予新的键名。这将删除原有的键名而不仅是重新排序。
如果成功则返回 TRUE,失败则返回 FALSE。
<?php
$my_array = array("0" => "k686绿色软件", "2" => "1", "5" => "http://www.k686.com");
sort($my_array);
print_r($my_array);
?>
Array
(
[0] => 1
[1] => http://www.k686.com
[2] => k686绿色软件
)
有序化以后就可以进行大小比较了,这在纯数字且需要比较大小的数字中是十分有效的.
来源:
http://blog.sina.com.cn/s/blog_63246be50100iay0.html
http://tuzwu.javaeye.com/blog/667136
unction delEmpty($v)
{
if ($v==="" || $v==="php") //当数组中存在空值和php值时,换回false,也就是去掉该数组中的空值和php值
{
return false;
}
return true;
}
$a=array(0=>"pig",1=>"Cat",2=>"",3=>"php");
print_r(array_filter($a,"delEmpty"));
最后输出结果是:Array ( [0] => pig [1] => Cat ) 相信大家已经很明白array_filter的用法了,array_filter很强悍吧!
细化一下用来做数组的配置文件过滤:
剔除函数调用如下:
如果没有提供 callback 函数,array_filter() 将删除 array 中所有等值为 FALSE 的条目.这也就是过滤数组空白元素的精华所在.
# <?php
# $entry = array(
# 0 => 'jackxiang绿色软件',
# 1 => false,
# 2 => 1,
# 3 => null,
# 4 => '',
# 5 => 'http://www.k686.com',
# 6 =>'0'
# );
# print_r(array_filter($entry));
# ?>
上面代码输出结果为:
Array
(
[0] => jackxiang绿色软件
[2] => 1
[5] => http://www.k686.com
)
可以看出,false,null,和真正的''空白以及0都被过滤了,而且数组的下标没有改变!
这样就引申出来一个新问题,如果我想对array_filter()处理过的新数组的键名序列化成0,1,2,3这样的怎么办呢?这在数组比较中是很有用的,那么需要用到 php的sort()函数.
bool sort ( array &array [, int sort_flags] )
本函数对数组进行排序。当本函数结束时数组单元将被从最低到最高重新安排。
注意: 本函数为 array 中的单元赋予新的键名。这将删除原有的键名而不仅是重新排序。
如果成功则返回 TRUE,失败则返回 FALSE。
<?php
$my_array = array("0" => "k686绿色软件", "2" => "1", "5" => "http://www.k686.com");
sort($my_array);
print_r($my_array);
?>
Array
(
[0] => 1
[1] => http://www.k686.com
[2] => k686绿色软件
)
有序化以后就可以进行大小比较了,这在纯数字且需要比较大小的数字中是十分有效的.
来源:
http://blog.sina.com.cn/s/blog_63246be50100iay0.html
http://tuzwu.javaeye.com/blog/667136
作者:jackxiang@向东博客 专注WEB应用 构架之美 --- 构架之美,在于尽态极妍 | 应用之美,在于药到病除
地址:http://jackxiang.com/post/4114/
版权所有。转载时必须以链接形式注明作者和原始出处及本声明!
最后编辑: jackxiang 编辑于2012-7-5 17:32
评论列表