我们有一个可以从Symfony命令和普通Web请求调用的服务。有没有办法找出服务是从命令还是从Web请求调用的?如果是这样,如果从命令调用它,是否有办法找出运行命令时使用的参数?
在symfony控制台中,
命令行上下文不知道您的VirtualHost或域名
这意味着您可以检查请求方案,主机,base_url和基本路径,因为这些请求属性在控制台上下文中没有值,除非您配置它们(https://symfony.com/doc/current/console/request_context.html#configuring-the-request-context-globally)
嗨,你可以使用它来知道是否从cli使用该服务,如果它与apache一起运行你会得到这个apache2handler
if(php_sapi_name() === 'cli') {
//some code
}