服务报价 | 域名主机 | 网络营销 | 软件工具| [加入收藏]
 热线电话: #
当前位置: 主页 > php教程 > php教程 >

php删除数组中的空值或指定值操作

时间:2016-02-18 00:56来源: 作者: 点击:
首先我们来看看关于php如何操作数组中的空值的多种方法 一,implode(); 用implode()将数组输出为字符串,判断输出的字串是否为空。初看上去似乎是个不错的方法,可惜跟上一点一样,对
首先我们来看看关于php如何操作数组中的空值的多种方法
 
一,implode(); 
 
用implode()将数组输出为字符串,判断输出的字串是否为空。初看上去似乎是个不错的方法,可惜跟上一点一样,对于二维以上数组就不行了。举个例子:
 
$arr= array(array(),array(),array()); 
$str = implode(',',$arr); 
if(emptyempty($str)) echo "空"; 
else echo "非空"; 
很明显$arr是个含有三个空数组的二维数组,应该也算是空的,可是输出的确是非空。判断失败。
 
二、count();代码如下:
 
$arr= array("","",""); 
echo count($arr); 
三、in_array('', $arr));代码如下:
 
$arr= array("d","s",""); 
echo in_array('', $arr); 
这个只能说明数组中有空的元素,不能证明数组是空的,很明显也不行。
 
四、empty();这个cpyeh觉得跟前面几种方法差不多,代码如下:
 
$arr= array("","",""); 
if(emptyempty($arr)) echo "空"; 
else echo "非空"; 
//结果还是非空 
六、用strlen(),没内容的话好象长度都为1,结合上面实例我们写一个完整的删除数组空值的元素,代码如下:
 
function array_remove_key($array, $keys)  
{  
$num = count($keys);  
$num_last = $num - 1;  
$this_array_0 = &$array;  
$last_key = $keys[$num_last];  
for ($i = 0; $i < $num_last; $i++)  
{  
$this_key = $keys[$i];  
$this_var_name = 'this_array_' . $i;  
$next_var_name = 'this_array_' . ($i + 1);  
if (!array_key_exists($this_key, $$this_var_name)) {  
break;  
}  
$$next_var_name = &${$this_var_name}[$this_key];  
}  
unset(${$next_var_name}[$last_key]);  
return $array;  
(责任编辑:最模板)
顶一下
(0)
0%
踩一下
(0)
0%
------分隔线----------------------------
栏目列表
热点内容