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 Message-Digest: "อัลกอริทึมการแยกข้อความ 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+ |
บันทึกการเปลี่ยนแปลง: | เพิ่มพารามิเตอร์raw ใน PHP 5.0 ตั้งแต่ PHP 5.1 คุณสามารถใช้ md5_file() กับ wrappers เช่น 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