手机
当前位置:查字典教程网 >编程开发 >php教程 >PHP json格式和js json格式 js跨域调用实现代码
PHP json格式和js json格式 js跨域调用实现代码
摘要:先看一个js函数复制代码代码如下:functionjsontest(){varjson=[{'username':'crystal','us...

先看一个js函数

复制代码 代码如下:

function jsontest()

{

var json = [{'username':'crystal','userage':'20'},{'username':'candy','userage':'24'}];

alert(json[1].username);

var json2 = [['crystal','20'],['candy','24']];

alert(json2[0][0]);

}

这个函数,第一个alert(json[1].username); 会提示 “candy”。 json 变量是一个数组对象。所以要采用 obj.username 这样的格式来调用。

第二个 alert(json2[0][0]); 会提示 “crystal”。 json2变量是完全的一个json格式。 json和json2变量都达到了相同的效果,但json2明显要比json精简了很多。

这是 JavaScript 的json 格式。

下面我们来看看php中的json格式。

还是先看一段代码

复制代码 代码如下:

$arr = array (

array (

'catid' => '4',

'catname' => '程程',

'meta_title' => '程程博客'

),

array (

'catid' => '6',

'catname' => 'climber',

'meta_title' => '攀登者',

)

);

$jsonstr = json_encode($arr);

echo $jsonstr;

这段代码中,$arr是一个数组,我们采用 json_encode 将$arr 转换为了 json 格式 。

这段代码会输出:

[{"catid":"4","catname":"u7a0bu7a0b","meta_title":"u7a0bu7a0bu535au5ba2"},{"catid":"6","catname":"climber","meta_title":"u6500u767bu8005"}]

这就是php对于json数据的处理。

对于json数据,php 也可以采用 json_decode()函数将json数据转换成 数组 。

比如 上述代码中,我们采用json_decode函数处理下。又会打印出 上面的数组。

$jsonstr = json_encode($arr);

$jsonstr = json_decode($jsonstr);

print_r($jsonstr);

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

我们新建一个 php_json.php 文件

代码如下:

复制代码 代码如下:

$arr = array (

array (

'catid' => '4',

'catname' => '程程',

'meta_title' => '程程博客'

),

array (

'catid' => '6',

'catname' => 'climber',

'meta_title' => '攀登者',

)

);

$jsonstr = json_encode($arr);

-----下面写在php区间之外-----

var jsonstr=< ? = $jsonstr ? >;

PS:在php_json.php文件末尾 var jsonstr=< ? = $jsonstr ? >; 这一句。 这是将json格式的数据赋值给 jsonstr 变量。

我们再建立一个 json.html 文件

代码如下:

复制代码 代码如下:

<SCRIPT type=text/javascript src="php_json.php"></SCRIPT><SCRIPT language=javascript type=text/javascript>

function loadjson(_json)

{

if(_json)

{

for(var i=0;i<_json.length;i++)

{

alert(_json[i].catname);

}

}

}

loadjson(jsonstr)

</SCRIPT>

这样,我们在查看 json.html的时候,loadjson(jsonstr) 就会 提示 “程程”和“climber”

这样也实现了js跨域调用。

【PHP json格式和js json格式 js跨域调用实现代码】相关文章:

typecho插件编写教程(六):调用接口

PHP 和 MySQL 基础教程(三)

PHP中显示格式化的用户输入

php使用cookie实现记住用户名和密码实现代码

PHP curl伪造IP地址和header信息代码实例

vBulletin Forum 2.3.xx SQL Injection

PHP 和 MySQL 基础教程(四)

Windows下PHP5和Apache的安装与配置

PHP怎样调用MSSQL的存储过程

PHP cURL初始化和执行方法入门级代码

精品推荐
分类导航