我正在将网站迁移到cakephp v2.0。在某些方面,我使用希腊字符的链接:
contents/library/category:κατηγορία
如果我pr()或debug()$ this-> request->命名为['category'],输出显示为%CE%88%CE%BD%CF%84%CF%85%CF %80%CE%B1%20%CE%94。
因为它被传递给查询查询,所以它不返回任何数据。在v1.3中,字符未被转义。有什么变化?我甚至尝试过调试($ var,false);但同样的事情发生了。
答案 0 :(得分:0)
当您通过HTMLHelper创建URL或从FormHelper接受它们时,它们会立即自动转义以防止恶意URL操作;非拉丁字符与所有非(拉丁语)字母数字字符一样被转义。要避免将此设置“转义”到选项数组中的false
,例如the CakePHP 2.0 book:中的以下示例
echo $this->Html->link(
$this->Html->image("recipes/6.jpg", array("alt" => "Brownies")),
"recipes/view/6",
array('escape' => false)
);