如何检查PHP列表是否为空?
这显然不起作用......
list($width, $height) = create_clone($size, $filename, $filepath, $file);
if (!list) {
echo 'list is filled up with values';
} else {
echo 'list contains no values';
}
答案 0 :(得分:4)
list(...) =
是数组的解构赋值操作。如果$foo = array("one", "two");
则list ($x, $y) = $foo;
将$x
“一个”和$y
“两个”。当右侧是表达式时,所讨论的数组是没有名称的临时值。
因此,如果您担心create_clone
可能会返回一个空数组,那么您应该为数组提供一个名称,例如:
$clone = create_clone($size, $filename, $filepath, $file);
if (empty($clone)) {
# empty...
} else {
list($width, $height) = $clone;
}
答案 1 :(得分:2)
list
不仅仅是一个变量或函数,它是一个language construct填充其中的变量,你应该使用这样的东西:
list($width, $height) = create_clone($size, $filename, $filepath, $file);
if (!empty($width) && !empty($height)) {
echo 'list is filled up with values';
} else {
echo 'list contains no values';
}
答案 2 :(得分:1)
只需使用!空
像这样...
if (!empty($width) && !empty($height))
答案 3 :(得分:0)
如果您想告诉create_clone()
是否返回空结果,您需要将返回值放在自己的变量中:
$clone = create_clone($size, $filename, $filepath, $file);
if (!empty($clone)) {
list($width, $height) = $clone;
echo 'list is filled up with values';
} else {
echo 'list contains no values';
}