Функция PHP md5_file()
Пример
Вычислите хэш MD5 текстового файла «test.txt»:
<?php
$filename = "test.txt";
$md5file = md5_file($filename);
echo $md5file;
?>
Вывод кода выше будет:
d41d8cd98f00b204e9800998ecf8427e
Определение и использование
Функция md5_file() вычисляет хэш MD5 файла.
Функция md5_file() использует алгоритм RSA Data Security, Inc. MD5 Message-Digest.
Из RFC 1321 - Алгоритм дайджеста сообщения MD5: «Алгоритм дайджеста сообщения MD5 принимает в качестве входных данных сообщение произвольной длины и создает на выходе 128-битный «отпечаток пальца» или «дайджест сообщения» ввода. Алгоритм MD5 предназначен для приложений цифровой подписи, где большой файл должен быть «сжат» безопасным образом перед шифрованием с помощью закрытого (секретного) ключа в криптосистеме с открытым ключом, такой как RSA».
Чтобы вычислить хэш строки MD5, используйте функцию md5() .
Синтаксис
md5_file(file,raw)
Значения параметров
Parameter | Description |
---|---|
file | Required. The file to be calculated |
raw | Optional. A boolean value that specifies hex or binary output format:
|
Технические детали
Возвращаемое значение: | Возвращает рассчитанный хэш MD5 в случае успеха или FALSE в случае ошибки. |
---|---|
Версия PHP: | 4.2.0+ |
Список изменений: | Необработанный параметр был добавлен в PHP 5.0 . Начиная с PHP 5.1, можно использовать md5_file() с обертками, например, md5_file("https://w3schools.com/..") |
Дополнительные примеры
Пример
Сохраните хеш MD5 «test.txt» в файле:
<?php
$md5file = md5_file("test.txt");
file_put_contents("md5file.txt",$md5file);
?>
Проверьте, был ли изменен «test.txt» (то есть был ли изменен хэш MD5):
<?php
$md5file = file_get_contents("md5file.txt");
if (md5_file("test.txt") == $md5file)
{
echo "The file is ok.";
}
else
{
echo "The file has been changed.";
}
?>
Вывод кода выше может быть:
The file is ok.
❮ Справочник по строкам PHP