Home  >  Article  >  Backend Development  >  How to convert array into json in php

How to convert array into json in php

PHPz
PHPzOriginal
2023-04-26 09:13:54438browse

In web development, it is often necessary to convert arrays into JSON format data. PHP, as a widely used server-side scripting language, provides many methods to convert arrays into JSON.

  1. Using the json_encode() function

The json_encode() function is the most basic function in PHP for converting an array to JSON format. It accepts an array as parameter and returns a JSON formatted string.

Sample code:

<?php
$array = array(&#39;name&#39; => 'Tom', 'age' => 20, 'gender' => 'Male');
$json = json_encode($array);
echo $json;
?>

Output result:

{"name":"Tom","age":20,"gender":"Male"}
  1. Processing Chinese characters

If the array contains Chinese characters, use json_encode () function may cause garbled characters. In this case, you can use the JSON_UNESCAPED_UNICODE option to ignore escaping Unicode characters.

Sample code:

<?php
$array = array(&#39;name&#39; => '张三', 'age' => 20, 'gender' => '男');
$json = json_encode($array, JSON_UNESCAPED_UNICODE);
echo $json;
?>

Output result:

{"name":"张三","age":20,"gender":"男"}
  1. Handling array nesting

If there are other arrays nested in the array or objects, may not be converted correctly using the json_encode() function. At this time, you need to use a recursive function to process each level of the array.

Sample code:

<?php
$array = array(
  &#39;name&#39; => 'Tom',
  'age' => 20,
  'gender' => 'Male',
  'contacts' => array(
    'email' => 'tom@example.com',
    'phone' => '123456789'
  )
);
$json = json_encode_recursive($array);
echo $json;

function json_encode_recursive($array) {
  array_walk_recursive($array, function(&$value, &$key) {
    if (is_string($value)) {
      $value = urlencode($value);
    }
  });
  return urldecode(json_encode($array));
}
?>

Output result:

{"name":"Tom","age":20,"gender":"Male","contacts":{"email":"tom%40example.com","phone":"123456789"}}

The above are several methods of converting arrays to JSON using PHP. It should be noted that JSON data must comply with certain format specifications, otherwise it may not be parsed or used. In actual development, we need to understand the basic syntax and rules of JSON, and choose the appropriate processing method according to specific needs.

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