参考1:http://blog.csdn.net/chengfei112233/article/details/7183227(评论部分)
参考2:http://blog.sina.com.cn/s/blog_415bd7070100ajdi.html(评论部分)
参考1:http://blog.csdn.net/chengfei112233/article/details/7183227(评论部分)
参考2:http://blog.sina.com.cn/s/blog_415bd7070100ajdi.html(评论部分)
原理很简单,因为gb2312/gbk是中文两字节,这两个字节是有取值范围的,而utf-8中汉字是三字节,同样每个字节也有取值范围,而英文不管在何种编码情况下,都是小于128,只占用一个字节,全角除外.
Base64编码文件二进制流是使用base64_encode函数对文件二进制信息进行编码。
官方说明:
虽说最新的 PHP 5.4 已经良好支持 JSON 中文编码,即通过 JSON_UNESCAPED_UNICODE 参数,例如:
json_encode("中文", JSON_UNESCAPED_UNICODE)对于早前 PHP 版本,处理不转义中文字符的 json 编码
关于iconv遇到无法转码的字符时中断内容丢失,代码如下:
只会输出: 测试后出全会丢失.
经过一时间的 php + mssql,感觉 mssql 对编码的支持不是很好(其实还是自己没有把握好啦),但是又还没有来得急换数据库,只能将就点,今天又在提交数据时出现了错误。
下面我来总结一下php utf8编码上传中文文件名出现乱码解决办法,有碰这类问题的朋友可参考参考。