array_kes($array,search,type) 的妙用

    $arr = array('','0',0,22,null,1,false);
    $keys = array_keys($arr,false);
    foreach($keys as $val){
        echo "key 是 $val 在\$arr中的值 = ";
        var_dump($arr[$val]);
        echo "将其值转换为false的结果 ";
        var_dump((bool)$arr[$val]);
        echo '<br />';
    }

  结果:

  key 是 0 在$arr中的值 = string(0) "" 将其值转换为false的结果 bool(false)
  key 是 1 在$arr中的值 = string(1) "0" 将其值转换为false的结果 bool(false)
  key 是 2 在$arr中的值 = int(0) 将其值转换为false的结果 bool(false)   
  key 是 4 在$arr中的值 = NULL 将其值转换为false的结果 bool(false)
  key 是 6 在$arr中的值 = bool(false) 将其值转换为false的结果 bool(false)

     //分析

  在$arr 中 搜索 通过bool转换能够转换为false的值 将其下标返回到新数组中

   php是弱类型语言啊,数据类型的自动转换

    $arr = array('','0',0,22,null,1,false);
    $keys = array_keys($arr,false,true);
    foreach($keys as $val){
        echo "key 是 $val 在\$arr中的值 = ";
        var_dump($arr[$val]);
        echo "将其值转换为false的结果 ";
        var_dump((bool)$arr[$val]);
        echo '<br />';
    }

 结果:

 key 是 6 在$arr中的值 = bool(false) 将其值转换为false的结果 bool(false)

   分析

  传入第三个参数true

    判断值等于false 并且类型是bool类型的

posted @ 2013-04-17 22:33  刘凯1501  阅读(172)  评论(0编辑  收藏  举报