我即將開始編寫Symfony2應用程序,並且遇到了一些筆記,我必須寫一些筆記,以確保我編寫Symfony2控制器也需要從命令行運行。Symfony2 - 在命令行上運行控制器時要注意什麼VS瀏覽器
不是bash的出控制器的負荷,看似很高興他們在Web瀏覽器的工作,我要確保所有控制器的命令行工作了。
其中很多需要從命令行運行,例如,後臺任務等
(1)我的筆記告訴我AppKernel.php插入此:
* This prevents a 'You cannot create a service ("request") of an inactive scope ("request")' error
<?php
class AppKernel extends Kernel
{
protected function initializeContainer() {
parent::initializeContainer();
if (PHP_SAPI == 'cli') {
$this->getContainer()->enterScope('request');
$this->getContainer()->set('request', new \Symfony\Component\HttpFoundation\Request(), 'request');
}
}
}
?>
(2)我也得到了在每一個運行各種代碼預先書面請求監聽器請求,我知道生成的變量不會在命令行中使用。
(3)我知道,沒有我的Apache配置的運行(因爲它不是在Apache運行),我也知道,有兩家的php.ini文件(CLI和Apache)。
我還需要考慮什麼?
與瀏覽器相比,命令行上還有哪些功能不可用?
我2美分...最大的一個對我來說是發送電子郵件。有了瀏覽器,我相信它是在內核中進行處理終止(http://symfony.com/doc/current/components/http_kernel/introduction.html# the-kernel-terminate-event),但是使用CLI你必須處理sppol,不像你自己那樣http://symfony.com/doc/current/cookbook/console/sending_emails.html#using-memory-spooling – qooplmao