4

假设我有一个这样的 php 数组:

$shop = array( array("name"=>"Tom", "level"=> 1.25 ),
               array("name"=>"Mike","level"=> 0.75 ),
               array("name"=>"John","level"=> 1.15 ) 
             ); 

我想过滤这个数组,类似于过滤带有 where 条件的 mysql 表。假设我想要每个级别高于 1 的数组。我可以遍历并检查 if 语句。有没有任何php解决方案?

4

1 回答 1

7

array_filter是您正在寻找的:

$results= array_filter($shop, function($item) { return $item['level'] > 1; });

print_r($results);

输出:

Array
(
    [0] => Array
    (
        [name] => Tom
        [level] => 1.25
    )

    [2] => Array
    (
        [name] => John
        [level] => 1.15
    )
)
于 2013-03-26T19:56:46.950 回答