用户名:
密 码: 记住
您当前的位置:首页 > 网络编程 > php教程

php中文字符串截取函数

时间:2015-01-23  来源:西部数据  作者:西部数据

下面这二款函数是二款双字节字符串截取函数,那就是针对中文字符串截取了,好了第一款汉字中文截取函数是越级简洁了,后一款复杂但考虑更多一些.

  1. <?php 
  2. //php 中文字符串截取函数 
  3. /* 
  4.  
  5. */ 
  6. function substr($str = ''$offset = 0, $len = 0){ 
  7.     $len || ($len = strlen($str)); 
  8.     preg_match_all('/./us'$str$result); 
  9.     return implode(''array_slice($result[0], $offset$len)); 
  10. }  
  11.  
  12. //方法二,代码如下 
  13. if (!function_exists('mb_substr')) { 
  14. function mb_substr($str$start$len = ''$encoding="utf-8"){ 
  15.   $limit = strlen($str); 
  16.  
  17.   for ($s = 0; $start > 0;--$start) {// found the real start 
  18.     if ($s >= $limit
  19.       break
  20.  
  21.     if ($str[$s] <= ""
  22.       ++$s
  23.     else { 
  24.       ++$s// skip length 
  25.  
  26.       while ($str[$s] >= "€" && $str[$s] <= "?"
  27.         ++$s
  28.     } 
  29.   } 
  30.  
  31.   if ($len == ''
  32.     return substr($str$s); 
  33.   else 
  34.     for ($e = $s$len > 0; --$len) {//found the real end 
  35.       if ($e >= $limit
  36.         break
  37.  
  38.       if ($str[$e] <= ""
  39.         ++$e
  40.       else { 
  41.         ++$e;//skip length 
  42.  
  43.         while ($str[$e] >= "€" && $str[$e] <= "?" && $e < $limit
  44.           ++$e;//开源代码phpfensi.com 
  45.       } 
  46.     } 
  47.  
  48.   return substr($str$s$e - $s); 
  49.  
  50.  
  51. ?>
来顶一下
返回首页
返回首页
推荐资讯
WiFi太不安全:7岁女孩11分钟内入侵公共网络 WiFi太不安全:7岁女孩11分钟内入侵近期刚刚发布研究说WiFi网络能获得人们手机里多少私人信息,
不服跑个分?人工智能也出现“刷分”乱象 不服跑个分?人工智能也出现“刷分2014年,人工智能领域突然爆发,成为了科研和科技创业的热门
相关文章
    无相关信息
栏目更新
栏目热门