勉強したことのメモ

Webエンジニア / プログラマが勉強したことのメモ。

PHPにて特定の処理にかかった時間とメモリ使用量を測定する方法

   2024/04/17  PHP

PHPにて特定の処理にかかった時間とメモリ使用量を測定したい。以下にソースコードをメモ。

 

ソースコード

<?php
//処理開始
$start_time = microtime(true);


/*処理したい内容をここに記述する*/


//処理終了
$end_time = microtime(true);

//処理にかかった時間を計算
$rs = $end_time - $start_time;

//メモリ使用量確認用の関数
function formatBytes( $bytes, $precision = 2, array $units = null ){
    if( abs($bytes) < 1024 ){
        $precision = 0;
    }
    if( is_array($units) === false ){
        $units = array('B', 'KB', 'MB', 'GB', 'TB', 'PB', 'EB', 'ZB', 'YB');
    }
    if( $bytes < 0 ){
        $sign = '-';
        $bytes = abs($bytes);
    }else{
        $sign = '';
    }
    $exp   = floor(log($bytes) / log(1024));
    $unit  = $units[$exp];
    $bytes = $bytes / pow(1024, floor($exp));
    $bytes = sprintf('%.'.$precision.'f', $bytes);
    return $sign.$bytes.' '.$unit;
}

//処理時間とメモリ使用量を出力
echo '処理時間:' . $rs . '秒 / メモリ使用量:' . formatBytes(memory_get_usage());

 

memory_get_usage

http://php.net/manual/ja/function.memory-get-usage.php

 

参考サイト

http://qiita.com/suin/items/0090ab167bbdb3d77181

 - PHP

  関連記事

PHPで指定したディレクトリ内のファイル名を取得し、更新日時順でJSON形式にて出力する方法
PHPで指定したディレクトリ内のファイル名を取得し、更新日時順でJSON形式にて出力する方法

先日summernoteに対してギャラリー画像挿入機能を追加する方法をメモしたが ...

PHPでHTMLメールを送信する方法(PHPMailerあり無しの2パターン)
PHPでHTMLメールを送信する方法(PHPMailerあり無しの2パターン)

PHPでHTMLメールを送信したい。また、メール関連の機能を実装する際は環境によ ...

PHPにて三項演算子をより簡単に書けるNull合体演算子について
PHPにて三項演算子をより簡単に書けるNull合体演算子について

PHPにて〇〇という変数もしくは配列に値があれば××という変数にその値を格納、無 ...

Stripe Checkoutにてクレジットカード決済の際に3Dセキュア対応にする方法
Stripe Checkoutにてクレジットカード決済の際に3Dセキュア対応にする方法

先日Stripe Checkoutを用いたクレジットカード決済機能についてメモし ...

PHPで指定したカラーコードの反対色を計算し、カラーコードとして出力する方法
PHPで指定したカラーコードの反対色を計算し、カラーコードとして出力する方法

あるシステム内でユーザが指定したカラーコードをCSSで指定した上で出力するという ...