100分求个 检测字符串长度
$str[0] = "123asd你好[哈哈]"
$str[1] = "123asd你好[你好不好啊]"
//一个中文一个字符(utf-8的编码) 符号 [这里面的字和外边的符号算一个字符]
然后计算长度
结果是$str[0]和$str[1]为长度9
最好写成一个函数。谢谢了
------解决方案--------------------
我没太看懂楼主的题,不过函数,手头上有一个。
/**
* 得到utf8 的长度
* @author mu_rain
* @param String $str
* @return Int
*/
static function strlen_utf8($str) {
$i = 0;
$count = 0;
$len = strlen ($str);
while ($i = $len) break;
if($chr & 0x80) {
$chr <font color="#e78608">------解决方案--------------------</font><br>
function myLen($str,$startTag='[',$endTag=']',$encoding='utf-8')
{
$st = preg_quote($startTag);
$et = preg_quote($endTag);
return mb_strlen(preg_replace("#{$st}[^{$et}]*{$et}#","~",$str),$encoding);
}
echo myLen("123asd你好[哈哈]");//9
<br><font color="#e78608">------解决方案--------------------</font><br>附赠字符串函数一堆 ,慢用。<br>
<?php /**
* Created by JetBrains PhpStorm.
* User: Administrator
* Date: 12-2-17
* Time: 上午11:43
* To change this template use File | Settings | File Templates.
*/
/**
* 字符串处理基类.
* @author mu_rain
*/
class kString{
// ------------------------------------
/**
* replace the base64_encode to encode the string
*
* @param $str 对象的实例
* @package KDG
* @subpackage String
* @category Putils
* @author jim
* @return mixed
*/
// ------------------------------------
public static function encode($str){
$src = array("/","+","=");
$dist = array("-a","-b","-c");
$old = base64_encode($str);
$new = str_replace($src,$dist,$old);
return $new;
}
// ------------------------------------
/**
* replace the base64_decode to decode the string
*
* @param $str 对象的实例
* @package P
* @subpackage String
* @category Putils
* @author jim
* @return mixed
*/
// ------------------------------------
public static function decode($str){
$src = array("-a","-b","-c");
$dist = array("/","+","=");
$old = str_replace($src,$dist,$str);
$new = base64_decode($old);
return $new;
}
// ------------------------------------
/**
* replace the base64_decode to decode the string
*
* @param $str 对象的实例
* @package P
* @subpackage String
* @category Putils
* @author jim
* @return mixed
*/
// ------------------------------------
public static function showAsFileSize($str){ // change 1024 to 1k
$count = intVal($str);
$destSize = $count/1024;
$destSize = round($destSize,1);
return $destSize."K";
}
} <div class="clear">
每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号