自己編寫的PHP按字符串長度分割成數組代碼,支持中文字符,下面給出代碼和使用方法,有需要的小伙伴可以參考下。
以下是我編寫的代碼,實現對中英文混雜字符進行分割:
- <?php
- 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 '<pre>';
- print_r($r);
- echo '</pre>';
- ?>
運行結果:
- Array
- (
- [0] => 我愛北京
- [1] => 3我愛上
- [2] => 海-我愛
- [3] => xian
- [4] => ggan
- [5] => g
- )
- <?php
- 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不朽 )
以上所述就是本文的全部內容了,希望大家能夠喜歡。
新聞熱點
疑難解答