php存放json数据 php jsonencode

在PHP中怎么接收来自app的JSON数据根据你的代码,你是用的是POST方法 。
要在PHP中整体接收POST数据 , 有两种方法 。
注意 , 要使用以下两种方法,Content-Type不能为multipart/form-data 。
方法一:
使用:
file_get_contents('php://input')
其中 , php://input是一个流,可以读取没有处理过的POST数据(即原始数据) 。相较于$HTTP_RAW_POST_DATA而言,它给内存带来的压力较小,并且不需要特殊的php.ini设置 。
方法二:
使用此方法,需要设置php.ini中的always_populate_raw_post_data值为On 。
使用$HTTP_RAW_POST_DATA , 包含了POST的原始数据 。但这不是一个超全局变量 , 要在函数中使用它 , 必须声明为global,或使用$GLOBALS['HTTP_RAW_POST_DATA']代替 。
php 保存在指定的json文件?我是需要生成实体文件!可以使用file_put_contents把字符串输出到文件中.
file_put_contents('abc.josn',$son_str);
php怎么接收json类型数据PHP接收JSON格式的数据
在API服务中 , 目前流行采用json形式来交互 。
给前端调用的接口输出Json数据,这个比较简单,只需要组织好数据,用json_encode($array) 转化一下,前端就得到json格式的数据 。
接收前端提交的json数据稍微复杂一点,原因是:PHP默认识别的数据类型是application/x-标准的数据类型 。因此,对型如text/xml 或者 soap 或者 application/octet-stream 和application/json格式之类的内容无法解析,如果用$_POST数组来接收就会失败!
此时可以使用$GLOBALS['HTTP_RAW_POST_DATA']或file_get_contents('php://input') 来获取提交的数据
查看手册,可以发现$GLOBALS['HTTP_RAW_POST_DATA']和$_POST的区别:
$_POST:通过 HTTP POST 方法传递的变量组成的数组,是自动全局变量 。
$GLOBALS['HTTP_RAW_POST_DATA'] :总是产生 $HTTP_RAW_POST_DATA 变量包含有原始的 POST 数据 。此变量仅在碰到未识别 MIME 类型的数据时产生 。$HTTP_RAW_POST_DATA 对于 enctype="multipart/form-data" 表单数据不可用 。也就是说基本上$GLOBALS['HTTP_RAW_POST_DATA'] 和 $_POST是一样的 。但是如果post过来的数据不是PHP能够识别的 , 你可以用 $GLOBALS['HTTP_RAW_POST_DATA']来接收,比如 text/xml 或者 soap 等等 。
补充说明:PHP默认识别的数据类型是application/x-标准的数据类型 。
PHP JSON格式数据交互实例代码详解在PHP中解析JSON主要用到json_encode和json_decode两个PHP
JSON函数,比PHP解析XML方便很多,下面详细介绍下PHP
JSON的使用 。
JSON基础介绍
JSON(JavaScript
Object
Notation)
是一种轻量级的数据交换格式 。
JSON主要有两种结构:
“名称/值”对的集合,在PHP中可以理解为关联数组
(associative
array) 。
值的有序列表(An
ordered
list
of
values) 。在PHP中可以理解为普通数组(array) 。
对象是一个无序的“‘名称/值'对”集合 。一个对象以“{”(左括号)开始,“}”(右括号)结束 。每个“名称”后跟一个“:”(冒号);“‘名称/值'
对”之间使用“,”(逗号)分隔 。
数组是值(value)的有序集合 。一个数组以“[”(左中括号)开始,“]”(右中括号)结束 。值之间使用“,”(逗号)分隔 。值(value)可以是双引号括起来的字符串(string)、数值(number)、true、false、
null、对象(object)或者数组(array) 。这些结构可以嵌套 。
我目前对JSON的理解更偏向于数组,类似于PHP中的关联数组 , 你可以将PHP数组转换为JSON格式 。
更多JSON的介绍请参考JSON官网和IBM关于JSON的介绍
PHP
JSON解析实例
PHP5.2开始已经将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);
【php存放json数据 php jsonencode】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数据的介绍就聊到这里吧 , 感谢你花时间阅读本站内容,更多关于php jsonencode、php存放json数据的信息别忘了在本站进行查找喔 。

    推荐阅读