#EXAMPLE

$str_uncode = "简体中文Chinese(Simplified)";

//统计字符串长度

echo strlen($str_uncode).'
';//结果:31

echo mb_strlen($str_uncode, 'UTF-8').'
';结果:23

echo mb_strlen($str_uncode, 'GBK').'
';结果:25

echo mb_strlen($str_uncode, 'GB2312').'
';结果27

结果分析:

strlen 把一个中文按3字节算(复杂的汉字会按4字节算)

mb_strlen  'UTF-8'编码 一个汉字按一个字节位来算

PHP内置的字符串长度函数strlen无法正确处理中文字符串,它得 到的只是字符串所占的字节数。对于GB2312的中文编码,strlen得到的值是汉字个数的2倍,而对于UTF-8编码的中文,就是3倍的差异了(在 UTF-8编码下,一个汉字占3个字节)。

采用mb_strlen函数可以较好地解决这个问题。mb_strlen的用法和 strlen类似,只不过它有第二个可选参数用于指定字符编码。例如得到UTF-8的字符串$str长度,可以用 mb_strlen($str,'UTF-8')。

如果省略第二个参数,则会使用PHP的内部编码。内部编码可以通过 mb_internal_encoding()函数得到。

mb_strlen并不是PHP核心函数,使用前需要确保在php.ini中加载了php_mbstring.dll,即确保“extension=php_mbstring.dll”这一行存在并且没有被注释掉,否则会出现未定义函 数的问题。

MySQL--(了解)可能会用到的内置函数

mysql内置函数列表可以从mysql官方文档查询,这里仅分类简单介绍一些可能会用到的函数.1 数学函数abs(x)pi()mod(x,y)sqrt(x)ceil(x)或者ceiling(x)rand ...

php2go - Go 实现 PHP 常用内置函数

[转]http://www.syyong.com/Go/php2go-Use-Golang-to-implement-PHP-s-common-built-in-functions.html 使用Go ...

8. Smarty3:模版中的内置函数

smarty3中对内置函数的修改比較大,加入了很多新的功能:变量声明.表达式,流程控制,函数.数组等.可是建议不要在模版中去使用过于复杂的逻辑,而是要尽量将一些程序设计逻辑写到PHP中,并在模版中採用 ...

PHP不使用内置函数intval(),实现字符串转整数

平时我们用PHP时,将字符串转化为整型时,一般都是使用 intval() 内置函数,那么如果我们自己写,怎么写一个呢? 此时我们可以利用 ASCII 码计算得整数的特性,因为每个字符都对应一个 ASC ...

Entity Framework 6 Recipes 2nd Edition(11-12)译 -> 定义内置函数

11-12. 定义内置函数 问题 想要定义一个在eSQL 和LINQ 查询里使用的内置函数. 解决方案 我们要在数据库中使用IsNull 函数,但是EF没有为eSQL 或LINQ发布这个函数. 假设我 ...

Oracle内置函数:时间函数,转换函数,字符串函数,数值函数,替换函数

