- 1、php怎麼json數據轉化為字符串
- 2、php轉換成json數據格式
- 3、php對象轉json字符串時如何排序
- 4、php如何將json對象轉字符串
- 5、如何把對象轉化為字符串 php
- 6、PHP怎麼把多個數組揉成一個json字符串?
json數據本身就是一個字符串。
如果說轉換,只是說,php數組和json字符串之間的轉化,在這裡給你介紹php操作json的兩個函數
json_decode() 對 JSON 格式的字符串進行編碼
說明
mixed json_decode ( string $json [, bool $assoc ] )
接受一個 JSON 格式的字符串並且把它轉換為 PHP 變量
參數
json
待解碼的 json string 格式的字符串。
assoc
當該參數為 TRUE 時,將返回 array 而非 object 。
返回值
Returns an object or if the optional assoc parameter is TRUE, an associative array is instead returned.
json_encode — 對變量進行 JSON 編碼
Report a bug 說明
string json_encode ( mixed $value [, int $options = 0 ] )
返回 value 值的 JSON 形式
Report a bug 參數
value
待編碼的 value ,除了resource 類型之外,可以為任何數據類型
該函數只能接受 UTF-8 編碼的數據
其實就是把這3個結果並成一個數組,再轉就是了
例如,
$res1=mysql_query($sql1);
$res2=mysql_query($sql2);
$res3=mysql_query($sql3);
定義一個新的數組 $a = array();
將3個結果壓入這個新的數組
array_push($a,$res1);
array_push($a,$res2);
array_push($a,$res3);
最後轉義輸出
echo json_encode($a);
LZ遇到問題不要氣餒呀
建議把json字符串轉為關聯數組再來處理和排序:
$str='{“1″:1,”3”:2}’;
$arr=json_decode($str,true);
$arr[“2”]=3;
ksort($arr,1);
$str=json_encode($arr);
print_r($str);
如果一定要按對象來處理,就這樣:
$str='{“1″:1,”3”:2}’;
$obj=json_decode($str);
$k=”2″;
$obj-$k=3;
$arr=json_decode(json_encode($obj),true);
ksort($arr,1);
$str=json_encode($arr);
print_r($str);
json是JavaScript的一種數據對象,php中所謂的json,其實就是有着json這種特殊格式的字符串,它並不是對象,可以通過json_decode函數把這個字符串轉成對象或數組。說白了就是php中的json就是字符串,你還要怎麼轉為字符串?
需要準備的材料分別是:電腦、php編輯器、瀏覽器。
1、首先,打開php編輯器,新建php文件,例如:index.php,填充問題基礎代碼。
2、在index.php中,輸入代碼:echo json_encode($a);。
3、瀏覽器運行index.php頁面,此時A對象被轉化為字符串後被打印出來了。
?php
//創建數組
$array = array(
“name” = “Hza”,
“age” = 21
);
//數組轉化為json格式
echo json_encode($array);
echo “br /”;
//創建類
class Student {
public $name;
public $age;
//初始化是賦值
function __construct($name, $age)
{
$this-name = $name;
$this-age = $age;
}
//魔術方法 把對象轉換成字符串格式 以備使用json_encode()函數
function __tostring() {
//對象轉化為json格式
return json_encode($this,JSON_FORCE_OBJECT);
}
}
//實例化對象
$person1 = new Student(‘Hza’, 20);
//輸出json格式
echo $person1;
?
擴展資料:
json六個構造字符:
begin-array = ws %x5B ws ; [ 左方括號
begin-object = ws %x7B ws ; { 左大括號
end-array = ws %x5D ws ; ] 右方括號
end-object = ws %x7D ws ; } 右大括號
name-separator = ws %x3A ws ; : 冒號
value-separator = ws %x2C ws ; , 逗號
在這六個構造字符的前或後允許存在無意義的空白符(ws):
ws = *(%x20 /; 空間
%x09 /; 水平標籤
%x0A /; 換行或換行
%x0D); 回程
原創文章,作者:DPKMX,如若轉載,請註明出處:https://www.506064.com/zh-hant/n/126173.html