phpjson数据
❶ php如何发送和接收JSON数据
对于json,PHP有对应的方法进行操作。
一般而言,json会以字符串形式传给PHP脚本,一般都是放在$_POST里面,
14
<?php
// 接收
$json_parameter = $_POST['json_str'];
// 处理, 变成数组
$array = json_decode($json_parameter);
// PHP 把数组数据变成json格式字符串,发给页面
$demo = array(
'key' => 'value',
'key2' => 'value2'
);
$demo_json = json_encode($demo); // 格式是{"key":"value","key2":"value2"}
echo $demo_json;
❷ 请教PHP怎么修改json数据
直接上代码:
$jsonData='[{"Name":"小明","Age":20},{"Name":"小明","Age":20}]';
$jsonArray=json_decode($jsonData,$isArray);
foreach($jsonArrayas$item){
$item['Name']='xxx';//修改数据
}
//输出修改后的数据
echojson_encode($jsonArray);
❸ PHP 如何读取如下的JSON数据
php内置json编码和解析函数
$response=file_get_contents('https://apis.map.qq.com/ws/location/v1/ip?ip=120.239.177.236&key=申请的QQ地图密钥');
//把字符串解析为数组,第二个参数默认false,解析为对象
$json=json_decode($response,true);
echo$json['location']['lng'];
echo$json['location']['lat'];
//把数组编码成字符串输出,第二个参数为不编码unicode字符(汉字就属于unicode,不编码则原样显示,编码后为uxxxx的格式)
echojson_encode($json,JSON_UNESCAPED_UNICODE);
❹ php提取json数据
$dataJson = "数据"; // 提供数据
$data = json_decode($dataJson); // 数据按json解析成php数组
$minuteArr = $data['minute']; // 从数组中获取minute数据
此时$minuteArr中存放的就是你要的数据,但数组下标(键)是从0开始,如需要从1开始,则遍历$minuteArr修改下标(键) 或 使用php数组函数进行快速重构。
注:你这问题是还没入门的初学者问的问题,建议还是多看看书!...
❺ php的json字符串转化为json数据
你这个不就是json字符串么?
php里面有2个函数:json_encode和json_decode
查一下手册就可以解决了。
json_decode($str,true)可以得到数组,第二参数不加默认为false,得到对象。
❻ php如何获取json中数据
可以用$obj=>key 的方式直接读取 也可以先转换为数组 用遍历数组的方法读取
<?php
$json='{"a":100,"b":200,"c":300,"d":400,"e":500}';
//首先将json字符串转换成关联数组
$arr=json_decode($json,true);
//然后循环读取数据
foreach($arras$item){
echo$item;
echo"<br/>";
}
?>
运行结果:
100
200
300
400
500
❼ php转换成json数据格式
json和php数组 格式的互相转换,参考如下:
$php_json = json_encode($json_arr); //把php数组格式转换成 json 格式的数据
echo $php_json;
$php_json = json_decode($php_json); //再把json格式的数据转换成php数组
print_r($php_json);
json数组
$json = '[{"id":"22","name":"33","descn":"44"}]'; //json格式的数组转换成 php的数组
$arr = (Array)json_decode($json);
echo $arr[0]->id; //用对象的方式访问
❽ php如何读取json中的数据
先使用json_decode()函数解析成数组,在用变量等于解析出来的数组
$test=json_decode("json数据");
输出 echo $test->key;
❾ 浅谈PHP中JSON数据操作
JSON,全称是JavaScript
Object
Notation。它是基于JavaScript编程语言ECMA-262
3rd
Edition-December
1999标准的一种轻量级的数据交换格式,主要用于跟服务器进行交换数据。跟XML相类似,它独立语言,在跨平台数据传输上有很大的优势
新建文件json.php,先做encode操作:
//encode
//生成JSON格式数据
$arr
=
array(1,2,3,4,5,6,7,8,9,'Hello','PHP');
echo
json_encode($arr);//json_encode:把一个对象转换成json格式数据
得到的结果是[1,2,3,4,5,6,7,8,9,"Hello","PHP"]
再来做decode操作:
//decode
解码
$jsonStr
=
'{"h":"Hello","w":"World","0":[3,2,1]}';
$obj
=
json_decode($jsonStr);
echo
$obj->h;//使用成员访问的方式就可以得到结果
知道简单的使用方法后,可以尝试着抓API数据,比如天气...
以上所述就是本文的全部内容了,希望大家能够喜欢。
❿ php怎么接收json数据格式
PHP接收JSON格式的数据
在API服务中,目前流行采用json形式来交互。
给前端调用的接口输出Json数据,这个比较简单,只需要组织好数据,用json_encode($array) 转化一下,前端就得到json格式的数据。
接收前端提交的json数据稍微复杂一点,原因是:PHP默认识别的数据类型是application/x-www.form-urlencoded标准的数据类型。因此,对型如text/xml 或者 soap 或者 application/octet-stream 和application/json格式之类的内容无法解析,如果用$_POST数组来接收就会失败!
此时可以使用$GLOBALS['HTTP_RAW_POST_DATA'] 或 file_get_contents('php://input') 来获取提交的数据
查看手册,可以发现$GLOBALS['HTTP_RAW_POST_DATA'] 和 $_POST的区别:
$_POST:通过 HTTP POST 方法传递的变量组成的数组,是自动全局变量。
$GLOBALS['HTTP_RAW_POST_DATA'] :总是产生 $HTTP_RAW_POST_DATA 变量包含有原始的 POST 数据。此变量仅在碰到未识别 MIME 类型的数据时产生。$HTTP_RAW_POST_DATA 对于 enctype="multipart/form-data" 表单数据不可用。也就是说基本上$GLOBALS['HTTP_RAW_POST_DATA'] 和 $_POST是一样的。但是如果post过来的数据不是PHP能够识别的,你可以用 $GLOBALS['HTTP_RAW_POST_DATA']来接收,比如 text/xml 或者 soap 等等。