ホームページ  >  記事  >  バックエンド開発  >  文字化けせずに漢字を文字単位でインターセプトする方法_PHPチュートリアル

文字化けせずに漢字を文字単位でインターセプトする方法_PHPチュートリアル

WBOY
WBOYオリジナル
2016-07-13 10:00:001120ブラウズ

phpで文字化けせずに中国語を文字でインターセプトする方法

この記事では主にphpで中国語と英語の文字列を文字化けせずにインターセプトする方法を紹介します。非常に実用的な価値がありますので、必要な方は参考にしてください。

この記事の例では、PHPで漢字を文字化けせずに文字単位でインターセプトする方法を説明します。皆さんの参考に共有してください。具体的な実装方法は以下の通りです

?

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

41

42

43

44

45

46

47

48

49

50

51

52

53

54

55

56

57

58

59

60

61

62

63

64

65

66

67

//$str インターセプトされる文字列

//$len はインターセプトされた文字数です

//$chars インターセプトされた文字数

//$res 保存された文字列

//$chars はインターセプトされた文字列の数を保存します

//$offset インターセプトされたオフセット

//$length 文字列内のバイト数

//$str の文字数が $len> の場合、無意味な while ループが発生します ($offset 関数 utf8sub($str,$len){

if($len 戻る;

}

$res="";

$オフセット=0;

$chars=0;

$length=strlen($str);

while($chars $hign=decbin(ord(substr($str,$offset,1)));

if(strlen($hign) $count=1;

}elseif(substr($hign,0,3)=="110"){

$count=2;

}elseif(substr($hign,0,4)=="1110"){

$count=3;

}elseif(substr($hign,0,5)=="11110"){

$count=4;

}elseif(substr($hign,0,6)=="111110"){

$count=5;

}elseif(substr($hign,0,7)=="1111110"){

$count=6;

}

$res.=substr($str,$offset,$count);

$オフセット+=$カウント;

$chars+=1;

}

$res を返す;

}

関数 utf8sub1($str,$len){

$chars=0;

$res="";

$オフセット=0;

$length=strlen($str);

while($chars $hign=decbin(ord(substr($str,$offset,1)));

if(strlen($hign) $count=1;

}elseif($hign & "11100000"=="11000000"){

$count=2;

}elseif($hign & "11110000"=="11100000"){

$count=3;

}elseif($hign & "11111000"=="11110000"){

$count=4;

}elseif($hign & "11111100"=="11111000"){

$count=5;

}elseif($hign & "11111110"=="11111100"){

$count=6;

}

$res.=substr($str,$offset,$count);

$chars++;

$オフセット+=$カウント;

}

$res を返す;

}

$a="中华ああ人hdj";

echo utf8sub($a,5);

?>

この記事で説明した内容が皆様の PHP プログラミング設計に役立つことを願っています。

www.bkjia.comtru​​ehttp://www.bkjia.com/PHPjc/975121.html技術記事この記事では、PHP で文字化けせずに中国語を文字でインターセプトする方法を主に紹介します。これには、PHP で中国語と英語の文字列を操作するスキルが含まれます。非常に実用的です...
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。