まあ、それが私が望んでいるものかどうかはわかりません。しかし、ここに私の問題があります:
エラーが発生した場合に備えて、FILE、CLASS、FUNCTION、および LINE をファイルに記録しています。そのために私は次のようなことをしています:
myLog('['. __FILE__ . ']' . '[' . __CLASS__ . ']' . '[' . __FUNCTION__ . ']' . '[' . __LINE__ . ']');
問題は、パラメーターでそのコードを繰り返さなければならないところです。フォーマットを変更したい場合は、どこでも変更する必要があります。
どうすれば次のようなものを手に入れることができますか:
myLog(LOG_MSG_FORMAT);
PHP定義では、定義が使用されている場所ではなく、その定義がある場所のLINE番号が得られるため、不可能です。
これに対する解決策は大歓迎です。#def の C のような機能を持つことについて、私は意地悪ではありません。
編集: この関数は、エラーが発生した場合にのみ呼び出されるとは限りません。その関数を呼び出している場所ならどこでも、ファイル、行などをログに記録したいだけです。したがって、コードを「」のどこかに貼り付けるだけで、行などをログに記録する必要があります。
例えば:
<?php
...
...
<log this location>
...
...
<log this location>