本文目录一览:
- 1、在PHP中怎么接收post过来的JSON数据
- 2、php用curl的post方法传递json包的时候,接受方是怎么获取的呢
- 3、PHP使用POST传递json数据的接收与处理问题
- 4、php如何发送和接收JSON数据
- 5、PHP如何通过Post请求发送Json数据
在PHP中怎么接收post过来的JSON数据
var allUnivList = [{
"id": 1,
"univs": [{
"id": 1001,
"name": "清华大学"
},
{
"id": 1002,
"name": "北京大学"
}],
"country_id": 0,
"name": "北京"
}]
//比如你传递的是上面这个JSON格式,在PHP端,举个用JQ提交的例子:
$.ajax({
url: "test.php",
type: "post",
data: { allcity: allUnivList},
success: function (data) {
alert(data);
},
error: function () {
alert("系统异常!");
}
});
php用curl的post方法传递json包的时候,接受方是怎么获取的呢
假设POST的数据为:{"data":"abc"}
POST参数为:data
同样以PHP为例,接受并处理请求的相关代码如下:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
?php
extract($_POST); // 将数组中的key摊成变量,并导入key对应的值
if (!empty($data))
{
$data = json_decode($data); // json 字符串解码成 json 数据
var_dump($data); // 打印 json 数据
// 输出结果
object(stdClass)[1]
public 'data' = string 'abc' (length=3)
}
PHP使用POST传递json数据的接收与处理问题
前端传给服务器的只是json 格式的字符串,使用json_decode,
mixed json_decode ( string $json [, bool $assoc ] )
var_dump(json_decode($json));
var_dump(json_decode($json, true));
如果不带参数,则返回为对象
带上true时,返回数组
foreach($ARR as $k=$v){
echo 'key='.$k.';value='.$v;
}
单独处理每个key 和对应的value就好
php如何发送和接收JSON数据
对于json,PHP有对应的方法进行操作。
一般而言,json会以字符串形式传给PHP脚本,一般都是放在$_POST里面,
14
?php
// 接收
$json_parameter = $_POST['json_str'];
// 处理, 变成数组
$array = json_decode($json_parameter);
// PHP 把数组数据变成json格式字符串,发给页面
$demo = array(
'key' = 'value',
'key2' = 'value2'
);
$demo_json = json_encode($demo); // 格式是{"key":"value","key2":"value2"}
echo $demo_json;
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);
之后就返回数据即可。