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>


GitHub 加速计划 / js / json
18
5
下载
适用于现代 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 小时前
Logo

旨在为数千万中国开发者提供一个无缝且高效的云端环境,以支持学习、使用和贡献开源项目。

更多推荐