php自定义函数实现汉字转换utf8编码的方法

本文实例讲述了php自定义函数实现汉字转换utf8编码的方法。分享给大家供大家参考,具体如下:

该函数有两部分组成:

function htou($c) {
  $n = (ord($c[0]) & 0x1f) << 12;
  $n += (ord($c[1]) & 0x3f) << 6;
  $n += ord($c[2]) & 0x3f;
  return $n;
}
//在代码中隐藏utf8格式的字符串
function utf8_unicode($str) {
  $encode='';
  for($i=0;$i<strlen($str);$i++) {
    if(ord(substr($str,$i,1))> 0xa0) {
      $encode.='&#'.htou(substr($str,$i,3)).';';
      $i+=2;
    } else {
      $encode.='&#'.ord($str[$i]).';';
    }
  }
  return $encode;
}

我们可以用 utf8_unicode() 就可以转换汉字,返回为汉字的utf8编码。这样输出网页不会是乱码。

PS:这里再为大家推荐几款非常实用的在线编码转换工具供大家参考使用:

UTF-8编码转换工具:
http://tools.jb51.net/transcoding/convutf

在线编码转换工具(utf-8/utf-32/Punycode/Base64):
http://tools.jb51.net/transcoding/decode_encode_tool

Native/UTF-8在线编码转换工具:
http://tools.jb51.net/transcoding/native2utf8

更多关于PHP相关内容感兴趣的读者可查看本站专题:《PHP编码与转码操作技巧汇总》、《php面向对象程序设计入门教程》、《PHP数学运算技巧总结》、《PHP数组(Array)操作技巧大全》、《php字符串(string)用法总结》、《PHP数据结构与算法教程》、《php程序设计算法总结》、《php正则表达式用法总结》、及《php常见数据库操作技巧汇总》

希望本文所述对大家PHP程序设计有所帮助。

(0)

相关推荐

  • php自定义函数截取汉字长度

    复制代码 代码如下: function msubstr($str,$start,$len) { $strlen=$start+$len; for($i=0;$i<$strlen;$i++) { if(ord(substr($str,$i,1))>0xa0) { $tmpstr.=substr($str,$i,2); $i++; } else $tmpstr.=substr($str,$i,1); } return $tmpstr; } 复制代码 代码如下: <?PHP $str=&quo

  • php获取汉字首字母的函数

    网上的方法有不少,都是一样的原理,按照需求,做了一下版本的class类文件,主要功能是:功能明确,易于修改维护和扩展: 英文的字串:不变返回(包括数字):中文字符串:返回拼音首字符: 中英混合串: 返回拼音首字符和英文.该算法采用了二分法查找,修复了之前字母Z读取成Y的错误.好东西要收藏,故在此留下印记,以供后人考证! 复制代码 代码如下: <?php  /*** Modified by http://iulog.com @ 2013-05-07* 修复二分法查找方法* 汉字拼音首字母工具类* 

  • php获取英文姓名首字母的方法

    本文实例讲述了php获取英文姓名首字母的方法.分享给大家供大家参考.具体如下: 这段代码可以根据用户输入的英文姓名,分析出姓名的首字母输出,比如"Billy Bob" to "B.B." <?php function initials($name){ $nword = explode(" ",$name); foreach($nword as $letter){ $new_name .= $letter{0}.'.'; } return s

  • 使用PHP获取汉字的拼音(全部与首字母)

    废话不多说,直接上代码: 复制代码 代码如下: <?php class GetPingYing {     private $pylist = array( 'a'=>-20319, 'ai'=>-20317, 'an'=>-20304, 'ang'=>-20295, 'ao'=>-20292, 'ba'=>-20283, 'bai'=>-20265, 'ban'=>-20257, 'bang'=>-20242, 'bao'=>-20230

  • php 获得汉字拼音首字母的函数

    php获取汉字拼音的第一个字母 复制代码 代码如下: <?php function getinitial($str) { $asc=ord(substr($str,0,1)); if ($asc<160) //非中文 { if ($asc>=48 && $asc<=57){ return '1'; //数字 }elseif ($asc>=65 && $asc<=90){ return chr($asc); // A--Z }elseif

  • php获取汉字拼音首字母的方法

    现实中我们经常看到这样的说明,排名不分先后,按姓名首字母进行排序.这是中国人大多数使用的排序方法.那么在php程序中该如何操作呢? 下面就分享一下在php程序中获取汉字拼音的首字母的方法,在网上搜到的大多数是有问题的,这个可是经过小编实践应用过的,真的可以使用的哦. //php获取中文字符拼音首字母 function getFirstCharter($str){ if(empty($str)){return '';} $fchar=ord($str{0}); if($fchar>=ord('A'

  • php实现字符串首字母转换成大写的方法

    本文实例讲述了php实现字符串首字母转换成大写的方法.分享给大家供大家参考.具体分析如下: php中可以通过ucfirst函数将一个字符串中的第一个字母转换成大写,而ucwords函数可以将一个字符串中每个单词的首字母转换成大写 <?php $string = "php string functions are easy to use."; $sentence = ucfirst($string); $title = ucwords($string); print("$

  • PHP提取中文首字母

    复制代码 代码如下: <?     function pykey( $py_key)     {         $pinyin = 65536 + pys($py_key);         if ( 45217 <= $pinyin && $pinyin <= 45252 )         {             $zimu = "A";             return $zimu;         }         if ( 452

  • 分享一段PHP制作的中文拼音首字母工具类

    代码很简单,这里就不多BB了,大家看注释吧,注释都看不懂的小伙伴,求放过PHP!!! 复制代码 代码如下: <?php /** * 汉字拼音首字母工具类 *  注: 英文的字串:不变返回(包括数字)    eg .abc123 => abc123 *      中文字符串:返回拼音首字符        eg. 测试字符串 => CSZFC *      中英混合串: 返回拼音首字符和英文   eg. 我i我j => WIWJ *  eg. *  $py = new str2PY()

  • PHP自定义函数获取汉字首字母的方法

    本文实例讲述了PHP自定义函数获取汉字首字母的方法.分享给大家供大家参考,具体如下: 首字母很重要,可以进行排序使用. 城市列表等等. <?php /* * Created on 2016-12-1 */ function getFirstCharter($str) { if (empty($str)) { return ''; } $fchar = ord($str{0}); if ($fchar >= ord('A') && $fchar <= ord('z')) r

随机推荐