私は YII フレームワークを初めて使用します。コンソールまたはブラウザーで実行しているかどうかを確認/確認する方法があるかどうかを知りたいですか?
ありがとう!
この返信は少し遅れていますが、これを行う Yii 固有の方法があります。
Yii1 では次のことができます。
if (Yii::app() instanceof CConsoleApplication)
Yii2 では、次のようになります。
if (Yii::$app instanceof Yii\console\Application)
それが誰かに役立つことを願っています...
次のこともできるはずです。
echo get_class(Yii::app());
どのタイプのアプリを使用しているかがわかります...
PHP アプリケーションがコンソールで実行されているかどうかを判断するのと同じ方法です。
最も効率的な方法は、ルート ファイル index.php で次の行を定義するようです。
define ('WEBAPP', true)
後でアプリケーションをいつでもチェックインできます
if (defined('WEBAPP')) {
echo "This is webapp";
} else {
echo "app was launched via console";
}
Yii 1.7 にチェックイン済み
使用できます
if(is_a(Yii::$app,'yii\console\Application'))
for console, and
if(is_a(Yii::$app,'yii\web\Application'))
for web.