在php中处理null循环

Oll*_*ass 12 php loops if-statement

Python提供了一个for ... else结构[但不是]像这样:

for value in i:
    print value
else:
    print 'i is empty'
Run Code Online (Sandbox Code Playgroud)

PHP中与此最接近的是什么?

编辑:请参阅下面的@ Evpok评论 - for ... else实际上并不像print语句所暗示的那样.我的错 - 抱歉!

J0H*_*0HN 8

if (!empty($array)){
   foreach ($array as $val)
        echo $val;
}
else
    echo "array is empty";
Run Code Online (Sandbox Code Playgroud)


Nik*_*kiC 8

为了考虑所有可遍历的,包括不可数的遍历,正确的方法是:

$iterated = false;
foreach ($traversable as $value) {
    $iterated = true;

    echo $value;
}

if (!$iterated) {
    echo 'traversable is empty';
}
Run Code Online (Sandbox Code Playgroud)

如果您正在编写通用代码,那么这就是您要走的路.如果你知道你将获得可数遍历,那么该count方法显然更好阅读.


Mar*_*c B 4

if (count($i) > 0) {
   foreach ($i as $x) { ... }
} else {
   echo 'i is empty';
}
Run Code Online (Sandbox Code Playgroud)

假设i是一个数组。