1
我需要发送带有链接的文本电子邮件,供用户单击。这是用户验证电子邮件。我遇到的问题是URL助手不断逃离角色。我觉得我已经尝试了以下各种可能的组合,但无济于事。在CakePHP中转义URL Helper
echo $this->Url->build([
"controller" => "Users",
"action" => "verify",
"?" => ['email' => $email, 'hash' => $hash]
],[
"escape" => false,
"fullBase" => true
]);
这导致http://www.mydomain.co.uk/users/verify?email=chris%40domain.co.uk&hash=b56a4eea3b495db226888f2f89e7678f的 '@' 和 '&' charachters是beeing逃脱哪里。
此问题的另一个问题是,蛋糕不能访问哈希变量,但它可以电子邮件,即。
echo $this->request->query('hash') //doesn't print anything
echo $this->request->query('email') //prints email with the @ symbol
特别是你使用的是什么版本的蛋糕?该文档指出传递数组作为第二个参数仅在3.3.5中添加。 –
@GregSchmidt我正在使用3.2.13。这是否意味着在3.3.5之前,你不能在构建函数中转义特殊字符?如果是这样,你知道另一种方式来做到这一点吗? – ChrisBull