1.json_encode — 对变量进行 JSON 编码;该方法可以对除了resource类型的以外的所有的类型进行json编码。编码成功则返回一个以 JSON 形式表示的 string 或者在失败时返回 FALSE 。
2.json_decode — 对 JSON 格式的字符串进行编码
json_decode (string $json [bool $assoc])
参数一为待解码的 json string 格式的字符串。参数二如果为ture则返回array而非object
JSON数据 的四个基本规则:
1) 并列的数据之间用逗号(”,”)分隔。
2) 映射用冒号(”:”)表示。
3) 并列数据的集合(数组)用方括号(“[]”)表示。
4) 映射的集合(对象)用大括号(”{}”)表示。
以下是写的一个例子:
<?php
$json = '{"a":1,"b":2,"c":3,"d":4,"e":5}';
var_dump($json);
echo "<hr>";
var_dump(json_decode($json)); //对json字符串编码,结果是对象
echo "<hr>";
var_dump(json_decode($json, true)); //对json字符串编码,结果是数组
echo "<hr>";
$arr= array("姓名"=>"小明","年龄"=>30);
var_dump($arr);
echo "<hr>";
$jsone=json_encode($arr);//对变量(数组)进行json编码,返回json字符串, "{"\u59d3\u540d":"\u5c0f\u660e","\u5e74\u9f84":30}"
var_dump($jsone);
echo "<hr>";
var_dump(json_decode($jsone));//再把json字符串变为对象
echo "<hr>";
var_dump(json_decode($jsone,true));//再把json字符串变为数组
?>
<script>
// 在js中使用JSON.parse()方法用于将一个JSON字符串转换为对象。
// 经常用于ajax在php端返回使用json_encode处理的json数据,而在ajax的success方法中则需使用JSON.parse()方法将其转换为对象。
$json1='{"\u59d3\u540d":"\u5c0f\u660e","\u5e74\u9f84":30}';
console.log(JSON.parse($json1));
$json = '{"a":1,"b":2,"c":3,"d":4,"e":5}';
console.log(JSON.parse($json));
</script>
适用于现代 C++ 的 JSON。
最近提交(Master分支:3 个月前 )
f06604fc
* :page_facing_up: bump the copyright years
Signed-off-by: Niels Lohmann <mail@nlohmann.me>
* :page_facing_up: bump the copyright years
Signed-off-by: Niels Lohmann <mail@nlohmann.me>
* :page_facing_up: bump the copyright years
Signed-off-by: Niels Lohmann <niels.lohmann@gmail.com>
---------
Signed-off-by: Niels Lohmann <mail@nlohmann.me>
Signed-off-by: Niels Lohmann <niels.lohmann@gmail.com> 11 小时前
d23291ba
* add a ci step for Json_Diagnostic_Positions
Signed-off-by: Harinath Nampally <harinath922@gmail.com>
* Update ci.cmake to address review comments
Signed-off-by: Harinath Nampally <harinath922@gmail.com>
* address review comment
Signed-off-by: Harinath Nampally <harinath922@gmail.com>
* fix typo in the comment
Signed-off-by: Harinath Nampally <harinath922@gmail.com>
* fix typos in ci.cmake
Signed-off-by: Harinath Nampally <harinath922@gmail.com>
* invoke the new ci step from ubuntu.yml
Signed-off-by: Harinath Nampally <harinath922@gmail.com>
* issue4561 - use diagnostic positions for exceptions
Signed-off-by: Harinath Nampally <harinath922@gmail.com>
* fix ci_test_documentation check
Signed-off-by: Harinath Nampally <harinath922@gmail.com>
* address review comments
Signed-off-by: Harinath Nampally <harinath922@gmail.com>
* fix ci check failures for unit-diagnostic-postions.cpp
Signed-off-by: Harinath Nampally <harinath922@gmail.com>
* improvements based on review comments
Signed-off-by: Harinath Nampally <harinath922@gmail.com>
* fix const correctness string
Signed-off-by: Harinath Nampally <harinath922@gmail.com>
* further refinements based on reviews
Signed-off-by: Harinath Nampally <harinath922@gmail.com>
* add one more test case for full coverage
Signed-off-by: Harinath Nampally <harinath922@gmail.com>
* ci check fix - add const
Signed-off-by: Harinath Nampally <harinath922@gmail.com>
* add unit tests for json_diagnostic_postions only
Signed-off-by: Harinath Nampally <harinath922@gmail.com>
* fix ci_test_diagnostics
Signed-off-by: Harinath Nampally <harinath922@gmail.com>
* fix ci_test_build_documentation check
Signed-off-by: Harinath Nampally <harinath922@gmail.com>
---------
Signed-off-by: Harinath Nampally <harinath922@gmail.com> 17 小时前
所有评论(0)