深度剖析JSON協(xié)議對與PHP產(chǎn)生的種種問題
JSON協(xié)議 是一種有用的、輕量級協(xié)議,現(xiàn)在可用于 PHP V5.2,它可以輕松地實現(xiàn)從 PHP 應(yīng)用程序中提取出數(shù)據(jù),擁有了這樣的協(xié)議就更好的便于我們進行對JSON以及PHP進行學(xué)習(xí)研究了。
然后去那邊的JSON協(xié)議提醒一下. 但我不能等到官方搞了我再升級上去,對不?所以我只好手工安裝了...雖然咱們是***在sabayon上手工安裝程序,但原理應(yīng)該是一樣的對不。
1.
首先equo help...發(fā)現(xiàn)有source選項...那就來吧, 下個php原代碼.默認將會下載到ls /var/tmp/entropy/sources/dev-lang/php-5.2.8-r1/php-5.2.8.tar.bz2 php-patchset-5.2.8-r1.tar.bz2而且連patch也一并下了(雖說很自動化... 不過似乎用不到)...咱純粹就是為了裝JSON協(xié)議
2.
解壓phpcd /var/tmp/entropy/sources/dev-lang/php-5.2.8-r1/ && tar -xjf php-5.2.8.tar.bz2然后就會解壓到php-5.2.8目錄, 進去到ext/json
3.
此時假如 phpize, 然后configure/make的話會出錯,說是libtool版本不對,讓你重新aclocal/autoconf一下反正咱們也是莫名其妙,隨便就按它說的做吧...
4.aclocalautoconf./configuremake好了 cd modules, 就有了json.so ls /var/tmp/entropy/sources/dev-lang/php-5.2.8-r1/php-5.2.8/ext/json/modules/
json.la json.so我們搞 php的應(yīng)該很熟...#T#
當(dāng)然接下來就是拷貝到php的lib目錄里, 這個隨便找一下已安裝的擴展就行了,比如我的coto ext-active # locate imagick.so/usr/lib/php5/lib/php/extensions/no-debug-non-zts-20060613/imagick.so那就放到同目錄下另外搞個配置...這個搞php的應(yīng)該也很熟.
不過sabayon的配置文件結(jié)構(gòu)不一樣. 它php4/php5 and cli/apache是分開的coto ext-active # ls /etc/php/apache2-php4 apache2-php5 cli-php4 cli-php5而且啟用的擴展是放在ext-active里, 所以,假如我要apache/cli同時支持json, 那么要放兩個地方apache2-php5/ext-activecli-php5/ext-activ
JSON協(xié)議 是一種有用的、輕量級協(xié)議,現(xiàn)在可用于 PHP V5.2,它可以輕松地實現(xiàn)從 PHP 應(yīng)用程序中提取出數(shù)據(jù),并將其放入 Ajax 應(yīng)用程序的過程。相應(yīng)地,PHP 中的 JSON 同樣也是輕量級且十分有用的,只包含兩個易于使用的函數(shù)。
使用這些函數(shù),我們可以轉(zhuǎn)換和導(dǎo)出對象結(jié)構(gòu),還可以使用 json_encode() 使來自 PHP 數(shù)據(jù)庫連接的數(shù)據(jù)可用于 Ajax 應(yīng)用程序。在 Ajax 應(yīng)用程序中處理完數(shù)據(jù)后,可以將數(shù)據(jù)返回 PHP 腳本并用 json_decode() 重新創(chuàng)建可用的對象數(shù)據(jù)結(jié)構(gòu)。當(dāng)把數(shù)據(jù)返回到 PHP 后,我們可以將其存儲到數(shù)據(jù)庫中,或使用 PHP 提供的眾多選擇中的任何其他數(shù)據(jù)處理方法。