マジック定数は特殊な定数で定義不要で参照可能な定数
__LINE__ | ファイル上の現在の行番号 |
---|---|
__FILE__ | ファイルのフルパスとファイル名 |
__DIR__ | そのファイルの存在するディレクトリ |
__FUNCTION__ | 関数名 |
__CLASS__ | クラス名 |
__TRAIT__ | トレイト名 |
__METHOD__ | クラスのメソッド名 |
__NAMESPACE__ | 現在の名前空間 |
class clsMagic {
public function magicValue(){
$this->funcEcho("ファイル上の現在の行番号",__LINE__);
$this->funcEcho("ファイルのフルパスとファイル名",__FILE__);
$this->funcEcho("そのファイルの存在するディレクトリ",__DIR__);
$this->funcEcho("関数名",__FUNCTION__);
$this->funcEcho("クラス名",__CLASS__);
$this->funcEcho("トレイト名",__TRAIT__);
$this->funcEcho("クラスのメソッド名",__METHOD__);
$this->funcEcho("現在の名前空間",__NAMESPACE__);
}
private function funcEcho($msg,$value){
echo $msg . ":" . $value . "<br />";
}
}
$mg = new clsMagic();
$mg->magicValue(); // マジック定数を表示
マジック定数はエラーのトレースなどで、どのファイルの何行目でエラーが発生したとかの情報を記録する時に便利。本格的にアプリケーションを作るならエラーの詳細は必須だからね。