我正在尝试打印这些值,它们打印得很好。但只要插入if语句,服务器就会发出WSOD
有人可以查看我的代码并告诉我我做错了什么吗? 我只有在field_val_nominal低于零时才需要打印值。
<?php
$node_wrapper = entity_metadata_wrapper('node', $node);
$field_val_nominal = $node_wrapper->field_price_change_nominal_comp->value();
$field_val_percent = $node_wrapper->field_price_change_percent_comp->value();
if ($field_val_nominal < 0 && $field_val_nominal != 0) : print render($field_val_nominal) . t('(') . render($field_val_percent) . t('%)') ;
?>
我一直在反对这个问题。非常感谢任何帮助。
答案 0 :(得分:2)
我总是使用花括号而不是冒号。并且您的“if”条件可以缩短为单一条件,如下所示:
<?php
$node_wrapper = entity_metadata_wrapper('node', $node);
$field_val_nominal = $node_wrapper->field_price_change_nominal_comp->value();
$field_val_percent = $node_wrapper->field_price_change_percent_comp->value();
if ($field_val_nominal < 0)
{
print render ($field_val_nominal) . t('(') . render($field_val_percent) . t('%)') ;
}
?>
答案 1 :(得分:1)
看起来像一个错字?冒号不属于你的if语句。
<?php
$node_wrapper = entity_metadata_wrapper('node', $node);
$field_val_nominal = $node_wrapper->field_price_change_nominal_comp->value();
$field_val_percent = $node_wrapper->field_price_change_percent_comp->value();
if ($field_val_nominal < 0)
print render($field_val_nominal) . t('(') . render($field_val_percent) . t('%)') ;
?>