为了账号安全,请及时绑定邮箱和手机立即绑定

Cakephp - 在 if 内显示列表元素

Cakephp - 在 if 内显示列表元素

PHP
元芳怎么了 2023-04-28 16:19:44
我目前正在使用 cakephp 显示一个列表,但我无法通过单击特定的元素组件来重定向,该组件在某些情况下必须消失,这就是我所拥有的:<li><a href="<?php echo $this->Url->build(["controller" => "pages","action" => "index"]);?>">Top 20</a><?php  $a = true;  if($a){     $prod_pm= '<li><a href="<?= $this->Url->build(["controller" => "Catalogo","action" => "cat",11229])?     >">Promotions</a>';   }else{    $prod_pm = '';}?>  <?= $prod_pm ?> <li><a href="<?= $this->Url->build(["controller" => "Catalogo","action" => "cat",11050]) ?>"></a>似乎在 href 引用之后重定向的 php 不是那样工作的,我也尝试用外部代码声明一个变量并插入代替$this->Url->build(["controller" => "Catalogo","action" => "cat",11229]) 但没有工作。在此先感谢您的任何提示或帮助。
查看完整描述

2 回答

?
翻阅古今

TA贡献1780条经验 获得超5个赞

看起来你只是在属性中插入一个字符串href

尝试:

$prod_pm = '<li><a href="'.$this->Url->build(["controller" => "Catalogo","action" => "cat",11229]).'">Promotions</a>';



查看完整回答
反对 回复 2023-04-28
?
白衣染霜花

TA贡献1796条经验 获得超10个赞

您正在尝试从字符串常量内部调用 PHP 代码。The<?=只是作为字符串的一部分。你有什么理由需要这个$prod_pm变量吗?似乎你让自己变得比需要的更难:


<li>...

<?php  

$a = true;

if ($a):

?>

<li><a href="<?= $this->Url->build(['controller' => 'Catalogo', 'action' => 'cat', 11229]) ?>">Promotions</a>

<?php

endif;

?>

<li>...

或者,等价地,


<li>...

<?php  

$a = true;

if ($a) {

    echo $this->Html->tag('li',

        $this->Html->link('Promotions', ['controller' => 'Catalogo', 'action' => 'cat', 11229])

    );

}

?>

<li>...


查看完整回答
反对 回复 2023-04-28
  • 2 回答
  • 0 关注
  • 98 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信