内联PHP/HTML

内联PHP/HTML,php,html,ternary-operator,Php,Html,Ternary Operator,我正在努力做到以下几点: <li <?PHP ($this->pageName == 'index' ? ?>class="current"<?PHP : '')?>><a href="">Home</a></li> > 但它不起作用 我想要达到的目标可能吗?如果是,我做错了什么 我知道将PHP放入HTML lol并不难。我很好奇三元运算符是否可以类似于: <?PHP if(1 == 1){?> &l

我正在努力做到以下几点:

<li <?PHP ($this->pageName == 'index' ? ?>class="current"<?PHP : '')?>><a href="">Home</a></li>
>
但它不起作用

我想要达到的目标可能吗?如果是,我做错了什么


我知道将PHP放入HTML lol并不难。我很好奇三元运算符是否可以类似于:

<?PHP if(1 == 1){?>
<p>Test</p>
<?PHP }?>

试验


什么取代了代码段中的
Yes/true

此外,您可以使用PHP速记,我不太确定您想做什么,但有一个想法,看看这段代码,看看您是否能找到答案:

<li <?=($this->pageName == 'index') ? "class='current'" : ''?>><a href="">Home</a></li>
>

括号()中的所有内容都是if-conditional\comparative。您所做的操作将只返回值“class='current'”。您仍然需要回显/打印它才能应用它

下面的代码应该可以让它正常工作

<li class="<?PHP echo ($this->pageName == 'index')? 'current': ''; ?>">
    <a href="#">Home</a>
</li>

当你可以混淆它时,为什么要简化它?
<li <?=($this->pageName == 'index') ? "class='current'" : ''?>><a href="">Home</a></li>
<li class="<?PHP echo ($this->pageName == 'index')? 'current': ''; ?>">
    <a href="#">Home</a>
</li>
<li class="<?PHP echo ( 1 == 0 )? 'current': ''; ?>">
    <a href="#">Home</a>
</li>