解决PHP字符串长度不一致的问题

如下所示:

$paramStr = iconv("UTF-8", "GB2312//Ignore", $paramStr);
$paramStr = iconv("GB2312", "UTF-8//Ignore", $paramStr); 

这两句就可以解决了。

以上这篇解决PHP字符串长度不一致的问题就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持我们。

(0)

相关推荐

  • php比较两个字符串长度的方法

    本文实例讲述了php比较两个字符串长度的方法.分享给大家供大家参考.具体实现方法如下: 这段代码计算两个字符串的长度,然后计算其差值 <?php // This will return a number of how many more characters the longest string has function str_compare_length($str1, $str2){ $len1 = strlen($str1); $len2 = strlen($str2); return a

  • php 不同编码下的字符串长度区分

    UTF-8的中文字符串是三个字节 复制代码 代码如下: <?php //编码UTF-8 echo strlen('测试文字a测试文字'); echo '-'; echo mb_strlen('测试文字a测试文字','utf-8'); ?> 输出:25-9 GB2312的中文字符串是二个字节 复制代码 代码如下: <?php //编码GB2312 echo strlen('测试文字a测试文字'); echo '-'; echo mb_strlen('测试文字a测试文字','Gb2312')

  • PHP字符串长度计算 - strlen()函数使用介绍

    strlen()函数和mb_strlen()函数 在PHP中,函数strlen()返回字符串的长度.函数原型如下: 复制代码 代码如下: int strlen(string string_input); 参数string_input为要处理的字符串. strlen()函数返回字符串所占的字节长度,一个英文字母.数字.各种符号均占一个字节,它们的长度均为1.一个中午字符占两个字节,所以一个中午字符的长度是2.例如 复制代码 代码如下: <?php echo strlen("www.sunch

  • PHP 字符串长度判断效率更高的方法

    有经验的程序员发现,php判断字符串长度,使用isset()在速度上比strlen()更快,执行效率更高.即: 复制代码 代码如下: $str = 'aaaaaa';if(strlen($str) > 6)VSif(!isset($str{6}) 用例子简单测试下,情况基本属实,isset()效率几乎是strlen()的3倍.示例: 复制代码 代码如下: <?php //使用strlen方式 $arr = "123456"; $sTime = microtime(1); i

  • 解决PHP字符串长度不一致的问题

    如下所示: $paramStr = iconv("UTF-8", "GB2312//Ignore", $paramStr); $paramStr = iconv("GB2312", "UTF-8//Ignore", $paramStr); 这两句就可以解决了. 以上这篇解决PHP字符串长度不一致的问题就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持我们.

  • 解决中英文字符串长度问题函数

    复制代码 代码如下: function strSplit($s, $len) {     $end = '-';     $result = '';     $strLen = strlen($s);     if ($strLen <= $len) {         return $s;     }     $len -= 2;     for ($i=0; $i<$len && $i<$strLen; $i++) {         $c = $s[$i];    

  • MySQL函数与存储过程字符串长度限制的解决

    目录 问题描述 原因分析: 解决方案: 问题描述 MySQL函数或者存储过程中使用group_concat()函数导致数据字符过长而报错 CREATE DEFINER=`root`@`%` PROCEDURE `get_pipe_child`(IN `in_pipe2Num` varchar(25),IN `in_sectionNum` varchar(5)) BEGIN  declare ids varchar(1000) default '';   declare tempids varch

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

    比较strlen和mb_strlen 当字符全是英文字符的时候,两者是一样.这里主要比较一下,中英文混排的时候,两个计算结果.(测试时编码方式是UTF8) 复制代码 代码如下: <?php $str='中文a字1符'; echo strlen($str); echo '<br />'; echo mb_strlen($str,'UTF8'); //输出结果 //14 //6 ?> 结果分析:在strlen计算时,对待一个UTF8的中文字符是3个长度,所以"中文a字1符&q

  • PHP的preg_match匹配字符串长度问题解决方法

    项目中,用preg_match正则提取目标内容,死活有问题,代码测得死去活来. 后来怀疑PHP 的preg_match有字符串长度限制,果然,发现"pcre.backtrack_limit "的值默认只设了100000. 解决办法:ini_set('pcre.backtrack_limit', 999999999); 注:这个参数在php 5.2.0版本之后可用. 另外说说关于:pcre.recursion_limit pcre.recursion_limit是PCRE的递归限制,这个

  • PHP中preg_match函数正则匹配的字符串长度问题

    项目中,用preg_match正则提取目标内容,死活有问题,代码测得死去活来. 后来怀疑PHP 的preg_match有字符串长度限制,果然,发现"pcre.backtrack_limit "的值默认只设了100000. 解决办法:ini_set('pcre.backtrack_limit', 999999999); 注:这个参数在php 5.2.0版本之后可用. 另外说说关于:pcre.recursion_limit pcre.recursion_limit是PCRE的递归限制,这个

  • php自定义函数实现统计中文字符串长度的方法小结

    本文实例讲述了php自定义函数实现统计中文字符串长度的方法.分享给大家供大家参考,具体如下: 中文字符计算为2个字符 英文字符计算为1个 代码 /** * 可以统计中文字符串长度的函数 * */ function abslength($str) { $len=strlen($str); $i=0; while($i<$len) { if(preg_match("/^[".chr(0xa1)."-".chr(0xff)."]+$/",$str

  • 字符串长度函数strlen和mb_strlen的区别示例介绍

    在php中常见的计算字符串长度的函数有:strlen和mb_strlen.当字符全是英文字符的时候,两者是一样.这里主要比较一下,中英文混排的时候,两个计算结果. 在PHP中,strlen与mb_strlen是求字符串长度的函数,但是对于一些初学者来说,如果不看手册,也许不太清楚其中的区别. 下面通过例子,讲解这两者之间的区别. 先看例子: <?php //测试时文件的编码方式要是UTF8 $str='中文a字1符'; echo strlen($str).'<br>';//14 echo

  • iOS中textField限制字符串长度、字符数的方法

    前言 最近在开发的时候遇到一个问题,就是需要限制TextField中输入的字符串的长度,但是不是直接根据长度限制,而是根据字符数限制,一个汉字为两个字节,数字字母为一个字符.超过字符限制则不允许继续输入并弹出toast提示. 这个问题有三个关键点:判断字符串是否超出长度,超出长度不可输入,判断字符串的字符数. 下面话不多说了,来一起看看详细的介绍吧 方法如下: 1.判断字符串是否超出长度 [self.txfUsername addTarget:self action:@selector(text

  • oracle求字符串长度函数length()和hengthb()简介

    lengthb(string)计算string所占的字节长度:返回字符串的长度,单位是字节 length(string)计算string所占的字符长度:返回字符串的长度,单位是字符 对于单字节字符,LENGTHB和LENGTH是一样的. 如可以用length('string')=lengthb('string')判断字符串是否含有中文. 注: 一个汉字在Oracle数据库里占多少字节跟数据库的字符集有关,UTF8时,长度为三. select lengthb('飘') from dual   可查

随机推荐