str_split

Convert a string to an array

Description

array str_split(string $string, int $length = 1)

Converts a string to an array.

Parameters

string

The input string.

length

Maximum length of the chunk.

Return Values

If the optional length parameter is specified, the returned array will be broken down into chunks with each being length in length, except the final chunk which may be shorter if the string does not divide evenly. The default length is 1, meaning every chunk will be one byte in size.

Errors/Exceptions

If length is less than 1, a ValueError will be thrown.

Changelog

Version Description
8.2.0 If string is empty an empty array is now returned. Previously an array containing a single empty string was returned.
8.0.0 If length is less than 1, a ValueError will be thrown now; previously, an error of level E_WARNING has been raised instead, and the function returned false.

Examples

Example #1 Example uses of str_split

<?php

$str = "Hello Friend";

$arr1 = str_split($str);
$arr2 = str_split($str, 3);

print_r($arr1);
print_r($arr2);

?>

The above example will output:

Array
(
    [0] => H
    [1] => e
    [2] => l
    [3] => l
    [4] => o
    [5] =>
    [6] => F
    [7] => r
    [8] => i
    [9] => e
    [10] => n
    [11] => d
)

Array
(
    [0] => Hel
    [1] => lo
    [2] => Fri
    [3] => end
)

Notes

Note:

str_split will split into bytes, rather than characters when dealing with a multi-byte encoded string. mb_str_split can be used to split the string into code points. grapheme_str_split can be used to split the string into grapheme clusters.

See Also

  • mb_str_split
  • grapheme_str_split
  • chunk_split
  • preg_split
  • explode
  • count_chars
  • str_word_count
  • for