json_encode
是 PHP 中的一个内置函数,用于将数组或对象转换为 JSON 格式的字符串
-
确保您的 PHP 版本支持
json_encode
。这个函数从 PHP 5.2.0 开始被引入,所以在 PHP 5.2.0 及更高版本中都可以使用。您可以通过运行php -v
命令来查看您的 PHP 版本。 -
使用
json_encode
函数。这个函数的语法如下:json_encode(mixed $data, int $options = 0, int $depth = 512): string
其中,
$data
是要编码的数据(数组、对象等),$options
是可选的参数,用于控制 JSON 编码的行为,$depth
是可选的参数,用于控制递归编码的深度。 -
在不同版本的 PHP 中使用
json_encode
的示例:-
PHP 5.2.0 示例:
"John", "age" => 30, "city" => "New York"); $json_data = https://www.yisu.com/ask/json_encode($data);"name":"John","age":30,"city":"New York"} ?>
-
PHP 5.3.0 示例:
"John", "age" => 30, "city" => "New York"); $json_data = https://www.yisu.com/ask/json_encode($data, JSON_PRETTY_PRINT);"name": "John", "age": 30, "city": "New York" } ?>
-
PHP 5.4.0 示例:
$name, $age, $city) { $this->name = $name; $this->age = $age; $this->city = $city; } } $person = new Person("John", 30, "New York"); $json_data = https://www.yisu.com/ask/json_encode($person, JSON_PRETTY_PRINT);"name": "John", "age": 30, "city": "New York" } ?>
-
PHP 7.0.0 示例:
"John", "age" => 30, "city" => "New York"); $json_data = https://www.yisu.com/ask/json_encode($data, JSON_UNESCAPED_UNICODE);"name":"John","age":30,"city":"纽约"} ?>
-
PHP 7.1.0 示例:
"John", "age" => 30, "city" => "New York"); $json_data = https://www.yisu.com/ask/json_encode($data, JSON_PRETTY_PRINT | JSON_UNESCAPED_UNICODE);"name": "John", "age": 30, "city": "纽约" } ?>
-
PHP 7.2.0 示例:
"John", "age" => 30, "city" => "New York"); $json_data = https://www.yisu.com/ask/json_encode($data, JSON_PRETTY_PRINT | JSON_UNESCAPED_UNICODE | JSON_PARTIAL_OUTPUT_ON_ERROR);"name":"John","age":30,"city":"纽约"} ?>
-
PHP 7.3.0 示例:
"John", "age" => 30, "city" => "New York"); $json_data = https://www.yisu.com/ask/json_encode($data, JSON_PRETTY_PRINT | JSON_UNESCAPED_UNICODE | JSON_PARTIAL_OUTPUT_ON_ERROR | JSON_UNESCAPED_SLASHES);"name":"John","age":30,"city":"纽约"} ?>
-
PHP 7.4.0 示例:
"John", "age" => 30, "city" => "New York"); $json_data = https://www.yisu.com/ask/json_encode($data, JSON_PRETTY_PRINT | JSON_UNESCAPED_UNICODE | JSON_PARTIAL_OUTPUT_ON_ERROR | JSON_UNESCAPED_SLASHES | JSON_PRESERVE_KEY_ORDER);"name":"John","age":30,"city":"纽约"} ?>
-
PHP 8.0.0 示例:
"John", "age" => 30, "city" => "New York"); $json_data = https://www.yisu.com/ask/json_encode($data, JSON_PRETTY_PRINT | JSON_UNESCAPED_UNICODE | JSON_PARTIAL_OUTPUT_ON_ERROR | JSON_UNESCAPED_SLASHES | JSON_PRESERVE_KEY_ORDER | JSON_THROW_ON_ERROR);"name":"John","age":30,"city":"纽约"} ?>
-
从上面的示例中可以看出,随着 PHP 版本的更新,json_encode
函数新增了一些选项,例如 JSON_UNESCAPED_UNICODE
、JSON_PARTIAL_OUTPUT_ON_ERROR
和 JSON_PRESERVE_KEY_ORDER
等。您可以根据需要选择合适的选项来控制 JSON 编码的行为。