JSON運用——PHP中使用json數據格式定義字面量對象的方法


目前,在PHP中是不支持字面量命名法。

前端的小伙伴都知道,在JS中用字面量定義一個對象的方法可以如下:

var o = { 'name' : 'Tom' , 'url' : 'www.baidu.com' };
alert(o.name);

但在PHP中這么定義對象:

$o = { "name" : "Tom", "url" : "www.baidu.com"  };

則會報錯

Parse error: syntax error, unexpected '{' in D:\server\htdocs\xm\data\04_product_select.php on line 9

所以在需要用到JSON時,可以用盡量嘗試PHP的數組的形式,而少使用對象的形式,可以更簡單且直觀(目前本人的觀點,或許不夠客觀,望斧正)。再用json_enconde($arr),進行JSON格式編碼,方法如下

$arr = [
      'name' => 'Tom',
      'age'  => 20      
];
$json = json_encode($arr);

當需要定義多對象數組的時候可以寫成如下方式:

$stuArray[] = [
'name'=>'Lucy',
'age'=>30
];

$stuArray[] = [
'name'=>'Mary',
'age'=>20
];

$stuArray[] = [
'name'=>'Lily',
'age'=>32
];

 

本人在查閱阮一峰老師的博客文章在PHP語言中使用JSON時,看到阮老師所說的“javascript不支持關聯數組”(詳見下圖),自己不是很認同,但未找到資料反駁他,或反駁自己,所以在此貼出截圖,希望日后能自己解決,也希望各位能指點一二,不勝感激!

不過最后說的:json_enconde()只將索引數組(indexed array)轉換為數組格式,而將關聯數組(associative array)轉為對象格式。還是應該牢記此特性!

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM