クラスの 1 つでいくつかの定数が定義されており、application.ini でそれらを使用したいのですが、これは可能ですか?
logger.main.level = \My\App\Logger::WARNING
これは機能していないようです。文字列として解析するだけです
クラスの 1 つでいくつかの定数が定義されており、application.ini でそれらを使用したいのですが、これは可能ですか?
logger.main.level = \My\App\Logger::WARNING
これは機能していないようです。文字列として解析するだけです
PHPのparse_ini_file()関数は、グローバル空間の定数にのみアクセスでき、クラス空間にはアクセスできないと思います。
My_Class::MYCONSTまたはMy\Class::MYCONSTを.iniファイルで使用できませんでした。
で定数の値を使用する場合はapplication.ini、ファイルで定数を定義する必要があり/public/index.phpます ( を参照APPLICATION_PATH)。
コードでそれをきれいに行いたい場合は、ログレベルを数値で手動で使用することをお勧めします (定数が Zend_Log のように数値であると仮定します)。次のような名前の新しい定数を定義しLOGLEVEL_WARNINGます(クラスから定数の値を静的に取得できます)。これは、次のapplication.iniようなファイルで使用できますlogger.main.level = LOGLEVEL_WARNING
application.ini私の選択は、次のようなファイル内の数値です。
resources.log.stream.writerName = "Stream"
resources.log.stream.writerParams.stream = APPLICATION_PATH "/../data/logs/application_" DATESTAMP ".log"
resources.log.stream.writerParams.mode = "a"
resources.log.stream.filterName = "Priority"
resources.log.stream.filterParams.priority = 4
index.php で定義した定数であるAPPLICATION_PATHandを見てください。DATESTAMP