カテゴリ: PHP 更新日: 2026/04/06

PHPの実行時間を計測する方法を完全ガイド!初心者でもわかるmicrotimeとhrtime

PHP のスクリプト実行時間の計測(microtime, hrtime)
PHP のスクリプト実行時間の計測(microtime, hrtime)

先生と生徒の会話形式で理解しよう

生徒

「PHPのプログラムって、どれくらい時間がかかって動いているか調べることはできますか?」

先生

「できますよ。PHPには、処理にかかった時間を調べるための仕組みがあります。」

生徒

「パソコンをあまり触ったことがなくても理解できますか?」

先生

「大丈夫です。時計を使った例えで、ゆっくり説明していきます。」

1. PHPのスクリプト実行時間とは?

1. PHPのスクリプト実行時間とは?
1. PHPのスクリプト実行時間とは?

PHPのスクリプト実行時間とは、PHPのプログラムが「動き始めてから終わるまでにかかった時間」のことです。これは、ストップウォッチで料理の時間を測るようなイメージです。プログラムも同じで、「スタート」と「ゴール」の時間を調べて、その差を計算することで、どれくらい時間がかかったかを知ることができます。

PHPのコマンドラインスクリプトでは、処理が速すぎて人間の感覚では分からないことが多いため、実行時間の計測がとても大切になります。

2. なぜPHPで実行時間を計測するの?

2. なぜPHPで実行時間を計測するの?
2. なぜPHPで実行時間を計測するの?

PHPで実行時間を調べる理由はたくさんあります。例えば、「処理が遅くて困っている」「どの処理に時間がかかっているか知りたい」といった場面です。特に初心者の方は、プログラムが止まっているのか、時間がかかっているだけなのか分からなくなりがちです。

実行時間を知ることで、プログラムがちゃんと動いているかを確認でき、安心して作業を進められます。

3. microtimeとは?PHPで使える基本の時間計測

3. microtimeとは?PHPで使える基本の時間計測
3. microtimeとは?PHPで使える基本の時間計測

microtimeは、PHPで昔から使われている時間計測の関数です。とても細かい時間まで取得できるのが特徴で、秒よりも小さい単位まで分かります。これは、普通の時計ではなく、デジタルストップウォッチのようなものです。


<?php
$start = microtime(true);
sleep(1);
$end = microtime(true);
echo $end - $start;

この例では、最初に時間を記録し、1秒待ってからもう一度時間を記録しています。その差を表示することで、「だいたい1秒かかった」ことが分かります。


1.000123

4. microtime(true)の意味をやさしく解説

4. microtime(true)の意味をやさしく解説
4. microtime(true)の意味をやさしく解説

trueという言葉は、「数字として時間を返してください」という意味です。これがないと、文字の情報になってしまい、計算が難しくなります。初心者の方は、microtimeは必ずtrueを付けると覚えておくと安心です。

数字として時間をもらうことで、引き算ができ、実行時間を簡単に計算できます。

5. hrtimeとは?より正確な時間計測

5. hrtimeとは?より正確な時間計測
5. hrtimeとは?より正確な時間計測

hrtimeは、より新しいPHPで使える時間計測の方法です。microtimeよりもさらに正確で、コンピュータ内部の高精度な時計を使っています。例えるなら、研究室で使う精密な計測器のような存在です。


<?php
$start = hrtime(true);
sleep(1);
$end = hrtime(true);
echo $end - $start;

1000000000

この数値は「ナノ秒」という非常に小さな単位です。数字が大きくて驚くかもしれませんが、1秒が約10億ナノ秒だと覚えておくと理解しやすくなります。

6. hrtimeの結果を秒に直してみよう

6. hrtimeの結果を秒に直してみよう
6. hrtimeの結果を秒に直してみよう

ナノ秒のままだと分かりにくいので、秒に変換してみます。割り算を使うだけなので、とても簡単です。


<?php
$start = hrtime(true);
usleep(500000);
$end = hrtime(true);
$time = ($end - $start) / 1000000000;
echo $time;

0.5

これで「0.5秒かかった」ということが、はっきり分かります。

7. microtimeとhrtimeの使い分け

7. microtimeとhrtimeの使い分け
7. microtimeとhrtimeの使い分け

初心者の方には、まずmicrotimeがおすすめです。理由は、数字がそのまま秒として扱えるからです。一方で、より細かい処理や正確さが必要な場合は、hrtimeが向いています。

どちらも「時間を測る道具」なので、目的に応じて選ぶことが大切です。

8. PHPコマンドラインで実行時間を測るときの注意点

8. PHPコマンドラインで実行時間を測るときの注意点
8. PHPコマンドラインで実行時間を測るときの注意点

PHPのコマンドラインスクリプトでは、他のプログラムの影響で時間が少し前後することがあります。そのため、1回の結果だけで判断せず、何度か試してみることが大切です。

実行時間の計測は、プログラムの成長を助ける大切なヒントになります。

コメント
コメント投稿は、ログインしてください

まだ口コミはありません。

PHP のコマンドラインスクリプトの記事一覧へ
新着記事
New1
Copilot
CopilotでPHPコード補完を始める方法!VS Codeで最初の補完を使う手順
New2
PHP
PHPでお問い合わせメールを送信する方法!フォーム連携と本文テンプレート
New3
PHP
PHPでPHPUnitの最初のテストを書く方法!関数テストの基本
New4
Claude
ClaudeでPHPリファクタリングの失敗を減らす方法!実務で使うコードに近づけるための設計相談
人気記事
No.1
Java&Spring記事人気No1
Python
PythonでSQLiteを使う方法を完全ガイド!初心者でもわかるデータベース基本操作
No.2
Java&Spring記事人気No2
PHP
PHP の MySQL 接続の基本(mysqli, PDO)を完全解説!初心者向けガイド
No.3
Java&Spring記事人気No3
Python
Pythonでヒートマップを作成する方法を完全解説!初心者でもわかるデータ分析入門
No.4
Java&Spring記事人気No4
Claude
ClaudeでPythonデバッグを本番目線で確認する方法!本番環境のエラーを慌てず切り分ける考え方
No.5
Java&Spring記事人気No5
Python
Pythonのエラーハンドリング設計を完全ガイド!初心者でもわかる適切な例外をキャッチする方法
No.6
Java&Spring記事人気No6
Gemini
GeminiでPHPデバッグを進める方法!原因調査の流れを初心者向けに解説
No.7
Java&Spring記事人気No7
Python
Pythonのインデントの重要性!なぜPythonではインデントが必須なのか?
No.8
Java&Spring記事人気No8
Python
Pythonの数値型を完全ガイド!整数と浮動小数点数の違いを初心者向けに解説