如果条件PHP,回显里面的PHP代码

时间:2014-04-03 16:28:13

标签: php opencart

我想将PHP添加到PHP if语句中。更确切地说,我想根据许可在OpenCart中显示/隐藏模块。 我最终得到了类似的东西:

<?php if ($this->user->hasPermission('access', 'module/' <?php echo $extension['name']; ?> ')) { ?>

整个实施

<?php foreach ($extensions as $extension) { ?>
      <?php if ($this->user->hasPermission('access', 'module/' <?php echo $extension['name']; ?> ')) { ?>
      <tr>
        <td class="left"><?php echo $extension['name']; ?></td>
        <td class="right"><?php foreach ($extension['action'] as $action) { ?>
          [ <a href="<?php echo $action['href']; ?>"><?php echo $action['text']; ?></a> ]
          <?php } ?></td>
      </tr>
      <?php } ?>
      <?php } ?>

3 个答案:

答案 0 :(得分:2)

你犯了一个错误。它应该是:

user->hasPermission('access', 'module/'.$extension['name'])) { ?>

答案 1 :(得分:2)

<?php if ($this->user->hasPermission('access', 'module/' <?php echo $extension['name']; ?> ')) { ?>

这不起作用。您已经使用PHP,因此尝试在其中进行其他回显只会导致语法错误。您希望在此处连接字符串:

<?php if ($this->user->hasPermission('access', 'module/' . $extension['name'] )) { ?>

请参阅文档:http://www.php.net/manual/en/language.operators.string.php

答案 2 :(得分:1)

代码很乱并且容易出错,我建议你用PHP来完成。

回显HTML和用户正确的字符串连接。

<?php
foreach ($extensions as $extension) {
    if ($this->user->hasPermission('access', 'module/'.$extension['name'])) {
        echo '<tr>
        <td class="left">'.$extension['name'].'</td>
        <td class="right">';
        foreach ($extension['action'] as $action) { 
           echo '[ <a href="'.$action['href'].'">'.$action['text'].'</a> ]';
        }
          echo '</td>'; 
        echo'</tr>';
    } 
}