`
ljl_xyf
  • 浏览: 619564 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

php将utf-8(3字节)字符串转换成字节

    博客分类:
  • php
阅读更多
//将utf-8字符串转换成字节
function strToByteArr($str){
	//$str = iconv('gbk', 'utf-8', $str);
	
	$arr=array();
	$len=strlen($str);
	for($i=0;$i<$len;$i++){
	    if(ord(substr($str,$i,1))>0xa0){
	       //$arr[$i]= substr($str,$i,3);//汉字双字节
	       $arr[$i]= substr($str,$i,1);//汉字双字节
	       $i++;
	       $arr[$i]= substr($str,$i,1);//汉字双字节
	       $i++;
	       $arr[$i]= substr($str,$i,1);//汉字双字节
	     }else{
	       $arr[$i]=substr($str,$i,1);//单字节
	     }
	}
	echo strlen($str);
	//$narr=array_values($arr);
	//print_r($arr);
	return $arr;
}

 

 

 

测试调用代码:

 

print_r(strToByteArr("欢迎你访问400电话办理 中心,我们的网站是:htttp://www.my400800.cn "));

 

 

分享到:
评论

相关推荐

    PHP如何实现Unicode和Utf-8编码相互转换

    最近恰好要用到unicode编码的转换,就去查了一下php的库函数,居然没找到一个函数可以对字符串进行...UTF-8编码字符理论上可以最多到6个字节长,然而16位BMP(Basic Multilingual Plane)字符最多只用到3字节长。下面

    PHP中字符与字节的区别及字符串与字节转换示例

    例如,Unicode UTF-16 编码将字符表示为 16 位整数序列,而 Unicode UTF-8 编码则将相同的字符表示为 8 位字节序列。公共语言运行库使用 Unicode UTF-16(Unicode 转换格式,16 位编码形式)表示字符。 php在UTF-8...

    Encoding

    将gbk编码的字符串转化为UTF-8编码: $s=\"GBK编码\"; $CharEncoding=new Encoding(); $CharEncoding-&gt;SetGetEncoding(\"GBK\")||die(\"编码名错误\"); $CharEncoding-&gt;SetToEncoding(\"UTF-8\")||die(\"编码...

    详谈PHP编码转换问题

    最近恰好要用到unicode编码的转换,就去查了一下php的库函数,居然没找到一个函数可以对字符串进行...UTF-8编码字符理论上可以最多到6个字节长,然而16位BMP(Basic Multilingual Plane)字符最多只用到3字节长。下

    grub4dos-V0.4.6a-2017-02-04更新

    例如:echo -e \x18 显示 UTF-8 字符 0x18。 echo -e \X2191 显示 unicode 字符 0x2191。 2016-03-15(yaya) 1.增加动画控制热键 F2:播放/停止。 2.增加动画控制位 0x835b,位0:0/1=停止/播放。 3.增加精简...

    PHP函数库,PHP函数大全,PHP函数实例,PHP函数手册,PHP5函数库实例

    PHP判断字符串是否UTF8格式 php判断爬虫函数 PHP判断远程文件是否存在 PHP图片处理类:缩略,裁剪,圆角,倾斜 PHP多功能图片处理类 PHP多重判断删除文件函数 PHP实现英文标题的正确大写 PHP常用图片处理类 ...

    PHP中实现中文字串截取无乱码的解决方法

    在PHP中,substr()函数截取带有中文字符串的话,可能会出现乱码,这是因为中西文一个字节所占有的字节数不一样,而substr的长度参数是按照字节去算的,在GB2312编码时,一个中文占2个字节,英文为1个字节,而在UTF-8...

    PHP中preg_match正则匹配中的/u、/i、/s含义

    /u 表示按unicode(utf-8)匹配(主要针对多字节比如汉字) /i 表示不区分大小写(如果表达式里面有 a, 那么 A 也是匹配对象) /s 表示将字符串视为单行来匹配 您可能感兴趣的文章:php正则匹配html中带class的div并...

    [php框架]非官方_Kohana_3_中文译本.zip

    ■它们100%的兼容UTF-8 它们有同样的数据库抽象功能 两个框架都能达到它们最初的设计要求 ■两个框架都处于积极的开发状态并且它们会在未来的一段时间内完全被支持 Kohana2x和3.x的主要不同点是? 两个框架有他们自己...

    PHP开发实战1200例(第1卷).(清华出版.潘凯华.刘中华).part1

    实例109 字符串与数字之间的转换 140 实例110 通过正则表达式对字符串进行匹配查找 141 实例111 通过IP地址查找主机所在地 142 实例112 解决用substr()函数对中文字符串截取时出现乱码的问题 143 实例113 字符串与...

    PHP开发实战1200例(第1卷).(清华出版.潘凯华.刘中华).part2

    实例109 字符串与数字之间的转换 140 实例110 通过正则表达式对字符串进行匹配查找 141 实例111 通过IP地址查找主机所在地 142 实例112 解决用substr()函数对中文字符串截取时出现乱码的问题 143 实例113 字符串与...

    java开源包1

    开发它是用于在UTF-8 Oracle实例中使用ASCII编码的Oracle 数据库中来正确的传输非ASCII字符。 Java模板语言 Beetl Beetl,是Bee Template Language的缩写,它绝不是简单的另外一种模板引擎,而是新一代的模板引擎,...

    MySQL5.1参考手册官方简体中文版

    多字节字符支持 5.10.7. 字符集问题 5.10.8. MySQL服务器时区支持 5.11. MySQL日志文件 5.11.1. 错误日志 5.11.2. 通用查询日志 5.11.3. 二进制日志 5.11.4. 慢速查询日志 5.11.5. 日志文件维护 5.12. 在同一台机器...

    java开源包10

    开发它是用于在UTF-8 Oracle实例中使用ASCII编码的Oracle 数据库中来正确的传输非ASCII字符。 Java模板语言 Beetl Beetl,是Bee Template Language的缩写,它绝不是简单的另外一种模板引擎,而是新一代的模板引擎,...

    MySQL 5.1参考手册

    多字节字符支持 5.10.7. 字符集问题 5.10.8. MySQL服务器时区支持 5.11. MySQL日志文件 5.11.1. 错误日志 5.11.2. 通用查询日志 5.11.3. 二进制日志 5.11.4. 慢速查询日志 5.11.5. 日志文件维护 5.12. 在同一台机器...

    java开源包3

    开发它是用于在UTF-8 Oracle实例中使用ASCII编码的Oracle 数据库中来正确的传输非ASCII字符。 Java模板语言 Beetl Beetl,是Bee Template Language的缩写,它绝不是简单的另外一种模板引擎,而是新一代的模板引擎,...

    MySQL 5.1官方简体中文参考手册

    多字节字符支持 5.10.7. 字符集问题 5.10.8. MySQL服务器时区支持 5.11. MySQL日志文件 5.11.1. 错误日志 5.11.2. 通用查询日志 5.11.3. 二进制日志 5.11.4. 慢速查询日志 5.11.5. 日志文件维护 5.12. 在同一台机器...

    java开源包8

    开发它是用于在UTF-8 Oracle实例中使用ASCII编码的Oracle 数据库中来正确的传输非ASCII字符。 Java模板语言 Beetl Beetl,是Bee Template Language的缩写,它绝不是简单的另外一种模板引擎,而是新一代的模板引擎,...

    ZendFramework中文文档

    7.12.3. 可能遭遇的MVC异常 7.13. 从以前的版本移植 7.13.1. 从 1.0.x 到 1.5.0 或更新的版本的移植 7.13.2. 从 0.9.3 到 1.0.0RC1 或更新的版本的移植 7.13.3. 从 0.9.2 移植到 0.9.3 或更新的版本 7.13.4. 从...

Global site tag (gtag.js) - Google Analytics