将字符串分成多个部分,然后将其转换为数组

时间:2018-07-06 14:33:48

标签: php arrays string split

有必要每500个符号分割一次字符串,并将每个部分放入数组中。

示例:

$str = "xx...xxxx" (1550 symbols)

结果:

array(4) {
  [0]=>
  string(500) "xxx.xx"
  [1]=>
  string(500) "xxx.xx"
  [2]=>
  string(500) "xxx.xx"
  [3]=>
  string(50) "xxx.xx"
}

尝试过这种方式,但这不是我需要的:

$arr = str_split($str,500);

如何以最佳方式解决此问题?

Thnx!

1 个答案:

答案 0 :(得分:1)

这是我的解决方法

function split($str, $len = 1) {
    $arr    = [];
    $length   = mb_strlen($str, 'UTF-8');
    for ($i = 0; $i < $length; $i += $len) {
        $arr[] = mb_substr($str, $i, $len, 'UTF-8');
    }
    return $arr;
}
$arr = split($cart,55);

u_mulder,thanx为具有UTF编码的提示:)