我在webman中,引入了webman/console。我需要在Logger中區(qū)分是console調(diào)用了還是app/controller中調(diào)用了。
眾所周知,我無法通過 php_sapi_name() == 'cli' 來判定。
我該如何知道當(dāng)前是Console還是Controller
有點(diǎn)尷尬了。
場景:我以 php start.php start
的方式啟動服務(wù),同時定義了一個自定義進(jìn)程,自定義進(jìn)程監(jiān)聽8888。
在webman的http場景中,我用 @北月 提供的方法判定 $argv[0] === 'webman'是否在CLI模式下沒問題的。但是這時候在自定義進(jìn)程中,就無效了。。。
在使用Logger的時候,可以自定義extra,我想在http的場景中塞入session_id,用以后續(xù)追蹤用戶, 但是在CLI下,我想extra中塞入getmypid(), 每次使用info/error/warning的時候都要手動塞上比較麻煩,我想在全局通過判定CLI來直接塞上。