Rumah > pembangunan bahagian belakang > tutorial php > php的json格式和js跨域调用的代码

php的json格式和js跨域调用的代码

WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB
Lepaskan: 2016-07-25 09:03:38
asal
1091 orang telah melayarinya
  1. function jsontest()

  2. {
  3. var json = [{'username':'crystal','userage':'20'},{'username':'candy','userage':'24'}];
  4. alert(json[1].username);
  5. var json2 = [['crystal','20'],['candy','24']];

  6. alert(json2[0][0]);
  7. }
复制代码

这个函数,第一个alert(json[1].username); 会提示 “candy”。 json 变量是一个数组对象。所以要采用 obj.username 这样的格式来调用。 第二个 alert(json2[0][0]); 会提示 “crystal”。 json2变量是完全的一个json格式。 json和json2变量都达到了相同的效果,但json2明显要比json精简了很多。 这是 JavaScript 的json 格式。 下面来看看php中的json格式,先看一段代码:

  1. $arr = array (

  2. array (
  3. 'catid' => '4',
  4. 'catname' => '荣荣',
  5. 'meta_title' => '荣荣博客'
  6. ),
  7. array (

  8. 'catid' => '6',
  9. 'catname' => 'climber',
  10. 'meta_title' => '攀登者',
  11. )
  12. );
  13. $jsonstr = json_encode($arr);
  14. echo $jsonstr;
复制代码

这段代码中,$arr是一个数组,我们采用 json_encode 将$arr 转换为了 json 格式 。 这段代码会输出: [{"catid":"4","catname":"\u7a0b\u7a0b","meta_title":"\u7a0b\u7a0b\u535a\u5ba2"},{"catid":"6","catname":"climber","meta_title":"\u6500\u767b\u8005"}] 这就是php对于json数据的处理。 对于json数据,php 也可以采用 json_decode()函数将json数据转换成 数组 。 比如 上述代码中,我们采用json_decode函数处理下。又会打印出 上面的数组。

  1. $jsonstr = json_encode($arr);
  2. $jsonstr = json_decode($jsonstr);
  3. print_r($jsonstr);
复制代码

接下来,看看php json数据和 js json数据是如何相互调用的。

新建文件 php_json.php:

  1. $arr = array (

  2. array (
  3. 'catid' => '4',
  4. 'catname' => '荣荣',
  5. 'meta_title' => '荣荣博客'
  6. ),
  7. array (

  8. 'catid' => '6',
  9. 'catname' => 'climber',
  10. 'meta_title' => '攀登者',
  11. )
  12. );
  13. $jsonstr = json_encode($arr);
  14. -----下面写在php区间之外-----
  15. var jsonstr=;
复制代码

备注:在php_json.php文件末尾 var jsonstr=; 这一句。 这是将json格式的数据赋值给 jsonstr 变量。 再建立一个文件 json.html:

复制代码

这样,在查看 json.html时,loadjson(jsonstr) 就会 提示 “荣荣”和“climber”。 这样也实现了js跨域调用。



Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan