请善待你的答案,我是JSON和PHP的新手,非常感谢任何正确方向的推动。
到目前为止,我已经使用以下代码创建了一个php文件
$data = print_r($_POST, TRUE);
file_put_contents('api3.txt', $data);
捕获POST消息并将其保存到文件api3.txt。根据我的理解,JSON数组不会在POST消息中发送,这意味着我应该使用类似
的内容$jsonString = json_decode(file_get_contents("php://input");
$myFile = "01010.txt";
file_put_contents($myFile,$jsonString);
此代码基于查看其他类似的SO问题但是我遇到了一些问题,并且没有收到任何已保存的内容到该文本文件。我对JSON数据的唯一了解就是它在数组中并且它被发送到我的php脚本(不是从文件或页面读取)。
非常感谢任何帮助!
由于
以下代码生成了包含1
<?php
header('realtimeapi_code: #####');
$jsonString = file_get_contents("php://input");
$data = print_r($jsonString);
file_put_contents('work.txt',$data);
?>
标头中的第一行是验证所必需的。
答案 0 :(得分:0)
它是json_encode(),json_decode()和urlencode()的组合。
POST
// encode PHP array to JSON
$data = json_encode(array("something"=>array("key"=>"val")));
// urlencode it for sending via POST
$data = urlencode($data);
RECEIVE
$dataEncodedJSON = $_POST['yourDataField'];
$data = json_decode( urldecode( $dataEncodedJSON), true);
var_dump($data, true);
你可能会侥幸逃脱:
$json_array = json_decode(file_get_contents('http://api.website.com/'), true);