日期:2014-05-17  浏览次数:20432 次

php 数组键名 能是中文, 谁用过,会不会出现后患...
RT 中文键名会不会留下后患>

------解决方案--------------------
可以用,没有问题
------解决方案--------------------
php的数组键名会被php内部转换为一个hash key。理论上没有问题。但中文总是会引起很多奇怪的bug。比如gbk下的低字节5c问题。

还有不同字符集下,php内部识别的unicode会不一致。我猜想,但没有实践过:

假如你的a.php使用了gbk编码,代码中声明了一个$a['中文']='123'的中文key数组。
b.php引用了a.php。但b.php文件本身的编码是utf-8。然后在b.php中echo $a['中文']。
此时,两个文件中的'中文'俩字在php内部所转换的hash key可能是不一致的,那么会造成b.php中的$a['中文']取不到任何值。

所以最好不要用中文。
------解决方案--------------------
呵呵,有一种扰码工具恰恰就是利用了这一点,让你无法破解
------解决方案--------------------
试一下这几个字(限GBK):榎 梶 東

如果这几个字没问题就全部没问题了……