PHP if语句依赖于值

时间:2011-06-22 14:10:37

标签: php if-statement

我们目前有以下代码,如果可以查看报价,则显示链接:

        <td><?php echo $this->__($_quotation->getstatus()); ?></td>
        <td class="a-center">
            <?php if ($_quotation->isViewableByCustomer()): ?>
                    <a href="<?php echo $this->getViewUrl($_quotation) ?>"><?php echo $this->__('View Quotation') ?></a>
                <?php endif; ?>
        </td>

如果报价状态值等于有效已过期但未待处理,我们希望显示该链接。

我应该如何更改此代码以反映这一点?

2 个答案:

答案 0 :(得分:2)

我假设您打算在任何条件下显示状态单元格,并且只有在活动或过期时才链接到它。至少那是我读你的问题的方式。

假设函数$_quotation->getstatus()在国际化之前返回字符串“Active”或“Expired”,只需在显示链接的条件中添加类似的内容:

 <td><?php echo $this->__($_quotation->getstatus()); ?></td>
 <td class="a-center">
     <?php if ($_quotation->isViewableByCustomer() && ($_quotation->getstatus() == "Active" || $_quotation->getstatus() == "Expired")): ?>
          <a href="<?php echo $this->getViewUrl($_quotation) ?>"><?php echo $this->__('View Quotation') ?></a>
     <?php endif; ?>
 </td>

编辑根据以下评论,isViewableByCustomer()与此无关,请尝试:

 <td><?php echo $this->__($_quotation->getstatus()); ?></td>
 <td class="a-center">
     <?php if ($_quotation->getstatus() == "Active" || $_quotation->getstatus() == "Expired"): ?>
          <a href="<?php echo $this->getViewUrl($_quotation) ?>"><?php echo $this->__('View Quotation') ?></a>
     <?php endif; ?>
 </td>

答案 1 :(得分:0)

   <?php if ($this->__($_quotation->getstatus() == "Active" || $this->__($_quotation->getstatus() == "Expired"){?><td><?php echo $this->__($_quotation->getstatus()); ?></td>
        <td class="a-center">
            <?php if ($_quotation->isViewableByCustomer()): ?>
                    <a href="<?php echo $this->getViewUrl($_quotation) ?>"><?php echo $this->__('View Quotation') ?></a>
                <?php endif; ?>
        </td>