Home  >  Article  >  Backend Development  >  How to convert PHP string to array

How to convert PHP string to array

PHPz
PHPzOriginal
2023-04-19 11:38:15660browse

In PHP programming, strings and arrays play a very important role. Sometimes we need to convert a string into an array to better process the data. This article will describe in detail how to convert a PHP string into an array.

  1. Separate a string into an array according to specified characters

We can use the PHP built-in function explode() to separate a string into an array, explode() The function accepts two parameters, the first parameter specifies the delimiter, and the second parameter specifies the string to be separated. The following example converts a string into an array separated by commas.

$str = 'apple,banana,cherry';
$arr = explode(',', $str);

print_r($arr);

Output result:

Array
(
    [0] => apple
    [1] => banana
    [2] => cherry
)
  1. Separate the string into arrays according to the specified length

In addition to separating the string into arrays according to fixed characters In addition, we can also separate the string into an array according to the specified length. At this time we can use the PHP built-in function str_split(), str_split() The function accepts two parameters, the first parameter specifies the string to be separated, and the second parameter specifies the separation length.

$str = 'ABCDEFGHIJK';
$arr = str_split($str, 3);

print_r($arr);

Output result:

Array
(
    [0] => ABC
    [1] => DEF
    [2] => GHI
    [3] => JK
)
  1. Convert each character in the string into an array element

If we need to convert each character in the string characters are converted into array elements, then you can directly use the string variable as an array to traverse, and each character is automatically converted into an element in the array.

$str = 'Hello World';
$arr = [];

for($i = 0; $i < strlen($str); $i++) {
    $arr[] = $str[$i];
}

print_r($arr);

Output result:

Array
(
    [0] => H
    [1] => e
    [2] => l
    [3] => l
    [4] => o
    [5] =>
    [6] => W
    [7] => o
    [8] => r
    [9] => l
    [10] => d
)
  1. Associate the values ​​​​and keys in the string into an array

Sometimes we need to combine the values ​​​​in the string Convert it to an array in one-to-one correspondence with the key. At this time, you can use array_map().

$str = 'a:1:{s:10:"product_id";s:2:"10";}';
$arr = array_map(
    function($val) {
        $temp = explode(':', $val);
        return str_replace(['"', ';'], '', $temp[1]);
    },
    explode(';', $str)
);

print_r($arr);

Output result:

Array
(
    [0] => 1
    [1] => 10
)
  1. Convert JSON format string into array

If we need to convert JSON format string into array , you can use the json_decode() function for conversion. json_decode() The function accepts two parameters. The first parameter is a JSON format string, and the second parameter is a Boolean type, specifying whether to convert it to an object or an array. Defaults to object.

$str = '{"name":"Jack", "age": 22, "gender": "male"}';
$arr = json_decode($str, true);

print_r($arr);

Output results:

Array
(
    [name] => Jack
    [age] => 22
    [gender] => male
)

Summary

This article introduces several common methods for converting strings into arrays in PHP, including separating them into arrays according to specified characters, and dividing them into arrays according to specified characters. Length delimits into an array, converts each character in a string into an array element, associates a value with a key in a string into an array, and converts a JSON-formatted string into an array. These methods are often used in daily programming in PHP. I hope this article can be helpful to PHP programmers.

The above is the detailed content of How to convert PHP string to array. For more information, please follow other related articles on the PHP Chinese website!

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn