加入收藏 | 设为首页 | 会员中心 | 我要投稿 岳阳站长网 (https://www.0730zz.com.cn/)- 科技、建站、数据库平台、数据湖、视觉智能!
当前位置: 首页 > 站长学院 > PHP教程 > 正文

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

发布时间:2022-07-24 10:07:35 所属栏目:PHP教程 来源:互联网
导读:首先我们来看看关于php如何操作数组中的空值的多种方法 一,implode(); 用implode()将数组输出为字符串,判断输出的字串是否为空。初看上去似乎是个不错的方法,可惜跟上一点一样,对于二维以上数组就不行了。举个例子: $arr= array(array(),array(),array(
  首先我们来看看关于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;  
  } 

(编辑:岳阳站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    热点阅读