2017-03-09 34 views
0
php.INFO: The "_method" requirement is deprecated since version 2.2 and will be removed in 3.0. Use the setMethods() method instead. 
{"type":16384,"file":"/martin/home/www/test/vendor/symfony/symfony/src/Symfony/Component/Routing/Route.php","line":652,"level":28928} 

PHP -v PHP 5.5.9-1ubuntu4.21Symfony2的dev.log幾周以來我看到這個php.INFO線

Symfony的版本,18年2月8日

是否有人得到這也?我正在嘗試優化開發日誌記錄並獲取儘可能少的行數。

+1

你可能想看看http://stackoverflow.com/questions/28850809/disable-deprecated-warning-in-symfony-2-7 –

+1

這是一個backhanded消息,所以它會告訴你升級你的symfony應用程序。 – BentCoder

回答

1

你決定升級到Symfony的3之前由於不贊成這種方式,你可以(應該)你的路由從類似改變您收到此作爲預警告:

$route = new Route(); 
$route->setPattern('/article/{id}'); 
$route->setRequirement('_method', 'POST|PUT'); 
$route->setRequirement('_scheme', 'https'); 

要:

$route = new Route(); 
$route->setPath('/article/{id}'); 
$route->setMethods(array('POST', 'PUT')); 
$route->setSchemes('https'); 

特別注意setRequirement('_method', ...setMethods()的變化(基本上是dev的log是什麼意思)。

您可以在這裏找到更多的信息:https://github.com/symfony/symfony/blob/master/UPGRADE-3.0.md

+0

感謝您的回覆。我只是想提一下,我沒有以任何方式在代碼中使用這樣的路由,在一些控制器操作中只有像* @Method(「POST」)這樣的註釋。 –

+0

所以它可能在捆綁下仍在使用_method。我想你可以嘗試搜索_method的整個供應商目錄,然後如果你發現它看到特定的捆綁包有2.8更新。 – Cerad

+0

@MartinFasani你可能不會像你這樣做。但這就是創建該日誌的原因。正如Cerad所說,它可能在另一個捆綁中。 – Sawant

相關問題