在使用CakePHP发送的电子邮件中显示完整的URL

时间:2014-08-08 05:23:37

标签: php cakephp cakephp-2.1 cakephp-2.3

我正在使用CakePHP发送电子邮件。在/View/Emails/html/newaccount.ctp文件中,我正在执行以下操作:

<li>After you <?php echo $this->Html->link('log in', array('controller' => 'users', 'action' => 'login'), true); ?> to your account...</li>

但是我无法在电子邮件中收到完整的网址。

我也试过以下但没有运气:

<li>After you <?php echo $this->Html->link('log in', array('controller' => 'users', 'action' => 'login'), array('fullBase' => true)); ?> to your account...</li>

任何提示?

谢谢!

3 个答案:

答案 0 :(得分:2)

试试这个

$url = Router::url(array("controller"=>"users","action"=>"login"),true);

答案 1 :(得分:0)

为了进一步说明,与其他HtmlHelper方法相反,在link()方法中,完整的基本选项当前必须进入URL数组,并且必须将其命名为full_base

$this->Html->link('log in', array(
    'controller' => 'users',
    'action' => 'login',
    'full_base' => true
));

另见

答案 2 :(得分:0)

对于那些仍在寻找的人,在CakePHP 3中,我使用 _full 选项:

 <?= $this->Html->link("Cancel my booking", [
                                '_full' => true,
                                "controller" => "bookings",
                                "action" => "modify",
                                $booking->id,
                               ]
                        )
  ?>