关于升级php7后的报错处理-PHP7

资源魔 36 0

因为php7的呈现带来年夜幅的功能晋升,想体验下新版本带来的特点,因而做了晋级。

发如今网站中申请接口时发作谬误,排查后把处理办法记载上去

晋级php后站点报错,提醒以下:

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

经过查问php官网后患上知,正在php5.6.X当前版本某些特点曾经被烧毁,概况查看:

http://php.net/manual/zh/migration56.deprecated.php

缘由是:

$HTTP_RAW_POST_DATA 以及 always_populate_raw_post_data

应用 always_populate_raw_post_data 会招致正在填充 $HTTP_RAW_POST_DATA 时孕育发生 E_DEPRECATED 谬误。

请应用 php://input 代替 $HTTP_RAW_POST_DATA, 由于它可能正在后续的 PHP 版本中被移除了。

设置 always_populate_raw_post_data 为 -1 (这样会强迫 $HTTP_RAW_POST_DATA 不决义,以是也没有回招致 E_DEPRECATED 的谬误) 来体验新的行为。

修复办法:

一、修正php的设置装备摆设文件,找到php.ini。把 always_populate_raw_post_data 开启,并设置为 -1 。

always_populate_raw_post_data = -1

二、假如名目中有用到$HTTP_RAW_POST_DATA的更改成:

原来是 $info = $HTTP_RAW_POST_DATA;

更改成 $info = file_get_contents(‘php://input‘);

保举:《PHP7

以上就是对于晋级php7后的报错解决的具体内容,更多请存眷资源魔其它相干文章!

标签: PHP7 php7开发教程 php7开发资料 php7开发自学

抱歉,评论功能暂时关闭!