使用 PHP 将 JSON POST 记录到文件

Lea*_*ing 6 php json

我正在尝试将发布到我的服务器的数据记录到文本文件中。发送到我的服务器的数据示例位于此处:

http://dev.datasift.com/docs/push/sample-output-file-based-connectors

那个页面上写着:

“对于所有基于文件的连接器,有效负载是一个包含元数据的 JSON 对象以及一个包含来自流的 JSON 对象的数组。”

我在 datasift 将数据发送到的位置有以下 PHP:

<?php
$myFile = "testFile.txt";
$phpObj = json_decode($_POST['json']);
file_put_contents($myFile,$phpObj);
echo '{ "success": true }';
?>
Run Code Online (Sandbox Code Playgroud)

我知道正在发送数据,但我的文本文件中没有记录任何内容。每次都是一片空白。不幸的是,我不知道从这里去哪里。有任何想法吗?

com*_*tic 6

我认为您想获取 POST 的原始内容,这对我来说既适用于 POST 又适用于 PUT:

$phpObj = json_decode(file_get_contents("php://input"));
Run Code Online (Sandbox Code Playgroud)

$_POST包含来自x-www-form-urlencoded内容的数组,而不是 json。

希望能指出你正确的方向:)

编辑: @user4035 是对的……您还试图将 php 对象保存到文件中……这就是我要做的:

<?php
$jsonString = file_get_contents("php://input");
$myFile = "testFile.txt";
file_put_contents($myFile,$jsonString);
echo '{ "success": true }';
?>
Run Code Online (Sandbox Code Playgroud)