Home  >  Article  >  Backend Development  >  How to convert php array to json string array

How to convert php array to json string array

PHPz
PHPzOriginal
2023-04-26 09:09:18419browse

With the continuous development of modern Internet technology, data transmission and storage are becoming more and more important. In application development, it is often necessary to transmit or store data in the form of strings to external devices or databases, among which JSON strings are a common data format. This article will introduce how to convert an array into a JSON string array and implement it using PHP language.

1. What is a JSON string

JSON (JavaScript Object Notation) is a lightweight data exchange format that is commonly used in Web front-ends to transmit data asynchronously. It is a text format that uses key-value pairs to store data, curly brackets are used to represent objects, and square brackets are used to represent arrays, as shown below:

{
    "name": "Tom",
    "age": 20,
    "address": {
        "city": "Beijing",
        "country": "China"
    },
    "hobby": ["reading", "playing games"]
}

2. Convert PHP array to JSON string array

PHP is a popular server-side scripting language that supports the parsing and generation of JSON data format, and can easily convert a PHP array into a JSON string array. PHP provides two functions to accomplish this task:

  1. json_encode(): Converts a PHP object or array to a JSON string
  2. json_decode(): Converts a JSON string to PHP Object or Array

In PHP, first create a PHP array and then use the json_encode() function to convert it to a JSON string. The following is a sample code:

<?php
// 创建PHP数组
$data = array(
    "name" => "Tom",
    "age" => 20,
    "address" => array(
        "city" => "Beijing",
        "country" => "China"
    ),
    "hobby" => array("reading", "playing games")
);

// 将PHP数组转换为JSON字符串
$json = json_encode($data);

// 输出JSON字符串
echo $json;
?>

Run the above code, the following JSON string will be output:

{
    "name": "Tom",
    "age": 20,
    "address": {
        "city": "Beijing",
        "country": "China"
    },
    "hobby": ["reading", "playing games"]
}

3. Convert PHP array to JSON string array

Now we Now that you know how to use PHP to convert an array into a JSON string, we will implement a PHP function that can convert multiple arrays into an array of JSON strings. The following is the code:

<?php
/**
 * 将多个PHP数组转换为JSON字符串数组
 *
 * @param array $arrays PHP数组,必须是键值对数组
 * @return array JSON字符串数组
 */
function arrays_to_json(array ...$arrays): array
{
    $jsonArray = array();
    foreach ($arrays as $array) {
        $json = json_encode($array);
        if ($json === false) {
            throw new Exception("Unable to encode data into JSON format.");
        }
        $jsonArray[] = $json;
    }
    return $jsonArray;
}

// 示例用法
$data1 = array(
    "name" => "Tom",
    "age" => 20,
    "address" => array(
        "city" => "Beijing",
        "country" => "China"
    ),
    "hobby" => array("reading", "playing games")
);

$data2 = array(
    "name" => "Jerry",
    "age" => 25,
    "address" => array(
        "city" => "Shanghai",
        "country" => "China"
    ),
    "hobby" => array("swimming", "listening to music")
);

$result = arrays_to_json($data1, $data2);

print_r($result);
?>

Running the above code will output the following results:

Array
(
    [0] => {"name":"Tom","age":20,"address":{"city":"Beijing","country":"China"},"hobby":["reading","playing games"]}
    [1] => {"name":"Jerry","age":25,"address":{"city":"Shanghai","country":"China"},"hobby":["swimming","listening to music"]}
)

So far, we have implemented a PHP function that converts multiple PHP arrays into JSON string arrays.

Summary

This article introduces what a JSON string is and how to use PHP to convert an array into a JSON string. And implemented a PHP function that can convert multiple PHP arrays into JSON string arrays. I hope this article can help readers learn and master the method of converting PHP arrays to JSON string arrays.

The above is the detailed content of How to convert php array to json string 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