函数在if语句中

时间:2014-01-30 14:56:25

标签: php kohana-3

如果函数返回true,我尝试执行if语句,如果不是

,则尝试执行else语句

基本上我需要在返回1中显示一个html类。我在下面尝试过,但是我收到了一个错误。 syntax error, unexpected 'if' (T_IF) 这就是我试过的

    <div class="inner">
        <div class="stat" 
        <?php $access->getAccess() 
        if (getAccess == 1) {
        class="unpublished"
        }
        else {

    }
    ?>
    >
</div>
</div>

这就是函数的样子

 public function getAccess()
    {
        return $this->access;
    }

我该怎么做?

5 个答案:

答案 0 :(得分:3)

尝试:

<div class="stat <?php echo $idea->getAccess() ? 'unpublished' : ''; ?>"></div>

答案 1 :(得分:2)

你的PHP代码没有回应任何东西,而且你缺少分号。

尝试简化一下:

<div class="stat <?=$idea->getAccess() == 1 ? 'unpublished' : ''?>">

P.S。您需要将所有类放入相同的属性中。

答案 2 :(得分:1)

要调用函数,您需要使用括号:

$access = getAccess();//Not getAccess

我注意到你也调用了另一个getAccess函数,所以你可能打算这样做:

$access = $idea->getAccess() ;
if ($access == 1) {

编辑:其他人指出你也错过了;

答案 3 :(得分:1)

您需要从概念上将PHP与HTML分开。发生的事情是您的PHP正由您的Web服务器解释,从而生成一个HTML文档,该文档将传递给客户端。如果$ idea有权访问,你想要的是为div添加一个类,如下所示:

<div class="inner">
    <div class="stat <?php echo $idea->getAccess() ? "unpublished" : ""?>">
    </div>
</div>

这相当于更复杂(在我看来更难阅读):

<div class="inner">
    <div class="stat <?php 
       if ($idea->getAccess()) {
         echo "unpublished";
       }
      ?>">
    </div>
</div>

答案 4 :(得分:0)

你忘记了分号:

getAccess();