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 等等。