Php 仅当产品属性值存在时才显示该值
令人惊讶的是,我在这上面找不到任何东西。。。基本上,我在产品视图页面上调用我的自定义产品属性,如下所示:Php 仅当产品属性值存在时才显示该值,php,magento,Php,Magento,令人惊讶的是,我在这上面找不到任何东西。。。基本上,我在产品视图页面上调用我的自定义产品属性,如下所示: Men / Women: <?php echo $this->htmlEscape($_product->getmenwomen()) ?> 如果一个产品真的没有价值,我希望这一行完全不显示出来。有什么想法吗?这不是100%,因为我不确定getmenwomen()如果为空是否会返回false 如果不返回任何内容,则默认情况下应返回false <?php i
Men / Women: <?php echo $this->htmlEscape($_product->getmenwomen()) ?>
如果一个产品真的没有价值,我希望这一行完全不显示出来。有什么想法吗?这不是100%,因为我不确定getmenwomen()如果为空是否会返回false 如果不返回任何内容,则默认情况下应返回false
<?php
if ($var = $this->htmlEscape($_product->getmenwomen()) {
echo "Men / Women: " + $var;
}
?>
您的意思是,如果有值,则显示所有内容,如果没有值,则什么也不显示?只需添加一个简单的条件:
if (!empty($this->htmlEscape($_product->getmenwomen())))
echo 'Men / Women: '.$this->htmlEscape($_product->getmenwomen());
就这样,您甚至不需要在其中添加其他内容。在打印之前,您必须检查getmenwomen()的值是否确实包含您希望它包含的内容(例如男性/女性)。在本例中,我假定除空格以外的任何内容都是有效值
$menwomen = $_product->getmenwomen();
if (trim($menwomen)) {
echo "Men / Women: ".$this->htmlEscape($menwomen);
}
谢谢linus,但那段代码给了我这个错误——“致命错误:无法在写上下文中使用方法返回值”谢谢你的帮助Chris,User684736的答案似乎起到了作用。
$menwomen = $_product->getmenwomen();
if (trim($menwomen)) {
echo "Men / Women: ".$this->htmlEscape($menwomen);
}