PHP中英文截取无乱码,包括全角下的字符

WBOY
Libérer: 2016-07-25 09:01:18
original
1026 Les gens l'ont consulté
代码出处: 小墨(自己)
符合UTF-8下,如果GBK下
改为 $content .= $str[$sing].$str[$sing+1];
$sing += 3; 改为 $sing += 2;
  1. /**
  2. * 中英文截取
  3. * @param string 要截取的字符串
  4. * @param string 要截取的长度(超过总长度 按总长度计算)
  5. * @param [string] (可选)开始位置(第一个为0)
  6. * @return string
  7. * @author 小墨 244349067@qq.com
  8. */
  9. function mixSubstr($str, $length, $start=FALSE)
  10. {
  11. if( ! $length){
  12. return false;
  13. }
  14. $strlen = strlen($str);
  15. $content = '';
  16. $sing = 0;
  17. $count = 0;
  18. if($length > $strlen) {
  19. $length = $strlen;
  20. }
  21. if($start >= $strlen) {
  22. return false;
  23. }
  24. while($length != ($count-$start))
  25. {
  26. if(ord($str[$sing]) > 0xa0) {
  27. if(!$start || $start $content .= $str[$sing].$str[$sing+1].$str[$sing+2];
  28. }
  29. $sing += 3;
  30. $count++;
  31. }else{
  32. if(!$start || $start $content .= $str[$sing];
  33. }
  34. $sing++;
  35. $count++;
  36. }
  37. }
  38. return $content;
  39. }
复制代码


source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal