php传json数据 php json数据

PHP JSON格式数据交互实例代码详解在PHP中解析JSON主要用到json_encode和json_decode两个PHP
JSON函数php传json数据,比PHP解析XML方便很多,下面详细介绍下PHP
JSON的使用 。
JSON基础介绍
JSON(JavaScript
Object
Notation)
是一种轻量级的数据交换格式 。
JSON主要有两种结构:
“名称/值”对的集合,在PHP中可以理解为关联数组
(associative
array) 。
值的有序列表(An
ordered
list
of
values) 。在PHP中可以理解为普通数组(array) 。
对象是一个无序的“‘名称/值'对”集合 。一个对象以“{”(左括号)开始,“}”(右括号)结束 。每个“名称”后跟一个“:”(冒号)php传json数据;“‘名称/值'
对”之间使用“,”(逗号)分隔 。
数组是值(value)的有序集合 。一个数组以“[”(左中括号)开始,“]”(右中括号)结束 。值之间使用“,”(逗号)分隔 。值(value)可以是双引号括起来的字符串(string)、数值(number)、true、false、
null、对象(object)或者数组(array) 。这些结构可以嵌套 。
php传json数据我目前对JSON的理解更偏向于数组,类似于PHP中的关联数组,你可以将PHP数组转换为JSON格式 。
更多JSON的介绍请参考JSON官网和IBM关于JSON的介绍
PHP
JSON解析实例
PHP5.2开始已经将JSON作为PHP扩展的一部分 , 所以并不需要另外安装JSON 。另外为php传json数据了保证下面的PHP
JSON实例不出现中文乱码,请保证你的编码格式为UTF8 。
JSON是Javascript的一部分,首先我们看下Javascript中如何定义JSON
复制代码
代码如下:
var
json_obj
=
{'WebName':'PHP网站开发教程网'};
alert(json_obj.WebName);
var
json_arr
=[{'WebName':'PHP网站开发教程网','WebSite':''},{'ArtTitle':'PHP
JSON实例讲解'}]
alert(json_arr[1].ArtTitle);
var
php_json
=
[['PHP网站开发教程网',''],['文章标题','PHP
JSON实例讲解']];
alert(php_json[1][0]);
在这段JSON实例代码中我构建了所有的JSON形式,
第1行,定义了JSON以对象形式存在
第4行,定义了JSON以数组形式存在,嵌套了JSON对象,所以有点类似于PHP的关联数组 , 其实仍然是对象 。
第7行,定了JSON以普通数组形式存在 。
注意:由于Javascript是区分大小写的,所以访问JSON关联数组对象时注意key的大小写问题 。
PHP与JSON格式数据交互时,第一步需要将PHP数组转换为JSON格式的数据,可使用PHP5自带的json_encode函数,当PHP解析传递过来的JSON格式数据时需要使用json_decode函数进行解析转换为PHP数组,PHP转换并解析JSON数据的实例代码如下
复制代码
代码如下:
?php
$json_arr
=
array('WebName'='PHP网站开发教程网','WebSite'='');
$php_json
=
json_encode($json_arr);
echo
$php_json;
$php_json
=
json_decode($php_json);
print_r($php_json);
?
说明:这里通过PHP定义了关联数组,然后通过json_encode转换为JSON格式的数据,通过echo语句可以看到转换后的JSON对象 , 通过PHP
JSON解析函数json_decode可以将JSON格式的数据解析为PHP的关联数组 。如果编码不正确 , JSON中文会出现乱码 。如果你使用Editplus调试PHP,请注意保存文件时编码将ANSI改为UTF8 。
最后我们来看下完整的PHP
JSON交互实例
复制代码
代码如下:
?php
$json_arr
=
array('WebName'='PHP网站开发教程网','WebSite'='');
$php_json
=
json_encode($json_arr);
?
script
type="text/javascript"
var
php_json
=
?=$php_json?;
/script
script
type="text/javascript"
function
php_json_dis(php_json)
{
alert(php_json.WebName);
alert(php_json.WebSite);
}
php_json_dis(php_json);
/script
至此,PHP通过json_encode和json_decode函数对JSON格式数据进行转换和解析的实例就介绍完了 。
PHP json数据写入到json文件,读取json文件// 生成一个PHP数组
$data = https://www.04ip.com/post/array();
$data['name'] = 'admin';
$data['pwd'] = '123456';
// 把PHP数组转成JSON字符串
$json_string = json_encode($data);
// 写入文件
file_put_contents('user.json', $json_string);
// 从文件中读取数据到PHP变量
$json_string = file_get_contents('user.json');
// 把JSON字符串转成PHP数组
$data = https://www.04ip.com/post/json_decode($json_string, true);
// 显示出来看看
var_dump($data)
请教:php如何实现json的传值代码都基于jquery
jsonp可以跨域 例如php传json数据:
$.ajax({
url:'example.php',
type:'GET',
dataType:'jsonp',
jsonp:'callback',
success:function(data){
/*比如example.php是这样?php
$callback=$_REQUEST['callback'];
echo $callback.'('.json_encode(array('id'=1)).')';?
这里php传json数据的data就是{"id":1}
*/
}
});
不跨域ajax就可以例如:
$.ajax({
url:'example.php',
type:'GET',
dataType:'json',
success:function(data){
//这个data就是返回的json即example.php输出的json
比如example.php是这样?php echo json_encode(array('id'=1));?
返回的json 就是 {"id":1}
}
});
PHP如何通过Post请求发送Json数据首先要把数据转换成json格式,再通过curl方法调用接口并传参数
代码如下:
$keyword = urlencode($_POST['keyword']);
$parameters = json_encode(array('keyWord'=$keyword,'areaCode'='*'));
$post_data['appToken'] = "323ds7674354fds32fdsda60173";//随便写的
$post_data['parameters'] = $parameters;
$url = '';//随便写的
$ch = curl_init();
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_POSTFIELDS, $post_data);//用post方法传送参数
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
$response = curl_exec($ch);
curl_close($ch);
之后就返回数据即可 。
php通过post传输的json数据能采集吗不能 。所谓的json数据格式是http请求中的body是一个json格式的字符串,这个用$_POST就获取不到了 。PHP是一种易于学习和使用的服务器端脚本语言 。只需要很少的编程知识你就能使用PHP建立一个真正交互的WEB站点 。
【php传json数据 php json数据】php传json数据的介绍就聊到这里吧 , 感谢你花时间阅读本站内容,更多关于php json数据、php传json数据的信息别忘了在本站进行查找喔 。

    推荐阅读