当我测试这个小脚本时:
$str = "apple";
echo md5($str);
结果与使用utf8(使用C#测试)进行md5的结果相匹配
我是否应该相信在任何其他环境中都会如此?
如果我把这个脚本放在任何webhost,windows或linux上,它的行为是否与UTF8
编码一样?
答案 0 :(得分:5)
字符串文字的编码是您保存源文件的任何编码。如果您以UTF-16保存此php文件,您将得到不同的结果,即代码甚至运行。
PHP中没有统一或托管编码。 PHP中的字符串可以是任何编码,换句话说,它们等同于具有更抽象字符串类型的语言的字节数组。
答案 1 :(得分:0)
简单地说md5()将始终提供相同的编码。 如果你不相信它,只需你可以在数据库本身编码数据。