ホームページ > バックエンド開発 > PHPチュートリアル > utf8でエンコードされた文字列インターセプト機能

utf8でエンコードされた文字列インターセプト機能

WBOY
リリース: 2016-07-25 09:07:12
オリジナル
920 人が閲覧しました
  1. /*

  2. * utf8编码の文字符串截取
  3. */
  4. function utf8_substr($str,$position,$length){
  5. $start_position = strlen( $str);
  6. $start_byte = 0;
  7. $end_position = strlen($str);
  8. $count = 0;
  9. for($i = 0; $i if ($count >= $position && $start_position > $i){
  10. $start_position = $i;
  11. $start_byte = $count;
  12. }
  13. if(($count-$start_byte)>=$length) {
  14. $end_position = $i;
  15. Break;
  16. }
  17. $value = ord($str[$i]);
  18. if($value > 127){
  19. $count++;
  20. if($value >= 192 && $value <= 223) $i++;
  21. elseif($value >= 224 && $value <= 239) $i = $i + 2;
  22. elseif($value >= 240 && $value <= 247) $i = $i + 3;
  23. else die('UTF-8 互換文字列ではありません');
  24. }
  25. $count++;

  26. }

  27. return(substr($str,$start_position,$end_position-$start_position));
  28. }
  29. ?>

复制代


ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート