php怎样把utf8转换为gbk?

php怎样把utf8转换为gbk?,第1张

<?php@header("Content-type:text/htmlcharset=UTF-8")echo $str= '你好,这里是卖咖啡!'echo '<br />'echo iconv("UTF-8","gbk//TRANSLIT",$str)//将字符串的编码从UTF-8转到GB2312

echo '<br />'echo iconv_substr($str, 1, 1, 'UTF-8')//按字符个数截取而非字节print_r(iconv_get_encoding())//得到当前页面编码信息echo iconv_strlen($str, 'UTF-8')//得到设定编码的字符串长度?>

gbk转换为utf8的方法:

<?php

@header("Content-type:text/htmlcharset=GB2312")echo $str= '你好,这里是卖咖啡!'echo '<br />'echo iconv('GB2312', 'UTF-8', $str)//将字符串的编码从GB2312转到UTF-8echo '<br />'echo iconv_substr($str, 1, 1, 'GB2312')//按字符个数截取而非字节print_r(iconv_get_encoding())//得到当前页面编码信息echo iconv_strlen($str, 'GB2312')//得到设定编码的字符串长度?>

Unicode是一个字符集,Unicode是定长的都为双字节.

这里我们常用的是utf8字符集编码,楼主是说的Unicode转换为UTF-8吧。

/**

* Unicode字符转换成utf8字符

* @param [type] $unicode_str Unicode字符

* @return [type] Utf-8字符

*/

function unicode_to_utf8($unicode_str) {

$utf8_str = ''

$code = intval(hexdec($unicode_str))

//这里注意转换出来的code一定得是整形,这样才会正确的按位 *** 作

$ord_1 = decbin(0xe0 | ($code >>12))

$ord_2 = decbin(0x80 | (($code >>6) &0x3f))

$ord_3 = decbin(0x80 | ($code &0x3f))

$utf8_str = chr(bindec($ord_1)) . chr(bindec($ord_2)) . chr(bindec($ord_3))

return $utf8_str

}


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/7333163.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-04
下一篇 2023-04-04

发表评论

登录后才能评论

评论列表(0条)

保存