sha1_file
تابع sha1_file «هش فایل» می سازد. «هش (Hash)» یک اثرانگشت ثابت است. اگر فایل عوض شود، هش هم عوض می شود. برای شروع سریع این لینک را ببین: هش فایل با sha1_file.
تعریف و کاربرد
sha1_file() هش SHA-1 یک فایل را حساب می کند. نتیجه یا رشته هگز 40 کاراکتری است یا باینری 20 بایتی.
نکته: روی برخی سیستم ها می توان از «wrapper» ها استفاده کرد؛ مثل آدرس های https://.
سینتکس
sha1_file(file, raw)
- file: مسیر فایل برای محاسبه هش.
- raw: اگر
trueباشد، خروجی باینری می دهد؛ در غیر این صورت هگز.
مثال 1: محاسبه هش یک فایل متنی
<?php
$filename = "test.txt";
$sha1file = sha1_file($filename);
echo $sha1file;
?>
مثال 2: ذخیره هش و بررسی تغییر فایل
<?php
$hash = sha1_file("test.txt");
file_put_contents("sha1file.txt", $hash);
$stored = file_get_contents("sha1file.txt");
if (sha1_file("test.txt") == $stored) {
echo "The file is ok.";
} else {
echo "The file has been changed.";
}
?>
مثال 3: خروجی باینری به جای هگز
<?php
$bin = sha1_file("test.txt", true);
$len = strlen($bin);
echo "Binary length: " . $len;
?>
گام های عملی
- مسیر فایل را مشخص کن.
sha1_fileرا اجرا کن.- نتیجه را نمایش یا ذخیره کن.
نکته: برای هش رشته از sha1 استفاده کن. برای خواندن/نوشتن فایل ها هم از file_get_contents و file_put_contents کمک بگیر.
جمع بندی سریع
sha1_fileهش فایل را می سازد.- خروجی پیش فرض هگز 40 کاراکتری است.
- با
raw=trueخروجی باینری می گیری. - می توانی هش را ذخیره و مقایسه کنی.