PHP如果/ Else语句不起作用

时间:2015-06-23 20:35:08

标签: php

我有一个简单的搜索栏。

我希望它显示在除联系页面之外的每个页面上。

这是代码

function sidepanel()
{

     if ($this->request=='contact') { 

    $this->output('<div class="qa-sidepanel">');
    $this->output('</div>');

    } else
       $this->output('<div class="qa-sidepanel">');
       $this->search();
    $this->output('</div>');
}

在每个页面上,它都会显示搜索栏。

然而,当我进入联系页面时,它显示了一个非常乱糟糟的搜索栏..但仍然是一个搜索栏..为什么会这样?它根本不应该显示一个。

1 个答案:

答案 0 :(得分:3)

你错过了其他人的大括号。没有它,只会跳过侧面板div的开口,但仍会渲染搜索面板和侧边栏的关闭。

if ($this->request=='contact') { 
    $this->output('<div class="qa-sidepanel">');
    $this->output('</div>');
} else {
    $this->output('<div class="qa-sidepanel">');
    $this->search();
    $this->output('</div>');    
}

或者,如果你整理一下,就像@AdamM建议的那样:

$this->output('<div class="qa-sidepanel">');
if ($this->request !== 'contact') { 
    $this->search();
}
$this->output('</div>');