Webエンジニア向けプログラミング解説動画をYouTubeで配信中!
▶ チャンネル登録はこちら

【PHP8.x】PharFileInfo::getMTime()メソッドの使い方

getMTimeメソッドの使い方について、初心者にもわかりやすく解説します。

作成日: 更新日:

基本的な使い方

getMTimeメソッドは、PHPのPharアーカイブ内に含まれるファイルまたはディレクトリの最終修正時刻を取得するメソッドです。このメソッドは、PharFileInfoクラスのインスタンスを通して呼び出されます。Pharアーカイブとは、複数のPHPファイルや関連ファイルを一つにまとめたアーカイブ形式であり、主にPHPアプリケーションの配布やデプロイに利用されます。

このメソッドを実行すると、指定されたファイルやディレクトリが最後に変更された日時をUnixタイムスタンプ形式で取得できます。Unixタイムスタンプは、1970年1月1日 00:00:00 UTC(協定世界時)からの経過秒数を表す整数値であり、コンピュータ内部で時間を扱う際の標準的な表現方法です。取得したタイムスタンプは、PHPのdate()関数などを使用して、人間が読める形式の日付と時刻に変換することが可能です。

getMTimeメソッドは、対象となるファイルやディレクトリの修正時刻を正常に取得できた場合にこのUnixタイムスタンプを返します。しかし、何らかの理由で修正時刻の取得に失敗した場合や、対象のファイルやディレクトリが見つからない場合には、falseが返されます。この機能は、Pharアーカイブ内のコンテンツの更新状況を確認したり、キャッシュの有効性を判断したりする際など、ファイルの変更履歴に基づいた処理を行う場合に大変有用です。

構文(syntax)

1<?php
2// Pharアーカイブ 'your_archive.phar' が存在し、
3// その中に 'your_file.txt' というエントリ(ファイル)があると仮定します。
4
5// 1. Pharアーカイブを開く
6$phar = new Phar('your_archive.phar');
7
8// 2. アーカイブ内の特定のエントリのPharFileInfoオブジェクトを取得
9$fileInfo = $phar['your_file.txt'];
10
11// 3. 取得したPharFileInfoオブジェクトに対してgetMTime()メソッドを呼び出す
12//    これにより、ファイルの最終変更時刻がUnixタイムスタンプで返されます。
13$modificationTime = $fileInfo->getMTime();
14?>

引数(parameters)

引数なし

引数はありません

戻り値(return)

int

このメソッドは、 Phar ファイルの最終更新時刻を Unix タイムスタンプ(1970年1月1日午前0時からの経過秒数)で返します。

関連コンテンツ