PHP截与网站seo分析工具有哪些-汉语字符串的题目处理法子

作者 : 共2098个字,阅读需6分钟。
点击购买本站资源可以说是全网最低价,为了换一个更好的服务器,提供更好的服务,开启了极品资源区,极品资源区都是我们花高价购买获得。
前往极品资源区
极品资源区仅限超级会员以上的权限免费使用,永久会员不可下载使用。我们也需要盈利以便更好的发展,白嫖大师就别耽误大家时间了。极品资源区内容不多,但是质量绝无仅有!!!!
下列代码试用于GB2312编码,截与汉语字符串是PHP中一个头痛的题目,处理方式是按照值是不是年夜于即是128去判定是不是是单字节字符,以免呈现治码的环境。但中英文夹杂、特别标记等题目老是存正在,此刻编辑一个比力周全的,仅供参考:

法式讲明:

1. len 参数以汉语字符为尺度,1len即是2个英笔墨符,为了情势上都雅些

2. 若是将magic参数设为false,则汉语战英文划一对待,与尽对于的字符数

3. 出格合用于用htmlspecialchars()停止过编码的字符串

4. 能准确处置GB2312中真体字符形式(𖰰)

法式代码:  

  1. function FSubstr($title,$start,$len="",$magic=true)  
  2. {
  3. /**
  4.   *  powered by Smartpig
  5.   *  mailto:d.einstein@263.net
  6.   */
  7. $length = 0;
  8. if($len == "") $len = strlen($title);
  9. //判定肇端为没有准确地位
  10. if($start > 0)
  11. {
  12.   $cnum = 0;
  13.   for($i=0;$i<$start;$i++)
  14.   {
  15.    if(ord(substr($title,$i,1)) >= 128) $cnum ++;
  16.   }
  17.   if($cnum%2 != 0) $start--;
  18.   unset($cnum);
  19. }
  20. if(strlen($title)<=$len) return substr($title,$start,$len);
  21. $alen   = 0;
  22. $blen = 0;
  23. $realnum = 0;
  24. for($i=$start;$i<strlen($title);$i++)
  25. {
  26.   $ctype = 0;
  27.   $cstep = 0;
  28.   $cur = substr($title,$i,1);
  29.   if($cur == "&")
  30.   {
  31.    iseo排名工具选择29火星软件f(substr($title,$i,4) == "<")
  32.    {
  33.     $cstep = 4;
  34.     $length += 4;
  35.     $i += 3;
  36.     $realnum ++;
  37.     if($magic)
  38.     {
  39.      $alen ++;
  40.     }
  41.    }
  42.    else if(substr($title,$i,4) == ">")
  43.    {
  44.     $cstep = 4;
  45.     $length += 4;
  46.     $i += 3;
  47.     $realnum ++;
  48.     if($magic)
  49.     {
  50.      $alen ++;
  51.     }
  52.    }
  53.    else if(substr($title,$i,5) == "&")
  54.    {
  55.     $cstep = 5;
  56.     $length += 5;
  57.     $i += 4;
  58.     $realnum ++;
  59.     if($magic)
  60.     {
  61.      $alen ++;
  62.     }
  63.    }
  64.    else if(substr($title,$i,6) == """)
  65.    {
  66.     $cstep = 6;
  67.     $length += 6;
  68.     $i += 5;
  69.     $realnum ++;
  70.     if($magic)
  71.     {
  72.      $alen ++;
  73.     }
  74.    }
  75.    else if(substr($title,$i,6) == "'")
  76.    {
  77.     $cstep = 6;
  78.     $length += 6;
  79.     $i += 5;
  80.     $seo宙斯站长工具realnum ++;
  81.     if($magic)
  82.     {
  83.      $alen ++;
  84.     }
  85.    }
  86.    else if(preg_match("/&#(\d+);/i",substr($title,$i,8),$match))
  87.    {
  88.     $cstep = strlen($match[0]);
  89.     $length += strlen($match[0]);
  90.     $i += strlen($match[0])-1;
  91.     $realnum ++;
  92.     if($magic)
  93.     {
  94.      $blen ++;
  95.      $ctype = 1;
  96.     }
  97.    }
  98.   }e搜搜站长工具lse{
  99.    if(ord($cur)>=128)
  100.    {
  101.     $cstep = 2;
  102.     $length += 2;
  103.     $i += 1;
  104.     $realnum ++;
  105.     if($magic)
  106.     {
  107.      $blen ++;
  108.      $ctype = 1;
  109.     }
  110.    }else{
  111.     $cstep = 1;
  112.     $length +=1;
  113.     $realnum ++;
  114.     if($magic)
  115.     {
  116.      $alen++;
  117.     }
  118.    }
  119.   }
  120.   if($magic)
  121.   {
  122.    if(($blen*2+$alen) == ($len*2)) break;
  123.    if(($blen*2+$alen) == ($len*2+1))
  124.    {
  125.     if($ctype == 1)
  126.     {
  127.      $length -= $cstep;
  128.      break;
  129.     }else{
  130.      break;
  131.     }
  132.    }
  133.   }else{
  134.    if($realnum == $len) break;
  135.   }
  136. }
  137. unset($cur);
  138. unset(百度站长工具网站抓取异常$alen);
  139. unset($blen);
  140. unset($realnum);
  141. unset($ctype);
  142. unset($cstep);
  143. return substr($title,$start,$length);
  144. }

复造代码

常见问题FAQ

免费下载或者VIP会员专享资源能否直接商用?
本站所有资源版权均属于原作者所有,这里所提供资源均只能用于参考学习用,请勿直接商用。若由于商用引起版权纠纷,一切责任均由使用者承担。更多说明请参考 VIP介绍。
幽灵米只做资源收集整理,如需商用请联系原作者购买版权。
幽灵米 » PHP截与网站seo分析工具有哪些-汉语字符串的题目处理法子
455+

本站勉强运行

85+

用户总数

11060+

资源总数

18+

今日更新

2020-5-25

最后更新时间