Laravel 4类如何检测它是在一个Artisan任务中运行还是在一个浏览器请求中运行?


How can a Laravel 4 class detect that it is running in an Artisan task vs. a browser request?

我有一些应用程序启动代码,需要知道它当前是在一个工匠任务中运行,还是在浏览器请求中被调用。

我如何在Laravel 4中检测到这个?

这是最好的方法:)

    if (App::runningInConsole())
      echo "Running in artisan/CLI";
    else 
      echo "Running in a browser";

希望能有所帮助。

runningInConsole()也返回true时,单元测试正在运行,然后我认为一个更好的方法来检测你的应用程序是否运行只有通过artisan是:

if (App::runningInConsole() && !App::runningUnitTests()) {
    // ... code to execute when artisan is running.
}