㈠ php如何把JSON字元串轉為數組
PHP如何把JSON字元串轉為數組
在PHP中可以使用「json_decode()」函數把JSON字元串轉為數組,該函數的作用對JSON格式的字元串進行解碼,其語法為「json_decode(str,assoc)」,使用時將字元串傳入第1個參數並將第2個設置為TRUE即可。
示例代碼:
$json = '{"a"1,"b"2,"c"3,"d"4,"e"5}'var_mp(json_decode($json, true));
列印結果:
array(5) { ["a"] => int(1) ["b"] => int(2) ["c"] => int(3) ["d"] => int(4) ["e"] => int(5)}
推薦教程:《PHP教程》
㈡ php怎麼將xml轉換成數組
在處理文檔交互時,xml和json數據的處理是常見的需求。本文將簡述如何在PHP中將xml數據轉化為數組,方便重復利用。
轉換過程分為三個步驟:
對於這兩種方法,`simplexml_load_string()`適用於已有的xml字元串,而`simplexml_load_file()`則適用於從文件或網路獲取的xml數據。
按照上述步驟操作,你可以根據實際需求選擇使用以下兩種方法之一:
請注意,在使用這些函數時,務必保留引用來源:出自藏羚骸的博客,標題為"php如何將xml轉換為數組"。
㈢ PHP 闂棰 鎺ュ彈鍒頒竴涓狫SON 鍚庤漿鎹㈡垚鏁扮粍澶辮觸
鐢ㄤ綘鍥板矓鐨刯son鍋氫簡嫻嬭瘯錛
$srr = json_decode($s);
鎵撳嵃媧炲昂瀹村嚭鏉$srr鏄姝g『鐨勫晩
濡傛灉綰抽摱浣犺繖鏍峰仛涓嶈岋紝閭e氨鍏堟妸$s澶勭悊涓涓嬭瘯璇曪細
$s = str_replace("\\","",$s);$srr = json_decode($s);
㈣ 在PHP中怎麼接收post過來的JSON數據
在PHP中接收POST過來的JSON數據,通常有兩種方式。一種是直接使用file_get_contents函數獲取原始數據,然後利用json_decode將JSON字元串轉換為PHP數組或對象。例如:file_get_contents('php://input');獲取數據後,使用json_decode(file_get_contents('php://input'), true)進行解碼。另一種方式是通過$_POST超全局變數接收,這種方式需要在發送請求時設置Content-Type為application/json。例如:$_POST['data'],但這種方式並不推薦,因為$_POST通常用於接收表單數據。
下面是一個完整的示例,展示如何在PHP中處理POST過來的JSON數據:
首先,假設前端使用JavaScript發送JSON數據,代碼如下:
JavaScript代碼示例:
function sendData() {
var data = {'zhangsan':'lisi', 'age':18};
var xhr = new XMLHttpRequest();
xhr.open('POST', '/path/to/php/script', true);
xhr.setRequestHeader('Content-Type', 'application/json');
xhr.onreadystatechange = function () {
if (xhr.readyState === 4 && xhr.status === 200) {
console.log(xhr.responseText);
}
};
xhr.send(JSON.stringify(data));
}
然後在PHP中接收並處理這些數據:
PHP代碼示例:
<?php
$jsonData = file_get_contents('php://input');
$data = json_decode($jsonData, true);
echo "接收到的數據:";
print_r($data);
?>
上面的PHP代碼首先使用file_get_contents('php://input')獲取原始數據,然後通過json_decode將其轉換為PHP數組。接著,使用print_r輸出數據內容。
這種方式不僅適用於POST請求,也適用於其他HTTP方法。通過這種方式,PHP能夠靈活地處理不同來源和格式的數據,增強應用的通用性和可維護性。
㈤ php如何解析json
用json_decode函數將json字元串轉換為數組
<?php
$json = '{"multi-i1ndex-style":{"old":{"0.1":"123","0.2":"234"}}}';
echo "<pre>";
print_r(json_decode($json, true));
echo "</pre>";
㈥ PHP從mysql中取出多組數據 如何加入數組中並轉成JSON數組
首先定義一個數組,然後遍歷數據表,把相應的數據放到數組中,最後通過json_encode()轉化數組
json_encode() 函數的功能是將數值轉換成json數據存儲格式。
例如:
<?php
//定義一個數組,用於保存讀取到的數據
$array = array();
$query = mysql_query("select * from table");
//遍歷數據表
while($rows = mysql_fetch_array($query)){
//可以直接把讀取到的數據賦值給數組或者通過欄位名的形式賦值也可以
$array[] = $rows;
$array[$rows['id']] = $rows;
}
print_r($array);
//最後通過json_encode()轉化數組
echo json_encode($array);
?>
㈦ php根據json其中的一個鍵值大小重新排序
在php對json直接操作成本太高,所以應該將json先轉化為數組,對數組排序就很好弄了,具體操作如下:
//先將json轉化為數組:
$people =json_decode($people,true);
//排序方法
function my_sort($arrays,$sort_key,$sort_order=SORT_ASC,$sort_type=SORT_NUMERIC ){
if(is_array($arrays)){
foreach ($arrays as $array){
if(is_array($array)){
$key_arrays[] = $array[$sort_key];
}else{
return false;
}
}
}else{
return false;
}
array_multisort($key_arrays,$sort_order,$sort_type,$arrays);
return $arrays;
}
//測試效果
$person = array(
array('num'=>1,'sex'=>'1'),
array('num'=>2,'sex'=>'0'),
array('num'=>3,'sex'=>'1'),
array('num'=>4,'sex'=>'1'),
array('num'=>5,'sex'=>'0'),
array('num'=>6,'sex'=>'0'),
array('num'=>7,'sex'=>'0')
);
var_mp($person);
$person = my_sort($person,'num',SORT_ASC,SORT_STRING);
var_mp($person);
$person = my_sort($person,'sex');
var_mp($person);