在php中常见的计算字符串长度的函数有:strlen和mb_strlen

比较strlen和mb_strlen

1.strlen PHP内置的字符串长度函数

2.mb_strlen 不是PHP核心函数,使用前需要确保在php.ini中加载了php_mbstring.dll,即确保"extension=php_mbstring.dll"这一行存在并且没有被注释掉

当字符全是英文字符的时候,两者是一样的。关于中文的问题,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()函数得到

代码如下:

//编码方式UTF8

$str='php教程网';

echo strlen($str);

echo '
';

echo mb_strlen($str,'UTF8');

//输出结果

//12

//6

?>

php 怎样计算字符串长度,php字符串长度计算相关推荐

  1. excel取html文本长度,excel字符长度 怎么计算excel里的字符串的长度

    请教:在EXCEL中如何统计字符长度? 打开excel文件,确定需要编辑的内容 选择功能区的"公式"功能 在公式中选择"LEN"功能 在text中选择需要编辑的 ...

  2. 利用正则表达式计算含有中文的字符串长度

    using System; using System.Text.RegularExpressions; namespace LangZi {     /** <summary>     / ...

  3. ios 怎么判断字符串的字节数_iOS 计算字符串长度-boundingRectWithSize:

    iOS 7.0之前用sizeWithFont:(计算的不是很准确) CGFloat width1=[(NSString *)obj sizeWithFont:[UIFont systemFontOfS ...

  4. 判断html()中有长度,VBS 字符串长度判断的问题

    对于给你一个字符串你应该怎样判断他的字符串长度,试举一些典型的例子C语言--字符串长度的计算方法提示:(1)计算字符串长度时关键是要注意辨认转义字符:(2)一个转义字符总是以反斜杠开始,再加一个其他字 ...

  5. mysql 长度为1 的空字符串_MYSQL,如果定义了一个字符串的字段,长度为255,那么当我添加一个空字符串数据时占用空间吗?...

    你的位置: 问答吧 -> PHP -> 问题详情 MYSQL,如果定义了一个字符串的字段,长度为255,那么当我添加一个空字符串数据时占用空间吗? MYSQL,如果定义了一个字符串的字段, ...

  6. 利用正则按固定长度分割字符串

    有一个字符串,需要按固定长度分割,以数组形式返回. 我们用正常的函数是这样的: function formatLongStrToArr(str, len){var arrLength = Math.c ...

  7. java idwork长度_java 字符串id

    Java FutureTask import java.util.ArrayList; import java.util.concurrent.Callable; import java.util.c ...

  8. 不同长度的字符串/中文串相似度对比算法

    1.背景介绍 今天在公司接到一个需求,大概是这样的.我们ERP系统数据库有张customer(客户)表,其中有个字段是小区名称(plotName),当初在录入数据时没有对这一字段做界定和规范,由人工手 ...

  9. c语言 ZZ转字符串,C语言 字符串中的转义字符与字符串的长度 zz

    (1)计算字符串长度时关键是要注意辨认转义字符: (2)一个转义字符总是以反斜杠开始,再加一个其他字符组成.所以,遇到反斜杠时要特别注意!!! 示例: 1.不带转义字符的字符串 如:"abc ...

  10. JS CSS 超出字符省略号,获取字符串实际所占长度,显示文字提示tooltip

    CSS 超出字符省略号 .a{white-space: nowrap;overflow: hidden;text-overflow: ellipsis; } JS获取字符串实际所占长度 compute ...

最新文章

  1. NSURLSession简介与入门
  2. 深度学习核心技术精讲100篇(六)-keras 实战系列之知识蒸馏(Knowledge Distilling)
  3. 处理程序“ExtensionlessUrlHandler-Integrated-4.0”在其模块列表中有一个错误模块“ManagedPipelineHandler”...
  4. java中求时间间隔(精确到分钟)
  5. doxygen 无法生成图片_设计稿智能生成代码如何识别组件?Imgcook 3.0 解析
  6. win10忘记密码_win10带有密码压缩包的破解方法
  7. 百度地图聚合找房开发
  8. NUCLE0 STM32L476RGT6开发板的资料整理
  9. IDEA控制台output中文乱码
  10. Cloudera 公司研发工程师,Kudu 发明人Todd Lipcon:Kudu,Storage for Fast Analytics on fast Data
  11. 什么是∨ue生命周期
  12. 安卓设备脱离pc自动化测试,Termux模拟器下python+uiautomator2的环境设置。本人亲测,踩坑总结。
  13. 证券期货经营机构私募资产管理业务管理办法 2018年10月22日
  14. jetson nano运行darknet_ros的环境配置
  15. Module Error (from ./node_modules/vue-loader/lib/loaders/templateLoader.js):(Emitted value instead o
  16. 使用神经网络(ICNet)对航拍图片(遥感图像)进行图像语义分割+膨胀预测后处理优化(数据集+代码+最终训练模型)
  17. 高科技恢复展示模式-VR安全教育|广州华锐互动
  18. 【Java成王之路】EE初阶第二十四篇: Servlet
  19. 7-81 Say Hello to Integers (5 分)
  20. (Tekla Structures二次开发)如何获取一个与已知向量垂直的向量

热门文章

  1. html设置一个搜索引擎,零基础打造一款属于自己的网页搜索引擎
  2. qq怎样发起临时会话(不加好友)
  3. dos盘启动计算机,u盘制作dos启动盘方法
  4. java用正则表达式大全_Java 正则表达式 大全
  5. [转载].程序匠人 - 程序调试(除错)过程中的一些雕虫小技
  6. 适合产品经理不同阶段的书籍和课程
  7. D3D中设备丢失的处理
  8. 推荐支持 azw3 、epub 和 mobi 格式的阅读器:FBReader
  9. mysql gay锁_MySQL事务(二) - osc_gay6i4ve的个人空间 - OSCHINA - 中文开源技术交流社区...
  10. id2021中文直装版 v16.0附安装教程及软件特点