① 在php中怎么接收post过来的JSON数据
在PHP中接收POST过来的JSON数据,通常有两种方式。一种是直接使用file_get_contents函数获取原始数据,然后利用json_decode将JSON字符串转换为PHP数组或对象。例如:file_get_contents('php://input');获取数据后,使用json_decode(file_get_contents('php://input'), true)进行解码。另一种方式是通过$_POST超全局变量接收,这种方式需要在发送请求时设置Content-Type为application/json。例如:$_POST['data'],但这种方式并不推荐,因为$_POST通常用于接收表单数据。
下面是一个完整的示例,展示如何在PHP中处理POST过来的JSON数据:
首先,假设前端使用JavaScript发送JSON数据,代码如下:
JavaScript代码示例:
function sendData() {
var data = {'zhangsan':'lisi', 'age':18};
var xhr = new XMLHttpRequest();
xhr.open('POST', '/path/to/php/script', true);
xhr.setRequestHeader('Content-Type', 'application/json');
xhr.onreadystatechange = function () {
if (xhr.readyState === 4 && xhr.status === 200) {
console.log(xhr.responseText);
}
};
xhr.send(JSON.stringify(data));
}
然后在PHP中接收并处理这些数据:
PHP代码示例:
<?php
$jsonData = file_get_contents('php://input');
$data = json_decode($jsonData, true);
echo "接收到的数据:";
print_r($data);
?>
上面的PHP代码首先使用file_get_contents('php://input')获取原始数据,然后通过json_decode将其转换为PHP数组。接着,使用print_r输出数据内容。
这种方式不仅适用于POST请求,也适用于其他HTTP方法。通过这种方式,PHP能够灵活地处理不同来源和格式的数据,增强应用的通用性和可维护性。
② PHP取得JSON中的值
<?php
$a='{"from":"kor","to":"zh","trans_result":[{"src":".","dst":""}]}';
$tt=json_decode($a,true);
var_mp($tt);
echo"--------------- ";
echo$tt['trans_result'][0]['dst'];
?>
执行结果如下图
③ PHP涓濡备綍璇诲彇杩灭▼缃戦〉涓璲son镄勫瑰簲鍐呭瑰苟杞鎹涓哄墠绔鏄剧ず
浣犲厛瀹氢箟濂藉墠绔灞旷ず镄勪綅缃锛岀劧钖庨氲繃璁块梾url銮峰缑json鏁版嵁锛岀敤php瑙f瀽json锛屽瑰彿鍏ュ骇灏卞彲浠ヤ简銆
④ php 通过curl传递的json数据如何获取
你将$hello直接解析成了jsons 如果服务器端要接收。 你可以在
$hello=json_en......;下一行加上
$data=array('hello'=>$hello);
将curl_setopt($ch,CURLOPT_POSTFIELDS,$hello);改成curl_setopt($ch,CURLOPT_POSTFIELDS,$data);
在URL端你可以用var_mp($_POST);
⑤ 如何用php调用外部接口json数据
一般使用php发送请求,获取返回的数据,进行解析;
<?php
$url="接口地址";
//发送请求获取返回值,file_get_contents只支持get请求,post使用curl
$json = file_get_contents($url);
//把json数据转化成数组
$data = json_decode($json,true);
//打印看看
print_r($data);
?>
⑥ 请教php大神,如何提取一个json数据里的某值
需要准备的材料分别是:电脑、php编辑器、浏览器。
1、首先,打开php编辑器,新建php文件,例如:index.php,填充问题基础代码。
⑦ 怎么用php获取远程端的json数据,不会用,求大神解释
file_get_contents是可以的,
<?php
echo"<metahttp-equiv='Content-Type'content='text/html;charset=utf-8'/>";
$m=file_get_contents("https://openapi.youku.com/v2/videos/show_basic.json?video_id=XOTQ1NDU5ODk2&client_id=319cdac7553fa298");
print_r(json_decode($m));
?>
输出结果: