对于空值,我对获取这些值有点困惑。
if (empty($childProducts[$productId]["productLabels"] = $product->getAttributeText('preorderdate'))) {
echo 'Empty';}错误:分析错误:语法错误,意外的'=',应为')‘
有人能告诉我这里出了什么问题吗?
任何帮助都是非常感谢的。
发布于 2013-02-06 20:25:44
引用PHP empty()
在PHP5.5之前,empty()只支持变量;否则将导致解析错误。换句话说,以下代码将不起作用: empty(trim($name))。而应使用trim($name) == false。
你的PHP是5.5版吗?
发布于 2013-02-06 20:34:11
好的,您正在向empty()传递一个表达式。
备注:
在PHP5.5之前,empty()只支持变量;否则将导致解析错误。换句话说,以下代码将不起作用: empty(trim($name))。而应使用trim($name) == false。
来源:PHP empty()
假设您想要赋值,然后重写代码:
// Assign the value outside the condition
$childProducts[$productId]["productLabels"] = $product->getAttributeText('preorderdate');
// empty expects a variable
if (empty($childProducts[$productId]["productLabels"])) {
echo 'Empty';
}发布于 2013-02-06 20:35:52
$childProducts[$productId]["productLabels"] = $product->getAttributeText('preorderdate');
if (empty($childProducts[$productId]["productLabels"])) {
echo 'Empty';
}默认情况下,如果未设置,则$product->getAttributeText('preorderdate');应返回false
if ($childProducts[$productId]["productLabels"] = $product->getAttributeText('preorderdate');) {
echo 'Empty';
}https://stackoverflow.com/questions/14728872
复制相似问题