Home > Backend Development > PHP Problem > PHP converts json into array object

PHP converts json into array object

PHPz
Release: 2023-05-11 09:26:36
Original
525 people have browsed it

In Web development, the JSON (JavaScript Object Notation) format has become a widely used data exchange format. As a popular server-side language, PHP naturally supports converting JSON-formatted strings into array objects. This article will introduce how to convert JSON to an array object using PHP.

  1. Use json_decode function

PHP’s built-in json_decode function can convert JSON format strings into PHP array objects. The following is a basic usage example:

<?php
$json_str = '{"name": "张三", "age": 20}';
$array_obj = json_decode($json_str);
print_r($array_obj);
?>
Copy after login

In the above code, we first define a JSON format string $json_str, which contains a string attribute named name and a name is the integer attribute of age, then use the json_decode function to convert the string into an array object $array_obj, and finally use the print_r function to output the array object. The output obtained by running the script is:

stdClass Object
(
    [name] => 张三
    [age] => 20
)
Copy after login

As you can see, the json_decode function successfully converts the JSON format string into an array object.

  1. Use the second parameter to specify the type of return result

By default, the json_decode function returns the stdClass object, which is a standard class built into PHP. Used to represent any data type. If you want to convert a JSON string into an associative array (that is, use the property name as the key name), you can set the second parameter to true, as shown below:

<?php
$json_str = '{"name": "张三", "age": 20}';
$array_obj = json_decode($json_str, true);
print_r($array_obj);
?>
Copy after login

Here the second parameter is set to true , the json_decode function will return an associative array, using the attribute name as the key name. The output obtained by running the script is:

Array
(
    [name] => 张三
    [age] => 20
)
Copy after login

As you can see, the json_decode function returns an associative array, which is different from the previous example output.

  1. Handling conversion failure

When the JSON-formatted string cannot be converted into an array object, the json_decode function will return null. Therefore, we need to handle conversion failure cases in our code. Here is an example:

<?php
$json_str = 'invalid json string';
$array_obj = json_decode($json_str);
if(is_null($array_obj)) {
    echo('JSON转换失败');
} else {
    print_r($array_obj);
}
?>
Copy after login

In the above code, we assign an invalid JSON string to the variable $json_str and then use the json_decode function to convert the string. Since the string cannot be converted to an array object, the json_decode function will return null. Therefore, we use the is_null function to determine whether the return result is null. If so, "JSON conversion failed" will be output, otherwise the converted array object will be output. The output obtained by running this script is:

JSON转换失败
Copy after login

Conclusion

In PHP, using the json_decode function to convert a JSON-formatted string into an array object is a very basic operation. This article introduces the basic usage of the json_decode function as well as some common tips and precautions. By learning these knowledge points, readers can become more proficient in using PHP to process data in JSON format.

The above is the detailed content of PHP converts json into array object. For more information, please follow other related articles on the PHP Chinese website!

source:php.cn
Statement of this Website
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
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template