`
lhx1026
  • 浏览: 307043 次
  • 性别: Icon_minigender_2
  • 来自: 广州
社区版块
存档分类
最新评论

PHP中英文混排串的字节数(即占位符)的计算

    博客分类:
  • php
PHP 
阅读更多

首先

比较strlen和mb_strlen

$str='中文字符ab';
echo strlen($str);
echo '<br />';
echo mb_strlen($str,'UTF8');
//输出结果
//14
//6 
 

 在strlen计算时,对待一个UTF8的中文字符是3个长度,所以"中文字符ab"长度是3*4+2=14
在mb_strlen计算时,选定内码为UTF8,则会将一个中文字符当作长度1来计算,所以"中文a字1符"长度是6

利用strlen和mb_strlen这两个函数则可以联合计算出一个中英文混排的串的占位是多少(一个中文字符的占位是2,英文字符是1),计算的方法是:如果一个混排字符串有a个中文,b个英文,占位是:

$str='中文字符ab';
//计算如下
echo (strlen($str) + mb_strlen($str,'UTF8')) / 2;
//输出结果
//10 
   

 这个结果正是我想要的,正确计算出了一个字符串的字节数。

分享到:
评论

相关推荐

    Python 中英文混排时对齐 Python源码

    Python 中英文混排时对齐 Python源码Python 中英文混排时对齐 Python源码Python 中英文混排时对齐 Python源码Python 中英文混排时对齐 Python源码Python 中英文混排时对齐 Python源码Python 中英文混排时对齐 Python...

    字符串中英文混排统计中英文个数

    给定字符串,中英文混排,统计其中文字符的个数,英文的个数,标点符的个数。

    Python批量提取中英文混排中英文文本.zip

    本文将深入探讨如何使用Python编程语言来批量提取中英文混排文本中的英文文本,以此针对给定的文件"Python批量提取中英文混排中英文文本.zip"进行解析。 首先,我们需要了解Python中的字符串处理功能。Python提供了...

    php strlen mb_strlen计算中英文混排字符串长度

    在PHP中,处理字符串长度计算时,有两个常用的函数:`strlen`和`mb_strlen`。它们在处理纯英文字符串时表现相同,但在处理包含中文字符的字符串时,两者的计算方式有所不同,尤其在UTF-8编码环境下。 `strlen`函数...

    Word中英文混排文档中删除空格的两种方法.pdf

    Word 中英文混排文档中删除空格的两种方法 本文档介绍了在 Word 中英文混排文档中删除空格的两种方法。方法一是使用标记中文字符前后空格的方法,通过使用 Word 的替换功能,标记中文字符前后空格,并删除空格。...

    PHP UTF-8 等宽度截取中英文字符.txt

    对于UTF-8编码的字符串来说,由于不同字符(如中文、英文等)在UTF-8编码下占用的字节数不同,简单的按字节长度进行截取往往会导致乱码或者截取不准确。因此,需要一种能够等宽度截取中英文字符的方法。 #### 二、...

    字符串处理-中英文混排时对齐-Python实例源码.zip

    在Python编程中,字符串处理是一项基础且重要的任务,特别是在处理中英文混排的文本时,对齐问题显得尤为关键。本实例源码着重探讨如何在中英文混合的字符串中实现对齐,这对于游戏开发中的本地化、网络爬虫的数据...

    Endnote中英文混排之完美解决.pdf

    在处理中英文混排的文献引用时,可能会遇到一些问题,比如中文文献的作者后出现"et al.",而不是中文的"等",或者卷期页码间的标点符号不符合中文习惯。本文将详细介绍如何完美解决Endnote中英文混排的问题。 首先...

    php轻松实现中英文混排字符串截取

    在PHP中处理中英文混排的字符串截取和计数是一项常见的任务,特别是在网页开发中。传统的`strlen()`和`substr()`函数对于处理中文字符可能会出现不准确的问题,因为它们通常按照字节来计算字符串长度,而中文字符...

    delphi 实现截取字符串中中文+英文混合截取

    这个函数`SafeSubstring`接收字符串S、起始字节位置StartByte和截取的字节数LenBytes,返回一个从指定字节位置开始,长度为LenBytes字节的新字符串。注意,这个函数假设输入的都是有效的字节位置,没有进行边界检查...

    c# 获取字符串的字节数的方法

    ”,所以可以由此来进行判断 代码如下:class StringOP { ///  /// 获取中英文混排字符串的实际长度(字节数) ///  /// ”str”&gt;要获取长度的字符串 /// 字符串的实际长度值(字节数) public int getString...

    Endnote生成的中英文混排参考文献中.pdf

    【Endnote 中英文混排参考文献处理】 Endnote是一款强大的参考文献管理软件,深受科研工作者喜爱。然而,当处理中英文混排的参考文献时,它可能会遇到一些挑战。在中国,GB/T 7714《文后参考文献著录规则》是广泛...

    Python代码源码-实操案例-框架案例-中英文混排时对齐.zip

    在Python编程语言中,处理中英文混排时的对齐问题是一个常见的挑战,尤其是在涉及到文本输出、用户界面设计或者数据分析报告生成的场景。这个压缩包文件"Python代码源码-实操案例-框架案例-中英文混排时对齐.zip"很...

    Word中英文混排文档中删除空格[归纳].pdf

    Word中英文混排文档中删除空格方法 Word中英文混排文档中删除空格是日常办公工作中常见的问题,解决此问题需要灵活运用Word的替换功能。本文将介绍两种方法来删除Word中英文混排文档中的空格。 方法一: step1:...

    Endnote中英文混排之完美解决.docx

    ### Endnote中英文混排之完美解决 #### 一、问题背景 Endnote是一款广泛使用的文献管理和引用工具,尤其在学术研究领域内被频繁使用。然而,在使用Endnote与Word结合进行文献引用时,常常会遇到中英文混排的问题。...

    汉字,英文,数字混排验证码

    在本例中,我们讨论的是“汉字,英文,数字混排验证码”,这种类型的验证码旨在增加机器识别的难度,从而提高网站的安全性。 验证码的主要功能是防止自动化程序(如机器人或恶意脚本)进行无效或有害的活动,例如...

    Endnote生成的中英文混排参考文献中.docx

    【Endnote 中英文混排参考文献处理】 Endnote是一款广泛使用的参考文献管理软件,尤其受科研工作者喜爱。然而,对于处理中英文混排的参考文献,Endnote在默认设置下可能会遇到一些挑战,特别是在遵循GB/T 7714《文...

    Pb字符串中的中文和英文(含符号)拆分

    在 PowerBuilder (PB) 开发环境中,有时我们需要处理包含中文和英文字符的字符串,并将它们分开。例如,给定的标题 "Pb字符串中的中文和英文(含符号)拆分" 描述了一个需求:将像 '中字A文C' 这样的字符串拆分为 '...

    TextView解决中英文换行bug和点击显示全部功能

    然而,对于中英文混排,我们可能需要更精细的控制。我们可以将`ellipsize`设置为`MarqueeRepeatLimit`,使TextView支持滚动显示,或者自定义`Ellipsize`策略,如`TruncateAt.MARQUEE`,并配合`singleLine`属性,避免...

Global site tag (gtag.js) - Google Analytics