PHP chunk_split 函数详解
一、函数功能:
将字符串按指定长度、使用指定字符分隔开来。
二、函数语法:
三、函数参数:
四、返回值:
五、用法举例:
1、将a-z 26个字母每7个字符使用一换行符(默认)分隔:
2、将0-9十个字符,按2个字符、使用逗号(,)分隔:
3、为汉字实现chunk_split功能:
由于chunk_split()函数只支持单字节字符的字符串,下面我们自定义一个能支持多字节字符(如汉字)、类似chunk_split()函数功能的函数。
将字符串按指定长度、使用指定字符分隔开来。
二、函数语法:
string chunk_split($str [, $blocksize = 76 [, $endadd = "\r\n" ]])
三、函数参数:
| 参数 | 描述 |
|---|---|
| $str | 切割前的原始字符串 |
| $blocksize | 可选,切割后的块长度,默认76 |
| $endadd | 可选,在切割后的每块后面追加的字符串,默认回车换行符(\r\n) |
四、返回值:
返回已分割的字符串。
五、用法举例:
1、将a-z 26个字母每7个字符使用一换行符(默认)分隔:
<?php
//爱E族:aiezu.com
echo chunk_split("abcdefghijklmnopqrstuvwxyz", 7);输出:abcdefg hijklmn opqrstu vwxyz
2、将0-9十个字符,按2个字符、使用逗号(,)分隔:
<?php
//爱E族:aiezu.com
echo chunk_split("0123456789", 2, ",");输出:01,23,45,67,89,
3、为汉字实现chunk_split功能:
由于chunk_split()函数只支持单字节字符的字符串,下面我们自定义一个能支持多字节字符(如汉字)、类似chunk_split()函数功能的函数。
<?php
//爱E族:aiezu.com
function utf8_chunk_split($str, $blocksize=76, $endadd="\r\n") {
$i = 0;
$blocks = array();
while( $i < mb_strlen($str, 'utf8') ) {
$blocks[] = mb_substr($str, $i, $blocksize, 'utf8') . $endadd;
$i+= $blocksize;
}
return join("", $blocks);
}
echo chunk_split('好好学习abcd1234天天向上', 4, ";");
echo PHP_EOL;
echo utf8_chunk_split('好好学习abcd1234天天向上', 4, ";");输出:好㻥½嫻¦习;abcd;1234;天㻤©去上; 好好学习;abcd;1234;天天向上;