Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/253.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 如何将POST请求的全文记录到文件中以进行调试?_Php_Debugging_Post - Fatal编程技术网

Php 如何将POST请求的全文记录到文件中以进行调试?

Php 如何将POST请求的全文记录到文件中以进行调试?,php,debugging,post,Php,Debugging,Post,我已经阅读了这个问题的许多“可能的副本”,并在本文中使用了其中一个问题的代码,但我似乎看不出这个问题到底在问什么 作为与PHP或网站无关的更大项目的一部分,我需要获取对共享服务器的POST请求的主体。 根据这些想法,我在服务器的www文件夹中创建了一个php文件,其中包含以下内容 webhook.php <?php error_log("webhook running"); file_put_contents("post.log", print_r

我已经阅读了这个问题的许多“可能的副本”,并在本文中使用了其中一个问题的代码,但我似乎看不出这个问题到底在问什么

作为与PHP或网站无关的更大项目的一部分,我需要获取对共享服务器的POST请求的主体。 根据这些想法,我在服务器的www文件夹中创建了一个php文件,其中包含以下内容

webhook.php

<?php 
error_log("webhook running");
file_put_contents("post.log", print_r($_POST, true));
?>
但我的服务器上的日志文件仅包含

Array
(
)
我不是一个PHP程序员(只要做我需要做的最低限度的工作就可以了) 出于调试和开发目的,我应该如何修改我的webhook.php脚本,以便能够看到发送的所有数据


如果我能做到这一点,那么我可能可以解决如何对每个元素进行适当的处理,而这些元素并不总是具有上述结构。

PHP仅在请求内容类型为
application/x-www-form-urlencoded
多部分/表单数据
时填充$\u POST。如果您收到其他邮件,则必须使用
php://input
读取原始帖子正文,然后自己解析

您所展示的示例JSON似乎是有效的——因此,如果JSON_decode没有在这里给出预期的结果,那么您的输入数据可能不是您最初期望的


这里的一个基本调试错误是,您只查看多个“复合”操作的最终结果。记录什么
文件\u获取\u内容('php://input“)
首先返回,看看这是否真的是您所期望的。如果不是从一开始,那么只查看json_解码返回的内容并没有多大帮助。

您检查过错误日志了吗。这段代码真的应该可以工作,所以可能在日志中有一条有用的错误消息“我然后使用了第三方公司发布了一条测试消息”您可能还没有启用CORS这是否回答了您的问题?当请求内容类型为
application/x-www-form-urlencoded
multipart/form data
时,PHP仅填充$\u POST。如果您收到其他邮件,则必须使用
php://input
读取原始帖子正文,然后自己解析。您所展示的示例JSON似乎是有效的-因此,如果
JSON_decode
没有给出此处的预期结果,那么您的输入数据可能不是您最初预期的结果。这里的一个基本调试错误是,您只查看多个“复合”操作的最终结果。记录什么
文件\u获取\u内容('php://input“)
首先返回,看看这是否真的是您所期望的。如果不是从一开始,那么只查看
json\u decode
返回的内容并没有帮助。
Array
(
)