Hướng dẫn
Quảng cáo

Hàm md5_file() trong PHP

Hướng dẫn cách sử dụng hàm md5_file() trong lập trình PHP

Tác dụng của hàm md5_file()

Hàm md5_file()tính toán hàm băm MD5 (Message-Digest Algorithm 5) của một tệp.

Hàm này tính toán hàm băm MD5 của tệp bằng thuật toán RSA Data Security, Inc. MD5 Message-Digest Algorithm và trả về hàm băm đó. Để tính hàm băm MD5 của một chuỗi, hãy sử dụng hàm md5() .

Bảng sau đây tóm tắt các chi tiết kỹ thuật của chức năng này.

Giá trị trả về: Trả về hàm băm MD5 khi thành công hoặc FALSEthất bại.
Phiên bản: PHP 4.2.0+

cú pháp

Cú pháp cơ bản của md5_file()hàm được đưa ra với:

md5filename , raw_format );

Ví dụ sau đây cho thấy md5_file()chức năng đang hoạt động.

Ví dụ

<?php
// Sample file
$filename = "hello.txt"; // Contains the text "Hello World!"

// Calculating the hash
echo md5_file($filename);
?>

Đầu ra của ví dụ trên sẽ giống như thế này:

ed076287532e86365e841e92bfc50d8c
 

Mẹo: Hàm md5_file()thường được sử dụng để tạo mã băm duy nhất cho một tệp được gửi qua mạng. Vì vậy, sau khi tải xuống tệp, người dùng có thể xác minh tính toàn vẹn của nó bằng cách tính hàm băm MD5 và so sánh nó với mã băm được cung cấp cùng với bản phân phối. Quá trình này giúp đảm bảo rằng các tệp được truyền qua mạng không bị hỏng.


Thông số

Hàm md5_file()chấp nhận các tham số sau.

Tham số Sự miêu tả
string Yêu cầu. Chỉ định tên của tệp để tạo hàm băm từ đó.
raw_format Không bắt buộc. Nếu được đặt thành true, nó sẽ trả về hàm băm ở định dạng nhị phân thô với độ dài là 16. Giá trị mặc định là giá trị falsetrả về hàm băm dưới dạng số thập lục phân gồm 32 ký tự.

Thêm ví dụ

Dưới đây là một số ví dụ khác cho thấy md5_file()chức năng thực sự hoạt động như thế nào:

Các ví dụ sau minh họa cách xác minh tệp cho bất kỳ thay đổi nào bằng chức năng này.

Mã PHP bên dưới trước tiên lưu trữ hàm băm MD5 của tệp trong tệp văn bản.

Ví dụ

<?php
// Sample file
$file = "config.php";

// Storing the MD5 hash of config file in "hash.txt" file
file_put_contents("hash.txt", md5_file($file));
?>

Và mã PHP sau đây tính toán và so sánh hàm băm MD5 của tệp "config.php" với hàm băm MD5 ban đầu của nó được lưu trữ trong "hash.txt" và cho chúng tôi biết liệu nó có được sửa đổi hay không.

Ví dụ

<?php
// Retrieving the stored MD5 hash
$prev_hash = file_get_contents("hash.txt");

// Verifying the current MD5 hash with previous one
if(md5_file("config.php") == $prev_hash){
    echo "There has been no change in the file.";
} else{
    echo "The file has been modified.";
}
?>

Bài viết này đã giúp ích cho bạn?

Bài viết mới

Advertisements