PHP中JSON的跨域调用

主调文件index.html

1
2
3
4
5
6
7
8
<script type="text/javascript">  
function getProfile(str) {   
    var arr = str;   
    document.getElementById('nick').innerHTML = arr.nick;   
}   
</script>  
<body><div id="nick"></div></body>  
<script type="text/javascript" src="http://www.openphp.cn/demo/profile.php"></script>

被调文件profile.php

1
2
3
4
5
6
7
8
9
10
11
12
13
<?php   
$arr = array(   
  'name' =>iconv('gb2312','utf-8','笑哈哈'),  
 
'nick' => iconv('gb2312', 'utf-8','哈哈'), 
    'contact' => array(   
        'email' => 'shenkong at qq dot com',   
        'website' => 'http://www.chinaz.com',   
    )   
);   
$json_string = json_encode($arr);   
echo "getProfile($json_string)";   
?>

显然,当index.html调用profile.php时,JSON字符串生成,并作为参数传入getProfile,然后将昵称插入到div中,这样一次跨域数据交互就完成了。

注意:当json数据值中包含中文时,记得使用PHP编码转化iconv函数进行编码转化iconv('gb2312','utf-8','笑哈哈'),将中文编码gb2312转化为utf-8。

        json_encode()函数只能接受 UTF-8 编码的数据,否者中文部分会变为NULL。

posted @   ^wxp_幸福女孩儿$  阅读(407)  评论(0编辑  收藏  举报
编辑推荐:
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 单线程的Redis速度为什么快?
· SQL Server 2025 AI相关能力初探
· 展开说说关于C#中ORM框架的用法!
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
点击右上角即可分享
微信分享提示