php设置字符串编码格式的方法

介绍

这篇文章将为大家详细讲解有关php设置字符串编码格式的方法,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。

php设置字符串编码格式的方法就是在代码的开始处添加一行代码为“标题(“内容类型:text/html; charset=utf-8");“即可。

 php设置字符串编码格式的方法

<强> php设置字符编码为utf - 8

在代码开始出加入一行:

头(“内容类型:text/html; charset=utf-8");

相关介绍:

php字符串的本质

引用php文档的解释:

php中的字符串的实现方式是一个由字节组成的数组再加上一个整数指明缓冲区长度。并无如何将字节转换成字符的信息,由程序员来决定。字符串由什么值构成没有限制,包括值为0的字节可以出现在字符串的任何位置。

php并不特别指明字符串的编码,那字符串到底是怎样编码的呢,这取决于程序员。字符串会按照php文件的编码来对字符串进行编码。比如你的文件编码是GBK,那么你代码内容都是GBK的。

补充二进制安全这个概念,其值为0(零)的字节可以处于字符串任何位置,而php的部分非二进制函数底层是调用的C函数,会把零后面的字符忽略。

只要php的文件编码是能兼容ASCII的,那么字符串操作就可以很好的被处理。但是字符串操作本质上还是本地的(不管文件编码是什么),所以在使用的时候需要注意:

某些函数假定字符串是以单字节编码的,但并不需要将字节解释为特定的字符。比如sbustr()函数。

很多函数是需要显示的传递编码参数,不然会从php。INI文件中获取默认值,比如htmlentities()函数。

还有一些函数和本地区域有关,这些函数也只能是单字节操作的。

一般情况下,虽然PHP内部不支持Unicode字符,但是支持utf - 8编码,绝大部分情况下不会有什么问题,但是下列的情况可能就处理不了了:

非utf - 8编码字符串如何进行转换

一个utf - 8编码的网页,但是用户在提交表单的时候,可能使用GBK的编码(不遵守meta标签)

一个utf - 8编码的PHP文件,使用strlen(“中国“)返回的是6,而不是实际的字符数(2)

那么如何解决该问题呢? PHP提供了mbstring扩展!

关于PHP设置字符串编码格式的方法就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看的到。

php设置字符串编码格式的方法