現在の位置: ホーム> 最新記事一覧> md5_file()を使用してファイルのハッシュ値を生成する方法

md5_file()を使用してファイルのハッシュ値を生成する方法

M66 2025-05-28

PHPでは、ファイルのハッシュ値を生成することは、特にアップロード、ダウンロードの検証、およびデータの整合性の検証の場合、一般的な操作です。 MD5_FILE()関数は、ファイルのMD5ハッシュ値を迅速に計算する簡単な方法を提供します。

md5_file()関数導入

MD5_FILE()は、指定されたファイルのMD5ハッシュ値を計算し、32ビットヘキサデシマル文字列を返すPHPの組み込み関数です。その基本的な使用法は次のとおりです。

 string md5_file ( string $filename [, bool $binary = false ] )
  • $ filename :ハッシュを計算する必要があるファイルパス。

  • $ binary :元のバイナリ形式を返すかどうか(デフォルトはfalseで、16進文字列を返します)。

ファイルハッシュ値を迅速に生成する例

MD5値をすばやく取得したいファイルがあるとしたら、次のように書くことができます。

 <?php
$file = '/path/to/your/file.txt';
$hash = md5_file($file);
echo "提出MD5ハッシュ値はです: " . $hash;
?>

知らせ

ファイルが大きい場合、 md5_file()はストリーム方法でファイルを自動的に読み取り、一度に大量のメモリをロードすることを避けます。これはより効率的です。

ファイルのハッシュ値をチェックする例

ファイルをアップロードまたはダウンロードした後、ファイルが改ざんされていないことを確認するために、 MD5_File()を使用して、予想されるハッシュ値を比較できます。

 <?php
$expected_hash = 'd41d8cd98f00b204e9800998ecf8427e'; // 期待されるMD5価値
$file = '/path/to/your/file.txt';

$actual_hash = md5_file($file);

if ($actual_hash === $expected_hash) {
    echo "ファイル検証が渡されました,ファイルはそのままで、解除されています。";
} else {
    echo "ファイル検証に失敗しました,ファイルに改ざんされる場合があります。";
}
?>

URLを使用する例

ネットワークを介してダウンロードされたファイルを確認する必要がある場合があります。ファイルがhttp://m66.net/files/sample.txtに保存されていると仮定すると、ファイルをローカルに保存してから、 md5_file()を使用してハッシュ値を計算できます。

 <?php
$url = 'http://m66.net/files/sample.txt';
$temp_file = '/tmp/sample.txt';

// ファイルをダウンロードします
file_put_contents($temp_file, file_get_contents($url));

// 計算しますMD5
$hash = md5_file($temp_file);
echo "下载提出MD5ハッシュ値はです: " . $hash;

// 一時ファイルを削除します
unlink($temp_file);
?>

要約します

  • MD5_FILE()は、ファイルMD5ハッシュを計算するための便利なツールであり、ほとんどのファイル検証シナリオに適しています。

  • ファイルのダウンロードと組み合わせて、最初にリモートファイルを保存してから計算できます。

  • ハッシュ値を比較することにより、ファイルの整合性とセキュリティをすばやく判断できます。

MD5_FILE()関数を使用すると、ファイル処理中のデータセキュリティを効果的に改善でき、PHPファイル操作において不可欠な実用的な機能です。