如何正确说 IF 低于 0 然后打印


How to correctly say IF below 0 then print

我正在尝试打印值,它们打印得很好。 但是只要插入 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('%)') ;
     ?>
一段时间

以来,我一直在解决这个问题。任何帮助非常感谢。

我总是使用大括号而不是冒号。 你的"如果"条件可以缩短为一个条件,如下所示:

<?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('%)') ;
    }
 ?>

看起来像一个错字?? 冒号不属于您的 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('%)') ;
?>