解决方案 »

  1.   

    可以这样$arr = array(0=>'', 1=>array(0=>'' ,1=>array(0=>'') ));
    var_dump(preg_replace('/[",\[\]]/', '', json_encode($arr)));
    string(0) ""
    显然对于 $brr 会是 string(1) "1"
      

  2.   

    可能这样要好些$arr = array(0=>'', 1=>array('a'=>'' ,1=>array(0=>'') ));
    var_dump(preg_replace('/"\w+":|[",{}\[\]]/', '', json_encode($arr)));
      

  3.   

    本帖最后由 xuzuning 于 2014-07-08 17:48:50 编辑
      

  4.   

    $arr=array(0=>'',1=>array(0=>'',1=>array(0=>'')));
    $brr=array(0=>'',1=>array(0=>'',1=>array(0=>'1')));echo test($arr).'<br>';
    echo test($brr);function test(&$array){
    static $r = 0;
    if(!is_array($array)){
    if(empty($array)){
    $r=0;
    }else{
    $r=1;
    }
    }
    foreach ($array as $key => $value) {
    if (is_array($value)) {
    test($array[$key]);
    } else {
    if(empty($value)){
    $r=0;
    }else{
    $r=1;
    }
    }
    }
    return $r;
    }结果:
    0
    1