今天在写ZBlog
插件的时候,遇到了以下的报错;
Deprecated: Automatically populating $HTTP_RAW_POST_DATA is deprecated and will be removed in a future version. To avoid this warning set 'always_populate_raw_post_data' to '-1' in php.ini and use the php://input stream instead. in Unknown on line 0
Warning: Cannot modify header information - headers already sent in Unknown on line 0
第一个是个弃用的说明,但是因为我是基于ZBlog
来开发的,所以是不太可能去改底层的代码,所以基本不用去理会也是可以的,如果需要解决的话,其实在报错提示也说的很明显了,具体是打开php.ini
这个文件,然后把里面的always_populate_raw_post_data=-1
,即可解决这个提示。
第二个报错,是个警告的错误,我发现好像是连带这一出现后就有二出现,所以解决了第一个问题后,第二个问题就消失了。
但是,我的处理方法,都不是按照它的提示做的哦,而是我发现了,如果请求方式时POST
+没有任何提交参数的话,那就会报这个错误。
所以既然已经发现了规律的话,我们可以直接判断如果是POST
请求方式且请求的参数数量为空的话,就直接返回对应的错误,不执行之后的代码,那么问题不就解决了嘛。
具体代码如下;
if(count($_POST)===0){ return; } //下面就是正常的代码部分了