我正在尝试调试我的网页以外语呈现的垃圾字符。我希望我的 createpage.php 为 utf-8。
me@host:/www/webroot$ file -bi createpage.php
text/x-php; charset=us-ascii
me@host:/www/webroot$ iconv -f us-ascii -t utf-8 createpage.php > createpage_utf8.php
me@host:/www/webroot$ file -bi createpage_utf8.php
text/x-php; charset=us-ascii
我rwx
对目录和rw
文件都有权限。我一定是瞎了眼——我到底搞砸了什么?是不是因为 ascii 是 utf-8 的子集,而我的 php 没有任何特殊字符(只有我使用的 ini 文件include
),所以file -bi
还是只报告 ascii?
答案1
仅使用纯 ASCII 字符的文件与 UTF8 无法区分,因为根据定义,7 位 ASCII 字符在 UTF8 中是 1 对 1 映射的。因此您的“转换”没有任何作用。