提高这段代码的速度?的foreach

时间:2016-08-02 19:54:10

标签: php foreach

$pass = array();

foreach ($var as $index) 
{
    if($index['Data']['Show'] == false)
        continue;

    $pass[] = $index;
}

echo json_encode($pass);

我需要知道如何以更简化和更快的方式获得相同的结果。

1 个答案:

答案 0 :(得分:5)

可能会稍快,我没有经过测试,但如果['Data']['Show']truefalse,那么我就是这样做的:

$pass = array_filter($var, function($v) { return $v['Data']['Show']; });

如果可能是评估为false的其他值,则:

$pass = array_filter($var, function($v) { return $v['Data']['Show'] !== false; });