Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                

PHP - str_split() Function



The PHP str_split() function converts a string to an array. In general, an array is a linear data structure containing multiple values (data) of the same type. However, in PHP, an array is actually an ordered map. A map is a type that associates values with keys.

This function accepts an "optional" parameter length. If omitted, the whole string will be converted to an array. If specified, the string is converted to an array with each element having the length of the specified value.

If the given value is less than 1, a "ValueError" will be thrown.

Syntax

Following is the syntax of the PHP str_split() function −

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

Parameters

Following are the parameters of this function −

  • str: The input string.
  • length: It specifies the maximum length of each array element.

Return Value

This function returns an array if the length is "greater" than 0; if not, a ValueError will be thrown.

Example 1

If the length parameter is omitted, the PHP str_split() function converts whole string to an array −

<?php
   $str = "Hello";
   echo "The given string: $str";
   echo "\nAn array: ";
   #using str_split() function
   var_dump(str_split($str));
?>

Output

The above program produces the following −

The given string: Hello
An array: array(5) {
  [0]=>
  string(1) "H"
  [1]=>
  string(1) "e"
  [2]=>
  string(1) "l"
  [3]=>
  string(1) "l"
  [4]=>
  string(1) "o"
}

Example 2

Following is another example of the PHP str_split() function. We use this function to covert the given string "Tutorialspoint" into an array −

<?php
   $str = "Tutorialspoint";
   echo "The given string: $str";
   echo "\nAn array: ";
   #using str_split() function
   $arr = str_split($str);
   foreach($arr as $a){
	   echo $a." ";
   }
?>

Output

After executing the above program, the following output will be displayed −

The given string: Tutorialspoint
An array: T u t o r i a l s p o i n t

Example 3

If we pass the length parameter to this function, the PHP str_split() function converts the string to an array, with each value having the exact length specified by the given parameter −

<?php
   $str = "Welcome to Tutorialspoint";
   echo "The given string: $str";
   $length = 5;
   echo "\nThe given length: $length";
   echo "\nAn array: ";
   // Using str_split() function
   $arr = str_split($str, $length);
   var_dump($arr);
?>

Output

Following is the output of the above program −

The given string: Welcome to Tutorialspoint
The given length: 5
An array: array(5) {
  [0]=>
  string(5) "Welco"
  [1]=>
  string(5) "me to"
  [2]=>
  string(5) " Tuto"
  [3]=>
  string(5) "rials"
  [4]=>
  string(5) "point"
}

Example 4

If the length is less than 1 (i.e. zero or negative), it throws the ValueError

<?php
   $str = "Hello from TP!";
   echo "The given string: $str";
   $length = 0;
   echo "\nThe given length: $length";
   echo "\nAn array: ";
   // Using str_split() function
   $arr = str_split($str, $length);
   var_dump($arr);
?>

Output

On executing the above program, it throws the following error −

The given string: Hello from TP!
The given length: 0
An array: PHP Fatal error:  Uncaught ValueError: str_split(): 
Argument #2 ($length) must be greater than 0 in C:\Apache24\htdocs\index.php:8
Stack trace:
#0 C:\Apache24\htdocs\index.php(8): str_split('Hello from TP!', 0)
#1 {main}
  thrown in C:\Apache24\htdocs\index.php on line 8
php_function_reference.htm
Advertisements