DBからデータを取ってきたり、foreachでデータを処理したりしてたら、急にページの表示がめちゃくちゃ遅くなっちゃいました!
原因はデータ取得時に、JOINでテーブルをつないで大量のデータを取りまくってたことだったのですが、原因がわかるまでは、どこの表示が一番問題なのかがわからない。。。
なので、怪しい部分ごとに、処理時間を計測しようかなと思い、方法を調査しました。
で、使いやすい関数を作っていてくれた方がいらっしゃいましたので、それを使用させてもらいました☆
まず関数はこれ↓
function measure() { list($m, $s) = explode(' ', microtime()); return ((float)$m + (float)$s); }
この関数をPHPファイルに書いてやって、あとは処理時間を計りたい部分を以下のようなコードで囲んでやれば大丈夫です。
$start = measure(); ここに処理時間を計りたい部分のコードを記述 echo (measure() - $start);
おかげさまで、各コンテンツの処理時間や問題部分が発見できました。
詳しくはこちら様のサイトに記載されております。