$a=array(1,-4,6,-3,7,-2,6,4);
    
     function demo ($x){
        if ($x<0)
            return false;
        else
            return true;
    }
    
    print_r(array_filter($a,demo));
    

解决方案 »

  1.   

    [print_r(array_filter($a,color=#FF0000]'[/color]demo'));//引号
      

  2.   

    print_r(array_filter($a,'demo'));
      

  3.   

    <?php
    function odd($var)
    {
        return($var % 2 == 1);
    }function even($var)
    {
        return($var % 2 == 0);
    }$array1 = array("a"=>1, "b"=>2, "c"=>3, "d"=>4, "e"=>5);
    $array2 = array(6, 7, 8, 9, 10, 11, 12);echo "Odd :\n";
    print_r(array_filter($array1, "odd"));
    echo "Even:\n";
    print_r(array_filter($array2, "even"));
    ?> 
      

  4.   

    这里哪不对了,看不明白,你不是要打印出数组大0的数吗?没错呀!
     Array ( [0] => 1 [2] => 6 [4] => 7 [6] => 6 [7] => 4 )