July 28, 2012

FuelPHPでProfilerが表示されない件。

自分を含め、ポツポツと遭遇される方がいるようなのでメモしておきます。

FuelPHPでProfilingの設定が正しくされているにも関わらずProfilerが表示されない場合、
まず間違いなく
fuel/core/vendor/phpquickprofiler/display.php
の改行コードがLFでは無いです。

これが原因で、display.phpの以下をスルーしてしまい、ブラウザ側でエラーとなっているはずです。
--
$css = str_replace("\n", "",  ...(略)
--


2012/07/30 追記
上記の$cssは、HTML上にjsのコードとして出力され、その時に改行コードが
残っているとjsのエラーとなり、Profilerが表示されません。

尚、FuelPHPの各ファイルはLFとなっており、この問題が発生するのは
GItの設定や、各種解凍ソフトによる、改行コードの自動変換に起因すると思われます。

pull requestは出してみたのですが、マージはされませんでした。
https://github.com/fuel/core/pull/1083
結論としては、ユーザ側で正しく設定して下さい。(LFにして下さい。)
となります。

確かに、改行コードが絡む問題がたまたまProfilerで発生しただけで
他所で発生し得る可能性も当然あり、そういった意味では当たり前の結果とも思います。

この問題に限っては、あたかもProfilerの設定が間違っているように
見えてしまうのが厄介ではありますが。


2012/07/31 追記
ドキュメントのCoding Standardsにも
--
Line Endings
Line endings should be Unix-style LF.
--
と記載がありました。
http://docs.fuelphp.com/general/coding_standards.html

No comments:

Post a Comment