dual单行单列的隐藏表,看不见 但是可以用,经常用来调内置函数.不用新建表 时间函数 sysdate 系统当前时间 add_months 作用:对日期的月份进行加减 写法:add_months(日期 ...

python内置函数

python内置函数 官方文档:点击 在这里我只列举一些常见的内置函数用法 1.abs()[求数字的绝对值] >>> abs(-13) 13 2.all() 判断所有集合元素都为真的 ...

DAY5 python内置函数+验证码实例

内置函数 用验证码作为实例 字符串和字节的转换 字符串到字节 字节到字符串

python之常用内置函数

python内置函数,可以通过python的帮助文档 Build-in Functions,在终端交互下可以通过命令查看 >>> dir("__builtins__&quo ...

随机推荐

在Linux上运行ASP.NET vNext

最新的ASP.NET vNext完全开源且可以跨多个平台运行,在Windows环境下我尝试了下,几乎没花什么工夫就跑起了Sample,而在Linux环境下则要多花了不少时间,所以特别记录下整个过程,希 ...

获取HTML

public class GetHtml { public string GetWebRequest(string url) { Uri uri = new Uri(url); WebRequest ...

最精简的IOCP封装

最精简的IOCP封装,DELPHI XE8直接编译通过.Winsock2.pas即使用DELPHI自带的,相信XE7也能编译,或者XE6,XE5也能. 单说Winsock2.pas,我见过无数种版本的 ...

pku3668 Game of Lines

http://poj.org/problem?id=3668 水题,STL #include #include using namespace ...

cf500C New Year Book Reading

C. New Year Book Reading time limit per test 2 seconds memory limit per test 256 megabytes input sta ...

混淆篇之原生DOM操作方法小结

1.0   DOM结构 1.1先来看结构图: 父节点        兄弟节点        当前节点            属性节点            子节点        兄弟节点一般任意一个节 ...

[jbdj]SpringMVC框架(1)快速入门

1)springmvc快速入门(传统版) 步一:创建springmvc_demo一个web应用 步二:导入springioc,springweb , springmvc相关的jar包 步三:在/WEB ...

Jetty的工作原理

Jetty的工作原理 Jetty 的基本架构 Jetty 目前的是一个比较被看好的 Servlet 引擎,它的架构比较简单,也是一个可扩展性和非常灵活的应用服务器,它有一个基本数据模型,这个数据模型就 ...

asp.net导入后台代码

public void Upload(string information){ int Bank = 0; for (int i = 0; i

php内置函数和扩展,PHP 内置函数strlen 和mbstring扩展函数mb_strlen的区别相关推荐

  1. sqlserver 只有函数和扩展存储过程才能从函数内部执行

    一个SQLServer的自定义函数中调用一个自定义的存储过程,执行此函数后发出如下提示:"只有函数和扩展存储过程才能从函数内部执行". 原因:函数只能使用简单的sql语句,逻辑控制 ...

  2. oracle创建包 和调用,oracle创建函数和调用存储过程和调用函数的例子(区别)...

    创建函数: 格式:create or replace function func(参数 参数类型) Return number Is Begin --------业务逻辑--------- End; ...

  3. 第七篇 python基础之函数,递归,内置函数

    阅读目录 一 数学定义的函数与python中的函数 二 为何使用函数 背景提要 三 函数和过程 四 函数参数 五 局部变量和全局变量 六 前向引用之'函数即变量' 七 嵌套函数和作用域 八 递归调用 ...

  4. 轩小陌的Python笔记-day13 匿名函数、生成器、内置函数、推导式

    day13 内置函数和推导式 今日概要: 匿名函数 生成器 内置函数 附加:推导式,属于数据类型的知识,内部的高级的用法会涉及到[生成器]和[函数]的内容. 1. 匿名函数 传统的函数的定义包括了:函 ...

  5. python 内置函数 内置模块 标准库 第三方库 函数 模块 包 库

    大家在学习python时,会遇到这样的情况,有些东西直接就可以使用,例如str().len(): 而有些需要import 导入才能使用,比如sys.os.time.math: 还有些需要安装才能使用, ...

  6. python 魔法函数 运行时_python内置函数和魔法函数

    内置方法:Python中声明每一个类系统都会加上一些默认内置方法,提供给系统调用该类的对象时使用.比如需要实例化一个对象时,需要调用该类的init方法:使用print去打印一个类时,其实调用的是str ...

  7. python入门之函数调用内置函数_第九篇 python基础之函数,递归,内置函数

    阅读目录 一 数学定义的函数与python中的函数 二 为何使用函数 背景提要 三 函数和过程 四 函数参数 五 局部变量和全局变量 六 前向引用之'函数即变量' 七 嵌套函数和作用域 八 递归调用 ...

  8. 5、JavaScript进阶篇②——函数、事件、内置对象

    一.函数 1. 什么是函数 函数的作用,可以写一次代码,然后反复地重用这个代码. 如:我们要完成多组数和的功能. var sum; sum = 3+2; alert(sum);sum=7+8 ; al ...

  9. .net网格怎么把值插入指定列表_Python列表有什么内置函数可以使用,怎么使用这些函数...

    序列是Python中最基本的数据结构.序列中的每个元素都分配一个数字(它的位置,或索引,第一个索引是0,第二个索引是1,依此类推.) ​ Python序列的列表是最常用的Python数据类型.所以很多 ...

最新文章

  1. 给CentOS添加第三方源
  2. python版本切换_Ubuntu18.04下python版本完美切换的解决方法
  3. 如何导出久其报表所有数据_如何选择好的HR软件
  4. javascript 西瓜一期 02 编程语言与标记语言的区别
  5. 180接线_工程人必备:180页建筑机电安装标准做法图集,限领三天手慢无
  6. aix Oracle 限制访问,改变AIX上使用oracle的一些限制
  7. R74800H和i79750h参数对比哪个好?
  8. 图灵机器人api接入测试
  9. 服务器的mdf文件怎么打开,在没SQL Server数据库情况下怎么打开.MDF文件?
  10. android os 小米系统,小米全新OS系统MIUI 12发布:挑战iOS、22款机型首发升级
  11. 辛普森法 matlab,MATLAB辛普森法则
  12. 业余草双因素认证(2FA)教程
  13. 【线性代数】上三角矩阵/下三角矩阵
  14. 两化融合资质认证流程
  15. 微信小程序 瀑布流布局 终极解决方案
  16. linux chrome 硬件加速,在Chrome上开启硬件加速和预先渲染的方法技巧
  17. Ray Debugger Crack,Ray 发送数据库查询
  18. 如何安全地嵌入第三方js – FBML/caja/sandbox/ADsafe简介
  19. CFT学习资源与工具上新
  20. 仅仅是一张照片就是不能刷脸支付的

热门文章

  1. 某计算机型号,某计算机的型号为486/33,其中33的含义是?
  2. 简单的IDEA的快捷键操作和简写操作介绍(一)
  3. 攻防世界(Pwn)dice_game, 栈溢出覆盖srand种子
  4. linux 报错 E: 无法定位软件包 python-lzma
  5. 13道Python3实例
  6. Python-jsonpath使用和json转换
  7. Python:值传递,引用传递?不存在的,是赋值传递
  8. 如何区分abcd类地址_IP地址中A类、B类、C类地址的区别
  9. 震惊!html文件注释也会影响运行代码!(werkzeug.routing.BuildError: Could not build url for endpoint)莫名其妙
  10. Intel Realsense D435 报错 Couldn't resolve requests