Home >Backend Development >PHP Tutorial >PHP that supports Chinese is divided into array codes according to string length_PHP tutorial

PHP that supports Chinese is divided into array codes according to string length_PHP tutorial

WBOY
WBOYOriginal
2016-07-13 09:53:531156browse

The PHP that supports Chinese is divided into array codes according to the length of the string

The PHP written by myself is divided into array codes according to the length of the string and supports Chinese characters. The code and usage are given below For the method, friends in need can refer to it.

The following is the code I wrote to segment Chinese and English mixed characters:

 ?

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

function mbStrSplit ($string, $len=1) {

$start = 0;

$strlen = mb_strlen($string);

while ($strlen) {

$array[] = mb_substr($string,$start,$len,"utf8");

$string = mb_substr($string, $len, $strlen,"utf8");

$strlen = mb_strlen($string);

}

return $array;

}

header('Content-type:text/html;charset=utf-8');

$str = '我爱北京3我爱上海-我爱xianggang';

$r = mbStrSplit($str, 4);

echo '

';</p>
            <p>print_r($r);</p>
            <p>echo '
';

?>

1

2

3

1

2

3

4

5

6

7

8

9

Array

(

[0] => 我爱北京

[1] => 3我爱上

[2] => 海-我爱

[3] => xian

[4] => ggan

[5] => g

)

4

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

function str_split_unicode($str, $l = 0) {

if ($l > 0) {

$ret = array();

$len = mb_strlen($str,"UTF-8");

for ($i = 0; $i < $len; $i = $l) {

$ret[] = mb_substr($str, $i, $l,"UTF-8");

}

return $ret;

}

return preg_split("//u", $str, -1, PREG_SPLIT_NO_EMPTY);

}

?>

$s ="还未如愿sss见gfg者不rtret不朽"; // Mild milk

print_r(str_split($s, 5));

print_r(str_split_unicode($s, 5));

 

//输出

//Array ( [0] => 还�� [1] => �如� [2] => ��sss [3] => 见gf [4] => g者� [5] => ��rtr [6] => et不 [7] => 朽 )

//Array ( [0] => 还未如愿s [1] => ss见gf [2] => g者不rt [3] => ret不朽 )

5 6 7 8 9 10 11 12 13 14 15 16 17 18 19
<🎜>function mbStrSplit ($string, $len=1) {<🎜> <🎜>$start = 0;<🎜> <🎜>$strlen = mb_strlen($string);<🎜> <🎜>while ($strlen) {<🎜> <🎜>$array[] = mb_substr($string,$start,$len,"utf8");<🎜> <🎜>$string = mb_substr($string, $len, $strlen,"utf8");<🎜> <🎜>$strlen = mb_strlen($string);<🎜> <🎜>}<🎜> <🎜>return $array;<🎜> <🎜>}<🎜> <🎜> <🎜> <🎜>header('Content-type:text/html;charset=utf-8');<🎜> <🎜>$str = 'I love Beijing 3 I love Shanghai-I love xianggang';<🎜> <🎜>$r = mbStrSplit($str, 4);<🎜> <🎜>echo '
';
            print_r($r);
            echo '
'; ?>
Running results:  ?
1 2 3 4 5 6 7 8 9 Array ( [0] => I love Beijing [1] => 3 I’m in love [2] => Sea-I love [3] => xian [4] => ggan [5] => g )
 ?
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 <🎜>function str_split_unicode($str, $l = 0) {<🎜> <🎜>if ($l > 0) { $ret = array(); $len = mb_strlen($str,"UTF-8"); for ($i = 0; $i < $len; $i = $l) {<🎜> <🎜>$ret[] = mb_substr($str, $i, $l,"UTF-8");<🎜> <🎜>}<🎜> <🎜>return $ret;<🎜> <🎜>}<🎜> <🎜>return preg_split("//u", $str, -1, PREG_SPLIT_NO_EMPTY);<🎜> <🎜>}<🎜> <🎜>?> $s ="Those who have not yet achieved their dream of sss and seeing gfg will not be immortal"; // Mild milk print_r(str_split($s, 5)); print_r(str_split_unicode($s, 5)); //Output //Array ([0] => also [1] => �such as [2] => ��sss [3] => see gf [4] => � [5] => ��rtr [6] => etbu[7] => decay) //Array ( [0] => Not yet fulfilled s [1] => ss meets gf [2] => g is not rt [3] => ret immortal )

The above is the entire content of this article, I hope you all like it.

www.bkjia.comtruehttp: //www.bkjia.com/PHPjc/1000068.htmlTechArticleSupport Chinese PHP split into array code according to string length. PHP written by yourself split into array code according to string length. , supports Chinese characters, the code and usage are given below, if necessary...
Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn