JSON

ÓйØJSONÒÔ¼°JSONÔÚPHPÖеÄÓ¦ÓÃ(2)

×ÖºÅ+ ×÷ÕߣºH5Ö®¼Ò À´Ô´£ºH5Ö®¼Ò 2016-05-23 10:03 ÎÒÒªÆÀÂÛ( )

people.musicians[1].lastName = "Rachmaninov"; ÔÚ½«×Ö·û´®×ª»»Îª JavaScript ¶ÔÏóÖ®ºó£¬¾Í¿ÉÒÔÏñÕâÑùÐ޸ıäÁ¿ÖеÄÊý¾Ý¡£ ת»»»Ø×Ö·û´® µ±È»£¬Èç¹û²»ÄÜÇáËɵؽ«¶ÔÏóת»»»Ø±¾ÎÄÌáµ½µÄÎı¾¸ñʽ£¬ÄÇôËùÓÐÊý¾ÝÐ޸Ķ¼

people.musicians[1].lastName = "Rachmaninov";

ÔÚ½«×Ö·û´®×ª»»Îª JavaScript ¶ÔÏóÖ®ºó£¬¾Í¿ÉÒÔÏñÕâÑùÐ޸ıäÁ¿ÖеÄÊý¾Ý¡£

ת»»»Ø×Ö·û´®

µ±È»£¬Èç¹û²»ÄÜÇáËɵؽ«¶ÔÏóת»»»Ø±¾ÎÄÌáµ½µÄÎı¾¸ñʽ£¬ÄÇôËùÓÐÊý¾ÝÐ޸Ķ¼Ã»ÓÐÌ«´óµÄ¼ÛÖµ¡£ÔÚ JavaScript ÖÐÕâÖÖת»»Ò²ºÜ¼òµ¥£º

String newJSONtext = people.toJSONString();

ÕâÑù¾ÍÐÐÁË£¡ÏÖÔھͻñµÃÁËÒ»¸ö¿ÉÒÔÔÚÈκεط½Ê¹ÓõÄÎı¾×Ö·û´®£¬ÀýÈ磬¿ÉÒÔ½«ËüÓÃ×÷ Ajax Ó¦ÓóÌÐòÖеÄÇëÇó×Ö·û´®¡£

¸üÖØÒªµÄÊÇ£¬¿ÉÒÔ½«ÈκΠJavaScript ¶ÔÏóת»»Îª JSON Îı¾¡£²¢·ÇÖ»ÄÜ´¦ÀíÔ­À´Óà JSON ×Ö·û´®¸³ÖµµÄ±äÁ¿¡£ÎªÁ˶ÔÃûΪ myObject µÄ¶ÔÏó½øÐÐת»»£¬Ö»ÐèÖ´ÐÐÏàͬÐÎʽµÄÃüÁ

String myObjectInJSON = myObject.toJSONString();

Õâ¾ÍÊÇ JSON Ó뱾ϵÁÐÌÖÂÛµÄÆäËûÊý¾Ý¸ñʽ֮¼ä×î´óµÄ²îÒì¡£Èç¹ûʹÓà JSON£¬Ö»Ðèµ÷ÓÃÒ»¸ö¼òµ¥µÄº¯Êý£¬¾Í¿ÉÒÔ»ñµÃ¾­¹ý¸ñʽ»¯µÄÊý¾Ý£¬¿ÉÒÔÖ±½ÓʹÓÃÁË¡£¶ÔÓÚÆäËûÊý¾Ý¸ñʽ£¬ÐèÒªÔÚԭʼÊý¾ÝºÍ¸ñʽ»¯Êý¾ÝÖ®¼ä½øÐÐת»»¡£¼´Ê¹Ê¹Óà Document Object Model ÕâÑùµÄ API£¨ÌṩÁ˽«×Ô¼ºµÄÊý¾Ý½á¹¹×ª»»ÎªÎı¾µÄº¯Êý£©£¬Ò²ÐèҪѧϰÕâ¸ö API ²¢Ê¹Óà API µÄ¶ÔÏ󣬶ø²»ÊÇʹÓÃÔ­ÉúµÄ JavaScript ¶ÔÏóºÍÓï·¨¡£

×îÖÕ½áÂÛÊÇ£¬Èç¹ûÒª´¦Àí´óÁ¿ JavaScript ¶ÔÏó£¬ÄÇô JSON ¼¸ºõ¿Ï¶¨ÊÇÒ»¸öºÃÑ¡Ôñ£¬ÕâÑù¾Í¿ÉÒÔÇáËɵؽ«Êý¾Ýת»»Îª¿ÉÒÔÔÚÇëÇóÖз¢Ë͸ø·þÎñÆ÷¶Ë³ÌÐòµÄ¸ñʽ¡£

JSONÔÚPHPÖеÄÓ¦ÓÃ

»¥ÁªÍøµÄ½ñÌ죬AJAXÒѾ­²»ÊÇʲôİÉúµÄ´Ê»ãÁË¡£ËµÆðAJAX£¬¿ÉÄÜ»áÁ¢¼´ÏëÆðÒòRSS¶øÐËÆðµÄXML¡£XMLµÄ½âÎö£¬¿ÖÅÂÒѾ­²»ÊÇʲôÄÑÌâÁË£¬ÌرðÊÇ PHP5£¬´óÁ¿µÄXML½âÎöÆ÷µÄÓ¿ÏÖ£¬Èç×îÇáÁ¿¼¶µÄSimpleXML¡£²»¹ý¶ÔÓÚAJAXÀ´Ëµ£¬XMLµÄ½âÎö¸üÇãÏòÓÚǰ̨JavascriptµÄÖ§³Ö¶È¡£ ÎÒÏëËùÓнâÎö¹ýXMLµÄÈË£¬¶¼»áÒòÊ÷ºÍ½Úµã¶øÍ·´ó¡£²»¿É·ñÈÏ£¬XMLÊǺܲ»´íµÄÊý¾Ý´æ´¢·½Ê½£¬µ«ÊÇÆäÁé»îÇ¡Ç¡Ôì³ÉÁËÆä½âÎöµÄÀ§ÄÑ¡£µ±È»£¬ÕâÀïËùÖ¸µÄÀ§ÄÑ£¬ ÊÇÏà¶ÔÓÚ±¾ÎĵÄÖ÷½Ç£­£­JSON¶øÑÔ¡£
JSONΪºÎÎÎҾͲ»Öظ´¸ÅÄîÁË¡£Í¨Ë×µÄ˵£¬ËüÊÇÒ»ÖÖÊý¾ÝµÄ´æ´¢¸ñʽ£¬¾ÍÏñPHPÐòÁл¯ºóµÄ×Ö·û´®Ò»Ñù¡£ËüÊÇÒ»ÖÖÊý¾ÝÃèÊö¡£±ÈÈçÎÒÃǽ«Ò» ¸öÊý×éÐòÁл¯ºó´æ·Å£¬¾Í¿ÉÒÔºÜÈÝÒ׵ķ´ÐòÁл¯ºóÓ¦Óá£JSONÒ²ÊÇÈç´Ë£¬Ö»²»¹ýËû´î½¨µÄÊÇ¿Í»§¶ËJavascriptºÍ·þÎñ¶ËPHPµÄ½»»¥ÇÅÁº¡£ÎÒÃÇÓà PHPÉú³ÉJSONºóµÄ×Ö·û´®£¬È»ºó°ÑÕâ¸ö×Ö·û´®´«¸øǰ̨Javascript£¬Javascirpt¾Í¿ÉÒÔºÜÈÝÒ׵Ľ«Æä·´JSONÈ»ºóÓ¦Óá£ËµÍ¨Ë׵㣬 ËüÕæµÄºÜÏñÊý×é¡£
ÑÔ¹éÕý´«£¬ÈçºÎʹÓÃJSON¡£PHP5.2¿ªÊ¼ÄÚÖÃÁËJSONµÄÖ§³Ö¡£µ±È»£¬Èç¹ûµÍÓÚÕâ¸ö°æ±¾µÄ»°£¬ÄÇôÊÐÃæÉÏÓкܶàPHP°æ±¾µÄʵÏÖ£¬Ëæ ±ãÏÂÒ»¸öÓþÍOKÀ²¡£ÏÖÔÚÖ÷ÒªÊÇ˵˵PHPÄÚÖÃÖ§³ÖµÄJSON¡£ºÜ¼òµ¥£¬Á½¸öº¯Êý£ºjson_encodeºÍjson_decode£¨¸úÐòÁл¯ºÜÏñÀ²£©¡£ Ò»¸ö±àÂ룬һ¸ö½âÂë¡£ÏÈ¿´¿´±àÂëµÄʹÓãº


<?php
$arr = array(
'name' => '³ÂÒãöÎ',
'nick' => 'Éî¿Õ',
'contact' => array(
'email' => 'shenkong at qq dot com',
'website' => 'http://www.chenyixin.com',
)
);
$json_string = json_encode($arr);
echo $json_string;
?>
ºÜ¼òµ¥µÄ½«Ò»¸öÊý×éJSONÁË¡£ÐèÒªÖ¸³öµÄÊÇ£¬ÔÚ·ÇUTF-8±àÂëÏ£¬ÖÐÎÄ×Ö·û½«²»¿É±»encode£¬½á¹û»á³öÀ´¿ÕÖµ£¬ËùÒÔ£¬Èç¹ûÄãʹÓà gb2312±àдPHP´úÂ룬ÄÇô¾ÍÐèÒª½«°üº¬ÖÐÎĵÄÄÚÈÝʹÓÃiconv»òÕßmbתΪUTF-8ÔÙ½øÐÐjson_encode£¬ÉÏÃæÊä³ö½á¹ûÈçÏ£º

{"name":"\u9648\u6bc5\u946b","nick":"\u6df1\u7a7a","contact":{"email":"shenkong at qq dot com","website":"http:\/\/www.chenyixin.com"}}
ÎÒ¶¼ËµÁ˺ÍÐòÁл¯ºÜÏñ£¬Ä㻹²»ÐÅ¡£±àÂëºó¾ÍÒª½âÂ룬PHPÌṩÁËÏàÓ¦µÄº¯Êýjson_decode£¬json_decodeÖ´Ðк󣬽«»áµÃµ½Ò»¸ö¶ÔÏ󣬲Ù×÷ÈçÏ£º

<?php
$arr = array(
'name' => '³ÂÒãöÎ',
'nick' => 'Éî¿Õ',
'contact' => array(
'email' => 'shenkong at qq dot com',
'website' => 'http://www.chenyixin.com',
)
);
$json_string = json_encode($arr);
$obj = json_decode($json_string);
print_r($obj);
?>
·ÃÎʶÔÏóÄÚµÄÊôÐÔ»á°É£¿$obj->name£¬ÕâÑù×ӵģ¬µ±È»£¬Ò²¿ÉÒÔ°ÑËüתλÊý×飬·½±ãµ÷ÓÃÀ²£º

$json_string = json_encode($arr);
$obj = json_decode($json_string);
$arr = (array) $obj;
print_r($arr);
PHPתÀ´×ªÈ¥µÄÓÃ;²»ÊÇÌرð´ó£¬³ýÁË»º´æÉú³É£¬¸Ð¾õ»¹²»ÈçÖ±½Ó´æÊý×éÄØ£¬²»¹ý£¬µ±ÄãºÍǰ̨½»»¥µÄʱºò£¬ËüµÄ×÷ÓþͳöÀ´¿©£¬ÏÂÃæ¿´¿´ÎÒÔõôÓÃJavascriptÀ´Ê¹ÓÃÕâ¶Î×Ö·û£º

