ホームページ  >  記事  >  バックエンド開発  >  PHPソースコード解析:DZX1.5文字列切り詰め関数cutstrの使い方_PHPチュートリアル

PHPソースコード解析:DZX1.5文字列切り詰め関数cutstrの使い方_PHPチュートリアル

WBOY
WBOYオリジナル
2016-07-13 09:50:02919ブラウズ

PHPソースコード解析におけるDZX1.5の文字列切り詰め関数cutstrの使い方

この記事では、PHPソースコード解析におけるDZX1.5の文字列切り詰め関数cutstrの使い方について説明します。皆さんの参考に共有してください。具体的な分析は次のとおりです:

?

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

/**

* 関数ソースは DZX1.5、ファイルは /source/function/function_core.php にあります

*/

define('CHARSET','UTF-8');

関数 Cutstr($string, $length, $dot="...") {

if(strlen($string)<=$length) {

$string を返す;

}

if(strto lower(CHARSET) == "utf-8") {

$n = $tn = $noc = 0;

while($n < strlen($string)) {

$t = ord($string[$n]);

if($t == 9 || $t == 10 || (32

$tn = 1; $n++;

} elseif(194

$tn = 2; $n += 2;

} elseif(224

$tn = 3; $n += 3;

} elseif(240

$tn = 4; $n += 4;

} elseif(248

$tn = 5; $n += 5;

} elseif($t == 252 || $t == 253) {

$tn = 6; $n += 6;

} 他 {

$n++;

}

if($noc >= $length) {

休憩;

}

}

if($noc > $length) {

$n -= $tn;

}

$strcut = substr($string, 0, $n);

} 他 {

for($i = 0; $i

$strcut .= ord($string[$i])>127 ? $string[$i].$string[++$i] : $string[$i];

}

}

$pos = strrpos($strcut, chr(1));

if($pos !== false) {

$strcut = substr($strcut,0,$pos);

}

$strcut.$dot を返す;

}

$string = 'テスト データベース ablci102020@(#)!)!テスト要員 ddk';

エコーカットstr($string,15);

/*php の終わり*/

実行結果は次のとおりです:

テスト データベース ablci1020...

この記事が皆様の PHP プログラミングのお役に立てれば幸いです

www.bkjia.comtru​​ehttp://www.bkjia.com/PHPjc/1018380.html技術記事 PHP ソースコード解析における DZX1.5 文字列切り捨て関数 Cutstr の使用法 この記事では、PHP ソースコード解析における DZX1.5 文字列切り捨て関数 Cutstr の使用法について説明します。皆さんの参考に共有してください。詳細な分析...
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。