在cakephp中,我想使用一个url参数,它可能包含一些特殊的字符,如é或è。
例如,当我为此网址打印$ this-> params ['url']时: http://dev.family/registration?fname=kr%E9s
我得到:
Array ( [url] => registration [fname] => kr�s )
所以é成了一个问号。
我尝试了urldecode,但我没有帮助。我想这与UTF-8编码有关,但我不知道在哪里搜索。
有什么建议吗?
Krikke
答案 0 :(得分:1)
尝试htmlentities()
功能。
答案 1 :(得分:1)
我刚刚解决了B7ackAnge7z的问题。
htmlentities
功能有效,但会将krés
翻译为krés
。这解决了问号的问题。
但是..我想用这个值预先填写表单输入。所以输入将包含krés
,这不是我想要的。
所以我现在用这个值预填充它:
html_entity_decode(htmlentities($this->params['url']['fname']), ENT_COMPAT, 'UTF-8')
- >用htmlentities转换值,然后再将其解码为UTF-8。 有点肮脏的修复...
我猜蛋糕不会将URL参数解码为UTF-8默认值,或者我可能会担心蛋糕项目中某处的编码问题?
THX!