<script type="text/javascript">
var arr = {"name":"\u9648\u6bc5\u946b","nick":"\u6df1\u7a7a","contact":{"email":"shenkong at qq dot com","website":"http:\/\/www.chenyixin.com"}};
alert(arr.name)
</script>
ÉÏÃæÖУ¬Ö±½Ó½«Õâ¸ö×Ö·û´®¸³¸øÒ»¸ö±äÁ¿£¬Ëü¾Í±ä³ÉÒ»¸öJavascriptÊý×éÁË£¨×¨Òµ»¯ÊõÓïÓ¦¸Ã²»½ÐÊý×飬²»¹ýÓÉÓÚPHPµÄÏ°¹ßÎÊÌ⣬ÎÒ¾Í Ò»Ö±½ÐÊý×éºÃÁË£¬·½±ãÀí½â£©¡£ÕâÑù£¬¿ÉÒԺܷ½±ãµÄ¶Ôarr½øÐбéÀú»òÕßÈÎÒâ×öÄãÏë×öµÄÊÂÇéÁË¡£Ð´µ½ÕâÀºÃÏñ¶¼Ã»Ìáµ½AJAXŶ£¿ÊÇŶ£¬ÁªÏëһϣ¬Èç¹û·þ Îñ¶Ë·µ»ØµÄresponseTextÓÃJSON¹ýµÄ×Ö·û´®´úÌæXMLµÄ»°£¬Ç°Ì¨Javascript´¦ÀíÆðÀ´ÊDz»ÊǺܷ½±ãÄØ£¿¹·Æ¤¸àÒ©¾ÍÊÇÕâÑùÓõġ£
Æäʵдµ½ÕâÀ³ýÁËÊý¾ÝµÄ´æ´¢¸ñʽ²»Ì«Ò»ÑùÍ⣬JSONºÍXMLҲûʲô̫´óÇø±ðŶ£¬²»¹ýÏÂÃæÎÒ˵µÄÒ»µã¡£ËäÈ»ºÍXMLû¶à´ó¹Øϵ£¬²»¹ý£¬ ¿ÉÒÔ˵Ã÷JSON¸ü´ó·¶Î§µÄÓ¦Óã¬ÄǾÍÊÇ£¬¿çÓòµÄÊý¾Ýµ÷Óá£ÓÉÓÚ°²È«ÐÔÎÊÌ⣬AJAX²»Ö§³Ö¿çÓòµ÷Óã¬ÕâÑùÒªµ÷Óò»Í¬ÓòÃûϵÄÊý¾Ý£¬ºÜÂ鷳Ŷ£¬ËäÈ»Óнâ¾ö ·½°¸£¨stoneÔÚËûµÄ½²×ùÉÏÌáµ½¹ýÁË´úÀí°¡Ê²Ã´µÄËäÈ»Ìý²»¶®µ«ÊÇÖªµÀÄܽâ¾ö£©¡£ÎÒдÁ½¸öÎļþ£¬×ãÒÔչʾ¿çÓòµ÷ÓÃÁË¡£
Ö÷µ÷Îļþindex.html
<script type="text/javascript">
function getProfile(str) {
var arr = str;
document.getElementById('nick').innerHTML = arr.nick;
}
</script>
<body><div></div></body>
<script type="text/javascript" src="http://www.openphp.cn/demo/profile.php"></script>
±»µ÷Îļþprofile.php
<?php
$arr = array(
'name' => '³ÂÒãöÎ',
'nick' => 'Éî¿Õ',
'contact' => array(
'email' => 'shenkong at qq dot com',
'website' => 'http://www.chenyixin.com',
)
);
$json_string = json_encode($arr);
echo "getProfile($json_string)";
?>
ºÜÏÔÈ»£¬µ±index.htmlµ÷ÓÃprofile.phpʱ£¬JSON×Ö·û´®Éú³É£¬²¢×÷Ϊ²ÎÊý´«ÈëgetProfile£¬È»ºó½«êdzƲåÈëµ½divÖУ¬ÕâÑùÒ»´Î¿çÓòÊý¾Ý½»»¥¾ÍÍê³ÉÁË£¬ÊDz»ÊÇÌرð¼òµ¥¡£¼ÈÈ»JSONÕâô¼òµ¥Ò×ÓöøÇÒºÃÓ㬻¹µÈʲôÄØ£¿^_^

·þÎñÆ÷¶ËµÄ JSON

¡¡

1.±¾Õ¾×ñÑ­ÐÐÒµ¹æ·¶£¬ÈκÎתÔصĸå¼þ¶¼»áÃ÷È·±ê×¢×÷ÕߺÍÀ´Ô´£»2.±¾Õ¾µÄÔ­´´ÎÄÕ£¬ÇëתÔØʱÎñ±Ø×¢Ã÷ÎÄÕÂ×÷ÕߺÍÀ´Ô´£¬²»×ðÖØÔ­´´µÄÐÐΪÎÒÃǽ«×·¾¿ÔðÈΣ»3.×÷ÕßͶ¸å¿ÉÄܻᾭÎÒÃDZ༭Ð޸Ļò²¹³ä¡£

Ïà¹ØÎÄÕÂ
  • JSON¹¤¾ßѧϰ¼Ç¼FastJSON

    JSON¹¤¾ßѧϰ¼Ç¼FastJSON

    2016-05-24 12:03

  • C# web api·µ»ØÀàÐÍÉèÖÃΪjsonµÄÁ½ÖÖ·½·¨

    C# web api·µ»ØÀàÐÍÉèÖÃΪjsonµÄÁ½ÖÖ·½·¨

    2016-05-20 18:00

  • Èý¿îJson²é¿´Ð¡¹¤¾ß

    Èý¿îJson²é¿´Ð¡¹¤¾ß

    2016-05-20 17:00

  • jsonc¿âµÄ°²×°ÒÔ¼°¼òµ¥Ê¹ÓÃ

    jsonc¿âµÄ°²×°ÒÔ¼°¼òµ¥Ê¹ÓÃ

    2016-05-15 13:03

ÍøÓѵãÆÀ
»