Search w3schools.com:

SHARE THIS PAGE

PHP md5_file() Function

PHP String Reference Complete PHP String Reference

Example

Calculate the MD5 hash of the text file "test.txt":

<?php
$filename = "test.txt";
$md5file = md5_file($filename);
echo $md5file;
?>

The output of the code above will be:

d41d8cd98f00b204e9800998ecf8427e


Definition and Usage

The md5_file() function calculates the MD5 hash of a file.

The md5_file() function uses the RSA Data Security, Inc. MD5 Message-Digest Algorithm.

From RFC 1321 - The MD5 Message-Digest Algorithm: "The MD5 message-digest algorithm takes as input a message of arbitrary length and produces as output a 128-bit "fingerprint" or "message digest" of the input. The MD5 algorithm is intended for digital signature applications, where a large file must be "compressed" in a secure manner before being encrypted with a private (secret) key under a public-key cryptosystem such as RSA."

To calculate the MD5 hash of a string, use the md5() function.


Syntax

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:
  • TRUE - Raw 16 character binary format
  • FALSE - Default. 32 character hex number

Technical Details

Return Value: Returns the calculated MD5 hash on success, or FALSE on failure
PHP Version: 4+
Changelog: The raw parameter was added in PHP 5.0

As of PHP 5.1, it is possible to use md5_file() with wrappers, e.g. md5_file("http://w3schools.com/..")


More Examples

Example 1

Store the MD5 hash of "test.txt" in a file:

<?php
$md5file = md5_file("test.txt");
file_put_contents("md5file.txt",$md5file);
?>

Test if "test.txt" has been changed (that is if the MD5 hash has been changed):

<?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 output of the code above could be:

The file is ok.



PHP String Reference Complete PHP String Reference

W3Schools Certification

W3Schools' Online Certification

The perfect solution for professionals who need to balance work, family, and career building.

More than 10 000 certificates already issued!

Get Your Certificate »

The HTML Certificate documents your knowledge of HTML.

The HTML5 Certificate documents your knowledge of advanced HTML5.

The CSS Certificate documents your knowledge of advanced CSS.

The JavaScript Certificate documents your knowledge of JavaScript and HTML DOM.

The jQuery Certificate documents your knowledge of jQuery.

The XML Certificate documents your knowledge of XML, XML DOM and XSLT.

The ASP Certificate documents your knowledge of ASP, SQL, and ADO.

The PHP Certificate documents your knowledge of PHP and SQL (MySQL).

Your suggestion:

Close [X]

Thank You For Helping Us!

Your message has been sent to W3Schools.

Close [X]