というわけで自分用サイト管理システムWiki風を作ってるわけですが。まだ2割もできてないのに、パフォーマンス計測が楽しくなっちゃってそっちばっかりやってたり。
今回わたし、すっかり反省しました。
いままでは、できるだけrequire_onceと書くようにしてたんです。重いという話は聞いてたけど、でも意味のある命令なんだし、言語にそういう命令がある以上、使うべきところでは使うべきだろう、と思ってたんです。
しかし。いろいろ測ってるうちに、これが一番時間かかってね? と気づいてしまったのです。
というわけで、require_onceを全部下のように書きかえてみた。
if(!class_exists('Hoge')) { include <絶対パス入れた定数> . '/Hoge.php'; }
結果。実に1秒以上も速くなったね。
びっくりです。
回数が多いのはたしかだが、しかし1秒って(笑)
さすがにこれほど違うなら「require_onceは使うな!」といってしまうべきだろう。
……うーむ。PHPって(ry
あ、バージョンは5.2です。5.3では修正されてるんだろうか。