Reputation: 1725
How to split $string after 5 characters into an array
example:
$string="123456789";
expected output
$output[0] contain "12345";
$output[1] contain "6789";
Upvotes: 47
Views: 71154
Reputation: 1503
If you want to split after 5 characters, try below.
$first5
splits the string and get the first 5 characters of the $str
string. $theRest
splits the string and gets the remaining part of the $str
string.
$first5 = substr($str, 0, 5);
$theRest = substr($str, 5);
Variable names are just for explanation. Also if you try this on a string less than 5 characters $theRest will be FALSE
Upvotes: 0
Reputation: 1725
With the help of BoltClocks' answer I have created the following function to solve the problem:
function split_on($string, $num) {
$length = strlen($string);
$output[0] = substr($string, 0, $num);
$output[1] = substr($string, $num, $length );
return $output;
}
Upvotes: 25
Reputation: 723618
If you need to split a string after every 5 characters, try str_split()
:
$output = str_split($string, 5);
If you only need to extract the first 5 characters and put the rest of the string in the second part of your array, you can use substr()
as NullUserException suggests (code from his now-deleted answer):
$output[0] = substr($string, 0, 5);
$output[1] = substr($string, 5);
Upvotes: 103