JSON 解析與運用 for PHP
JSON格式在Javascript裡算是標準的資料格式,但在其它語言就不算是了,所以各家server端的程式語言就要去解析來配合了,目前剛好會先用PHP進行與jquery的測試,所以先對PHP對JSON解析進行瞭解。
目前PHP在5.2版之後已經有內建支援JSON的轉換函式,看來也是因為ajax當道,所以php 直接內建了..^^
在5.2版的PHP 可以使用 json_encode及json_decode 進行轉換成PHP物件陣列,用法如下:
$test=array(
“x” => 1,
“y” => 2,
“str” => “test string”,
“a” => array (
“array value 1”,
“array value 2”,
3
}
);
$jsonstr = json_encode($test);
$jsonstr內容則為
{
“x”:1,
“y”:2,
“str”:”test string”,
“a”:[
“array value 1”,
“array value 2”,
3
]
}
目前json_encode對中文字只能用utf8,要特別注意這點。最後取回時在Javascript 執行eval()即可使用了
那再來如果使用的PHP版本非5.2之後,可以考慮其它人家寫好的套件,像PHP-json 算是library 如果不是自己架設的web server,可能就很不方便了,這裡有一篇網誌 石頭閒語:PHP::JSON
in PHP – 樂多日誌 有在介紹請自行參考
。除此之外,也可以使用Services_JSON (BSD license),或者是Zend-Json (New BSD license)。不過Zend的Framework,在官網顯示PHP版本不能低於5.1.4,建議使用5.2.3以上的版本,所以看來幫助不大。
如果是php4的,可以參考以下兩篇,都有合適的lincude 函式庫可以使用:
相關參考資料:
http://nervstudio.blogspot.com/2007/02/ajaj-php-json-javascript.html
近期留言