完美的2个php检测字符串是否是utf-8编码函数分享


Posted in PHP onJuly 28, 2014

在php开发中有时候会用到转码函数,比如iconv(),mb_convert_encoding()函数,在用函数转码的时候或者解码的时候我们有时候需要先判断当前字符串编码类型,不如是否是utf-8编码,是的话然后进行编码转换等操作。下面是小编整理的目前web开发中网上使用率比较高的、好的php关于UTF-8编码的判断函数,代码如下:

function is_utf8($string) //函数一
{
// From http://w3.org/International/questions/qa-forms-utf-8.html
return preg_match(‘%^(?:
[\x09\x0A\x0D\x20-\x7E] # ASCII
| [\xC2-\xDF][\x80-\xBF] # non-overlong 2-byte
| \xE0[\xA0-\xBF][\x80-\xBF] # excluding overlongs
| [\xE1-\xEC\xEE\xEF][\x80-\xBF]{2} # straight 3-byte
| \xED[\x80-\x9F][\x80-\xBF] # excluding surrogates
| \xF0[\x90-\xBF][\x80-\xBF]{2} # planes 1-3
| [\xF1-\xF3][\x80-\xBF]{3} # planes 4-15
| \xF4[\x80-\x8F][\x80-\xBF]{2} # plane 16
)*$%xs', $string);
}

function mb_is_utf8($string) //函数二
{
return mb_detect_encoding($string, ‘UTF-8′) === ‘UTF-8′;
}

mb_detect_encoding()函数是php的一个内置函数,用来判断当前字符串编码类型,此函数有三个参数,第一个参数是要判断的字符串,第二个参数是比较的字符编码列表,可以使字符串,也可以是数组,第三个参数是要求。
希望这两个函数对需要的Phper有所帮助。

PHP 相关文章推荐
PHP 5.0 Pear安装方法
Dec 06 PHP
PHP 处理图片的类实现代码
Oct 23 PHP
php $_SERVER当前完整url的写法
Nov 12 PHP
PHP 实用代码收集
Jan 22 PHP
利用php+mysql来做一个功能强大的在线计算器
Oct 12 PHP
php中使用array_filter()函数过滤空数组的实现代码
Aug 19 PHP
列举PHP的Yii 2框架的开发优势
Jul 03 PHP
thinkphp在php7环境下提示Cannot use ‘String’ as class name as it is reserved的解决方法
Sep 30 PHP
php面向对象之反射功能与用法分析
Mar 29 PHP
php中请求url的五种方法总结
Jul 13 PHP
ThinkPHP 3.2.3实现页面静态化功能的方法详解
Aug 03 PHP
PHP进阶学习之类的自动加载机制原理分析
Jun 18 PHP
php5.3以后的版本连接sqlserver2000的方法
Jul 28 #PHP
php中把美国时间转为北京时间的自定义函数分享
Jul 28 #PHP
php的mkdir()函数创建文件夹比较安全的权限设置方法
Jul 28 #PHP
php中error与exception的区别及应用
Jul 28 #PHP
浅析get与post的一些特殊情况
Jul 28 #PHP
thinkphp学习笔记之多表查询
Jul 28 #PHP
CMS中PHP判断系统是否已经安装的方法示例
Jul 26 #PHP
You might like
人族 TERRAN 概述
2020/03/14 星际争霸
什么是短波收听SWL
2021/03/01 无线电
解析php获取字符串的编码格式的方法(函数)
2013/06/21 PHP
PHP中preg_match正则匹配中的/u、/i、/s含义
2015/04/17 PHP
CI框架的安全性分析
2016/05/18 PHP
基于jquery的一个简单的脚本验证插件
2010/04/05 Javascript
javascript中input中readonly和disabled区别介绍
2012/10/23 Javascript
AJAX跨域请求json数据的实现方法
2013/11/11 Javascript
js制作简易年历完整实例
2015/01/28 Javascript
使用jQuery在移动页面上添加按钮和给按钮添加图标
2015/12/04 Javascript
AngularJS数据源的多种获取方式汇总
2016/02/02 Javascript
javascript 内置对象及常见API详细介绍
2016/11/01 Javascript
Vue实现双向绑定的方法
2016/12/22 Javascript
JavaScript省市级联下拉菜单实例
2017/02/14 Javascript
Javascript实现基本运算器
2017/07/15 Javascript
js使用xml数据载体实现城市省份二级联动效果
2017/11/08 Javascript
Vue实现PopupWindow组件详解
2018/04/28 Javascript
JSON.stringify()方法讲解
2019/01/31 Javascript
JavaScript之数组扁平化详解
2019/06/03 Javascript
javascript实现导航栏分页效果
2019/06/27 Javascript
IDEA配置jQuery, $符号不再显示黄色波浪线的问题
2020/10/09 jQuery
Js利用正则表达式去除字符串的中括号
2020/11/23 Javascript
Python栈类实例分析
2015/06/15 Python
Python操作串口的方法
2015/06/17 Python
利用python求解物理学中的双弹簧质能系统详解
2017/09/29 Python
Python脚本修改阿里云的访问控制列表的方法
2019/03/08 Python
利用Python自动化操作AutoCAD的实现
2020/04/01 Python
Mio Skincare美国官网:身体紧致及孕期身体护理
2017/03/05 全球购物
美国女性卫生用品公司:Thinx
2017/06/30 全球购物
Alexandre Birman美国官网:亚历山大·伯曼
2019/10/30 全球购物
如何拷贝一整个Java对象,包括它的状态
2013/12/27 面试题
社区居务公开实施方案
2014/03/27 职场文书
爱国演讲稿500字
2014/05/04 职场文书
年检委托书
2014/08/30 职场文书
财务部岗位职责
2015/02/03 职场文书
thinkphp 获取控制器及控制器方法
2021/04/16 PHP