η 的 URL 编码是%CE%B7
。但是在 PHP 中,我在编写时会得到一些奇怪的符号echo urldecode("%ce%b7");
相反,如果我写,echo urlencode("η");
那么我得到%26%23951%3B
. 为什么我不能使用%CE%B7
?
解决方案
问题是我们使用了typo3。它有些如何不使用 unicode 进行内部处理。一旦我们设置$TYPO3_CONF_VARS['BE']['forceCharset'] = 'utf-8';
了typo3,输出echo urldecode("%ce%b7");
就是正确的。
为什么echo urlencode("η");
给我%26%23951%3B
看 Joni 的答案。