使用JSON实现数据的跨域传输的php代码


Posted in PHP onDecember 20, 2011

后台profile.php代码:

<?php 
$arr = array( 
'firstname' => iconv('gb2312', 'utf-8', '非诚'), 
'lastname' => iconv('gb2312', 'utf-8', '勿扰'), 
'contact' => array( 
'email' =>'fcwr@3water.com', 
'website' =>'https://3water.com', 
) 
); 
//将一个数组JSON 
$json_string = json_encode($arr); 
//此处注意,双引号能对里面的变量当变量进行处理,单引号则不会 
echo "getProfile($json_string)"; 
?>

需要指出的是,在非UTF-8编码下,中文字符将不可被encode,结果会出来空值,所以,如果你使用 gb2312编写PHP代码,那么就需要将包含中文的内容使用iconv或者mb转为UTF-8再进行json_encode。
前台index.html代码:
<script type="text/javascript"> 
function getProfile(str) { 
var arr = str; 
document.getElementById("firstname").innerHTML = arr.firstname; 
} 
</script> 
<body> 
<div id="firstname"></div> 
</body> 
<!-- 使用JSON实现跨域的数据调用,此处如将“profile.php”改为“http://另外一个域名/profile.php”就更能看出跨域了--> 
<script type="text/javascript" src="profile.php"></script>

将JSON格式的数据直接赋值给javascript中的变量,就变成数组了,接下来操作起来就会非常的方便,此处如果使用XML做为数据传输,后续操作就不方便喽。
很显然,当index.html调用profile.php时,JSON字符串生成,并作为参数传入getProfile,然后将昵称插入到div 中,这样一次跨域数据交互就完成了
调用index.html
输出:非诚
PHP 相关文章推荐
PHP 根据IP地址控制访问的代码
Apr 22 PHP
解析htaccess伪静态的规则
Jun 18 PHP
使用gd库实现php服务端图片裁剪和生成缩略图功能分享
Dec 25 PHP
Fatal error: session_start(): Failed to initialize storage module: files问题解决方法
May 04 PHP
php打印输出棋盘的实现方法
Dec 23 PHP
PHP Curl模拟登录微信公众平台、新浪微博实例代码
Jan 28 PHP
CI框架文件上传类及图像处理类用法分析
May 18 PHP
php微信公众平台示例代码分析(二)
Dec 06 PHP
laravel5.4利用163邮箱发送邮件的步骤详解
Sep 22 PHP
php7下的filesize函数
Sep 30 PHP
Laravel 不同生产环境服务器的判断实践
Oct 15 PHP
PHP的Trait机制原理与用法分析
Oct 18 PHP
php自动注册登录验证机制实现代码
Dec 20 #PHP
php4与php5的区别小结(配置异同)
Dec 20 #PHP
利用ThinkPHP内置的ThinkAjax实现异步传输技术的实现方法
Dec 19 #PHP
如何使用Linux的Crontab定时执行PHP脚本的方法
Dec 19 #PHP
PHP定时执行计划任务的多种方法小结
Dec 19 #PHP
在WINDOWS中设置计划任务执行PHP文件的方法
Dec 19 #PHP
php安全配置 如何配置使其更安全
Dec 16 #PHP
You might like
PHP面向对象分析设计的经验原则
2008/09/20 PHP
php.ini中date.timezone设置分析
2011/07/29 PHP
php实现rc4加密算法代码
2012/04/25 PHP
Yii开启片段缓存的方法
2016/03/28 PHP
jquery 可排列的表实现代码
2009/11/13 Javascript
asp.net+jquery滚动滚动条加载数据的下拉控件
2010/06/25 Javascript
Extjs4中的分页应用结合前后台
2013/12/13 Javascript
JavaScript原型链示例分享
2014/01/26 Javascript
bootstrap改变按钮加载状态
2014/12/01 Javascript
浅谈JavaScript中null和undefined
2015/07/09 Javascript
js实现遍历含有input的table实例
2015/12/07 Javascript
基于Phantomjs生成PDF的实现方法
2016/11/07 Javascript
jquery精度计算代码 jquery指定精确小数位
2017/02/06 Javascript
JavaScript 上传文件(psd,压缩包等),图片,视频的实现方法
2017/06/19 Javascript
Angular+Bootstrap+Spring Boot实现分页功能实例代码
2017/07/21 Javascript
Vue组件基础用法详解
2020/02/05 Javascript
JQuery通过键盘控制键盘按下与松开触发事件
2020/08/07 jQuery
vue项目中播放rtmp视频文件流的方法
2020/09/17 Javascript
ES6的循环与可迭代对象示例详解
2021/01/31 Javascript
[01:06]DOTA2亚洲邀请赛专属珍藏-荧煌之礼
2017/03/24 DOTA
Linux下使用python调用top命令获得CPU利用率
2015/03/10 Python
python3实现163邮箱SMTP发送邮件
2018/05/22 Python
详解python 注释、变量、类型
2018/08/10 Python
pyqt5 从本地选择图片 并显示在label上的实例
2019/06/13 Python
深入了解如何基于Python读写Kafka
2019/12/31 Python
python 基于opencv实现高斯平滑
2020/12/18 Python
python爬虫破解字体加密案例详解
2021/03/02 Python
美国NBA官方商店:NBA Store
2019/04/12 全球购物
什么是Web Service?
2012/07/25 面试题
运动会加油口号
2014/06/07 职场文书
大连星海广场导游词
2015/02/10 职场文书
2015年乡镇党务公开工作总结
2015/05/19 职场文书
2016秋季幼儿园开学寄语
2015/12/03 职场文书
2016个人先进事迹材料范文
2016/03/01 职场文书
Pytest实现setup和teardown的详细使用详解
2021/04/17 Python
Kubernetes部署实例并配置Deployment、网络映射、副本集
2022/04/01 Servers