md5_file
تابع md5_file «هش فایل md5» می سازد. «هش (Hash)» خلاصه ی یکتا از داده است. مثل میانبر اسم فایل برای چکِ تغییر.
تعریف و کاربرد
md5_file() هش MD5 از فایل می گیرد. خروجی پیش فرض هگز 32 کاراکتری است. اگر raw برابر true باشد، خروجی دودویی 16 بایتی می دهد.
هش فایل md5 برای رشته هم با تابع md5 موجود است.
سینتکس
md5_file(file, raw)
مثال 1: هش گرفتن از یک فایل متنی
<?php
$filename = "test.txt";
$md5file = md5_file($filename);
echo $md5file;
?>
مثال 2: ذخیره و بررسی تغییر فایل
<?php
$md5file = md5_file("test.txt");
file_put_contents("md5file.txt", $md5file);
?>
<?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.";
}
?>
گام های عملی
- مسیر فایل را مشخص کن.
- تابع
md5_fileرا صدا بزن. - هش را ذخیره یا مقایسه کن.
نکته: برای خواندن و نوشتن فایل ها از file_get_contents و file_put_contents کمک بگیر.
جمع بندی سریع
- md5_file هش 128 بیتی فایل می دهد.
- پیش فرض، خروجی هگز 32 کاراکتر است.
- با
raw=trueخروجی دودویی است. - برای تشخیص تغییر فایل عالی است.