PHP md5_file()Функция
Справочное руководство по строкам PHP
Примеры
Вычислить MD5-хэш текстового файла "test.txt":
$filename = "test.txt";
$md5file = md5_file($filename);
echo $md5file;
?>
Приведённый выше код выведет:
Определение и использование
Функция md5_file() вычисляет MD5-хэш файла.
Функция md5_file() использует криптографическую защиту данных RSA, включая алгоритм дайджеста сообщений MD5.
Из RFC 1321 - Алгоритм дайджеста сообщений MD5:Алгоритм дайджеста сообщений MD5 принимает сообщение произвольной длины на вход и преобразует его в 128-битное значение "отпечаток" или "дайджест сообщения", представляющее этот вход, при этом преобразованное значение является результатом. Алгоритм MD5 в первую очередь предназначен для приложений цифровой подписи; в этом приложении цифровой подписи более крупный файл сжимается безопасным образом перед шифрованием (где процесс шифрования осуществляется путем установки закрытого ключа под открытым ключом в криптосистеме, такой как RSA).
Чтобы вычислить MD5-хэш строки, используйте md5()функцию.
Синтаксис
| Параметр | Описание |
|---|---|
| файл | Обязательный. Указывает файл, для которого вычисляется хеш. |
| raw | Необязательный. Логическое значение, указывающее шестнадцатеричный или двоичный формат вывода:
|
Технические детали
| Возвращаемое значение: | Возвращает вычисленный хеш MD5 в случае успеха или FALSE при ошибке. |
|---|---|
| Версия PHP: | 4.2.0+ |
| Список изменений: | В PHP 5.0 параметрrawстал необязательным. Начиная с PHP 5.1, md5_file() можно использовать с обёртками. Например: md5_file("http://w3cschool.cc/..") |
Другие примеры
Пример 1
Сохраните MD5-хеш "test.txt" в файл:
$md5file = md5_file("test.txt");
file_put_contents("md5file.txt",$md5file);
?>
Определить, был ли изменён "test.txt" (то есть был ли изменён хеш MD5):
$md5file = file_get_contents("md5file.txt");
if (md5_file("test.txt") == $md5file)
{
echo "The file is ok.";
}
else
{
echo "The file has been changed.";
}
?>
Приведённый выше код выведет:
Справочное руководство по строкам PHP Другие расширения