【PHP自动识别字符集并完成转码详解】教程文章相关的互联网学习教程文章

关于PHP自动判断字符集并转码的详解_PHP

原理很简单,因为gb2312/gbk是中文两字节,这两个字节是有取值范围的,而utf-8中汉字是三字节,同样每个字节也有取值范围。而英文不 管在何种编码情况下,都是小于128,只占用一个字节(全角除外)。如果是文件形式的编码检查,还可以直接check utf-8的BOM信息。话不多说,直接上函数,这个函数是用来对字符串进行检查和转码的。 代码如下:function safeEncoding($string,$outEncoding ='UTF-8') { $encoding = "UTF-8"; ...

PHP自动识别字符集并完成转码详解_PHP

因为自己使用字符编码一般的是utf-8编码,但如果对方的博客使用gb2312编码的话,POST过来就会出现乱码(除非对方POST前先转换编码)。在不能保证对方是否一定使用utf-8编码的情况下,自己做一个编码的检查和转换是很有必要的。 写了个函数来完成这个工作,原理很简单,因为gb2312/gbk是中文两字节,这两个字节是有取值范围的,而utf-8中汉字是三字节,同样每个字节也有取值范围。而英文不管在何种编码情况下,都是小于128,只占用一...

php中字符集转换iconv函数使用总结_PHP

iconv函数库能够完成各种字符集间的转换,是php编程中不可缺少的基础函数库。 用法如下:代码如下: $string = "欢迎访问!"; iconv("utf8","gbk",$string)//将字符串string 编码由utf8转变成gbk;扩展如下:代码如下: echo $str= 欢迎访问!; echo ; echo iconv(GB2312, UTF-8, $str); //将字符串的编码从GB2312转到UTF-8 echo ; echo iconv_substr($str, 1, 1, UTF-8); //按字符个数截取而非字节 print_r(iconv_get_encoding()); ...

在任意字符集下正常显示网页的方法二(续)_php技巧

转:coolcode.cn 前几天写了一篇在任意字符集下正常显示网页的方法,里面介绍的很简单,就是把前128个字符以外的字符集都用 NCR 来表示,但是具体怎么转化我没有介绍,因为当时我觉得太简单了。但是后来发现有人问这个问题,这里就详细说明一下。 首先第一步是要把源字符集的字符串转化为 UTF-16 字符集,做这一步是因为 UTF-16 字符集中的每个字符都是两个字节,后面处理起来很容易,而如果在源字符集上直接做处理则很复杂。源字符...

在任意字符集下正常显示网页的方法一_php技巧

转:coolcode.cn通常情况下,我们的网页要指定一个编码字符集,如 GB2312、UTF-8、ISO-8859-1 等,这样我们就可以在网页上显示我们指定编码的文字了。但是我们很可能会遇到这种情况,那就是我们可能希望在 ISO-8859-1 编码的网页上显示汉字,或者在 GB2312 编码的网页上显示韩文等。当然一种解决办法就是我们不用 ISO-8859-1 或者 GB2312 编码,而统统都采用 UTF-8 编码,这样我们只要在这种编码下,就可以混合显示各国文字了,这是...

PHP设置MySQL连接字符集的方法_php技巧

mysql_set_charset()。 这个函数是这样用的: mysql_set_charset('utf8', $link); 成功返回 TRUE,失败返回 FALSE。 就这么简单。 下面是PHP手册原文 This is the preferred way to change the charset. Using mysql_query() to execute SET NAMES .. is not recommended.

PHP编码转换函数自动转换字符集支持数组转换_php技巧

代码如下:// 自动转换字符集 支持数组转换 function auto_charset($fContents, $from=gbk, $to=utf-8) { $from = strtoupper($from) == UTF8 ? utf-8 : $from; $to = strtoupper($to) == UTF8 ? utf-8 : $to; if (strtoupper($from) === strtoupper($to) || empty($fContents) || (is_scalar($fContents) && !is_string($fContents))) { //如果编码相同或者非字符串标量则不转换 return $fContents; } if (is_string($fContents)) ...

关于mysql字符集设置了character_set_client=binary在gbk情况下会出现表描述是乱码的情况_php技巧

mysql链接建立之后,通过如下方式设置编码: 代码如下:mysql_query("SET character_set_connection=" . $GLOBALS[charset] . ",character_set_results=" . $GLOBALS[charset] . ",character_set_client=binary", $this->link); 然而建立出来的表结构描述竟然是乱码: 代码如下:mysql> show create table nw_admin_config\G *************************** 1. row *************************** Table: nw_admin_config Create Tabl...

关于PHP自动判断字符集并转码的详解_php技巧

原理很简单,因为gb2312/gbk是中文两字节,这两个字节是有取值范围的,而utf-8中汉字是三字节,同样每个字节也有取值范围。而英文不 管在何种编码情况下,都是小于128,只占用一个字节(全角除外)。如果是文件形式的编码检查,还可以直接check utf-8的BOM信息。话不多说,直接上函数,这个函数是用来对字符串进行检查和转码的。 代码如下:function safeEncoding($string,$outEncoding ='UTF-8') { $encoding = "UTF-8"; ...

PHP自动识别字符集并完成转码详解_php技巧

因为自己使用字符编码一般的是utf-8编码,但如果对方的博客使用gb2312编码的话,POST过来就会出现乱码(除非对方POST前先转换编码)。在不能保证对方是否一定使用utf-8编码的情况下,自己做一个编码的检查和转换是很有必要的。 写了个函数来完成这个工作,原理很简单,因为gb2312/gbk是中文两字节,这两个字节是有取值范围的,而utf-8中汉字是三字节,同样每个字节也有取值范围。而英文不管在何种编码情况下,都是小于128,只占用一...

php中字符集转换iconv函数使用总结_php技巧

iconv函数库能够完成各种字符集间的转换,是php编程中不可缺少的基础函数库。 用法如下:代码如下: $string = "欢迎访问脚本之家!"; iconv("utf8","gbk",$string)//将字符串string 编码由utf8转变成gbk;扩展如下:代码如下: echo $str= 欢迎访问脚本之家!; echo ; echo iconv(GB2312, UTF-8, $str); //将字符串的编码从GB2312转到UTF-8 echo ; echo iconv_substr($str, 1, 1, UTF-8); //按字符个数截取而非字节 print_r(iconv_g...

在任意字符集下正常显示网页的方法二(续)

转:coolcode.cn 前几天写了一篇在任意字符集下正常显示网页的方法,里面介绍的很简单,就是把前128个字符以外的字符集都用 NCR 来表示,但是具体怎么转化我没有介绍,因为当时我觉得太简单了。但是后来发现有人问这个问题,这里就详细说明一下。 首先第一步是要把源字符集的字符串转化为 UTF-16 字符集,做这一步是因为 UTF-16 字符集中的每个字符都是两个字节,后面处理起来很容易,而如果在源字符集上直接做处理则很复杂。源字符...

在任意字符集下正常显示网页的方法一

转:coolcode.cn通常情况下,我们的网页要指定一个编码字符集,如 GB2312、UTF-8、ISO-8859-1 等,这样我们就可以在网页上显示我们指定编码的文字了。但是我们很可能会遇到这种情况,那就是我们可能希望在 ISO-8859-1 编码的网页上显示汉字,或者在 GB2312 编码的网页上显示韩文等。当然一种解决办法就是我们不用 ISO-8859-1 或者 GB2312 编码,而统统都采用 UTF-8 编码,这样我们只要在这种编码下,就可以混合显示各国文字了,这是...

PHP 设置MySQL连接字符集的方法

mysql_set_charset()。 这个函数是这样用的: mysql_set_charset('utf8', $link); 成功返回 TRUE,失败返回 FALSE。 就这么简单。 下面是PHP手册原文 This is the preferred way to change the charset. Using mysql_query() to execute SET NAMES .. is not recommended.

PHP编码转换函数 自动转换字符集支持数组转换

代码如下:// 自动转换字符集 支持数组转换 function auto_charset($fContents, $from=gbk, $to=utf-8) { $from = strtoupper($from) == UTF8 ? utf-8 : $from; $to = strtoupper($to) == UTF8 ? utf-8 : $to; if (strtoupper($from) === strtoupper($to) || empty($fContents) || (is_scalar($fContents) && !is_string($fContents))) { //如果编码相同或者非字符串标量则不转换 return $fContents; } if (is_string($fContents)) ...