TOOL更新_Log出力クラスを修正した。
TOOL更新_Log出力クラスを修正した。(http://d.hatena.ne.jp/kazpgm/20100118/1263836416)を直接修正した。
1.今日、phpのすべての結果(html)にデバック用javascript(WEB画面上でCTL+U押下するとhtmlエレメント情報をクリップボードに吐き出すもの。レングス、マックスレングス、クラス、value、エレメント名などをチェックしようと思う)を埋め込むということを考えた。内容はもうちょっとできてから書くことにするが、
そのとき、print_rの第2パラメータtrueで変数に入れれることを知った。その説明にprint_rは内部でob_start()使うのでon_startは使わないで。と書いてあった。・・・ので修正した。(使っても別に変にならなかったけど)
2.ob_start()の説明書を読むと、”出力バッファはスタッカブルであり、このため、他の ob_start() がアクティブの間に ob_start() をコールすることが可能です。この場合、 ob_end_flush() を適切な回数コールするようにしてください。 ”とある。なかなか使えそうな気がする。
<<修正前>> // DEBUGログ出力 public function outDbgLog($id, $msg = PHP_EOL) { ・・・ } else { // その他はvar_dumpして出力 ob_start(); //var_dump($msg); print_r($msg); $dmp =ob_get_contents(); ob_end_clean(); $log .= $dmp; } <<修正後>> // DEBUGログ出力 public function outDbgLog($id, $msg = PHP_EOL) { ・・・ } else { // その他はvar_dumpまたはprint_rして出力 // var_dumpより print_rのほうが見やすいので。(print_r($msg, true);はob_start関連がいらない。) //ob_start(); //var_dump($msg); //$dmp =ob_get_contents(); //ob_end_clean(); //$log .= $dmp; $dmp = print_r($msg, true); $log .= $dmp; }
03/01 01:00-02:00