php md5和js不一致是因为编码造成,其解决办法就是直接将php和js的中文转成字符即可,代码如“md5(rawurlencode('中文 内容'));”。
本文操作环境:Windows7系统、PHP7.1版、DELL G3电脑
php md5和js不一致怎么办?
中文php md5和js md5不一致的简单解决办法
中文状态下,php的md5和js的md5不一致,主要是编码造成的,这里就不说转换编码了,麻烦,直接将php和js的中文转成字符就能解决了:
php下md5:
md5(rawurlencode('中文 内容'));
js下md5:
md5.hex_md5(encodeURIComponent('中文 内容'));
注意:php进行转码时,不能用urlencode,它不会对空格进行转码,而js的encodeURIComponent会,这就导致了如果参数中含有空格,结果还是不一致。二php的rawurlencode则会和js一样,对空格进行转码。
推荐学习:《PHP视频教程》
以上是php md5和js不一致怎么办的详细内容。更多信息请关注PHP中文网其他相关文章!