Symfony3/PHP7请求出现问题::getContent()


Symfony3/PHP7 Issues with Request::getContent()

我刚刚开始使用Symfony。我已经将一个测试页面(API)放在一起,并使用Request:getContent()来获取传入的JSON主体。这在我的开发机器上运行得很好,正如预期的那样(Mac OS X 10.11.4,MAMP with PHP 5.6.0)。当我部署到测试服务器Ubuntu server 16.04 LTS和PHP 7.0.4时,它会抛出错误:

request.CRITICAL: Uncaught PHP Exception Symfony'Component'Debug'Exception'FatalThrowableError: "Fatal error: Using $this when not in object context" at /var/www/html/symfony_api/var/bootstrap.php.cache line 1008 {"exception":"[object] (Symfony''Component''Debug''Exception''FatalThrowableError(code: 0): Fatal error: Using $this when not in object context at /var/www/html/symfony_api/var/bootstrap.php.cache:1008)"} []

只需注释掉请求行,并使用普通PHP使用file_get_contents('php://input')导致类在两台机器上都按预期工作。

谢谢你的帮助。

getContent()方法不是Request类的静态方法(http://api.symfony.com/2.8/Symfony/Component/HttpFoundation/Request.html#method_getContent),用途:

$request->getContent();