- 1. 概要
- 2. 基本
- 3. 変数の出力
- 4. トレース
1. 概要
まとまるかは、わかりませんが、まとめたいと思います。
結局、「Laravel」のログも、「Laravel」自身のログが、バックトレース中心なので、自分で出力するものは、「error_log」で出力した方がいいかなと思います。
2. 基本
ソースがどこにあるかは、よくわからないことが多いので、基本的には、下記のように出力します。
error_log(__DIR__);
error_log(basename(__FILE__).' '.__FUNCTION__.' '.__LINE__.' any_message'.PHP_EOL);
とりあえず、通っているか、調べたいだけならば、下の行は。
error_log(basename(__FILE__).' '.__FUNCTION__.' '.__LINE__.' '.PHP_EOL);
3. 変数の出力
変数が文字型だったり、「printable」であることがわかっている場合は。
error_log(__DIR__);
error_log(basename(__FILE__).' '.__FUNCTION__.' '.__LINE__.' $variable['. $variable .']'.PHP_EOL);
てな感じで出力します。
変数の型が分からない場合は。
error_log(__DIR__);
error_log(basename(__FILE__).' '.__FUNCTION__.' '.__LINE__.' $variable['. print_r($variable, TRUE) .']'.PHP_EOL);
が無難かな。
そもそも、変数が宣言されているかをチェックする場合は。
error_log(__DIR__);
if (isset($var))
{
error_log(basename(__FILE__).' '.__FUNCTION__.' '.__LINE__.' $variable['. print_r($variable, TRUE) .']'.PHP_EOL);
}
else
{
error_log(basename(__FILE__).' '.__FUNCTION__.' '.__LINE__.' $variable is not set '.PHP_EOL);
}
4. トレース
$trace = debug_backtrace();
foreach($trace as $line)
{
error_log("{$line["file"]}: line {$line["line"]}");
}
error_log(PHP_EOL);
|