PHP获取文件的MD5值并判断是否被修改的例子

yipeiwu_com6年前PHP代码库

由于需要判断上传的文件是否被修改过,需要记录上传文件的md5值,这里记录一下获取文件md5值的方法。

复制代码 代码如下:

if(isset($_FILES['multimedia']) && $_FILES['multimedia']['error']==0)
{
 $file_name = $_FILES['multimedia']['name'];
 $size = getimagesize($_FILES['multimedia']['tmp_name']);
    $type = $_FILES['multimedia']['type'];
 $original = $_FILES['multimedia']['tmp_name'];
 $md5 = md5_file($original);
 echo $md5;
}

md5_file()

md5_file() 函数计算文件的 MD5 散列。md5() 函数使用 RSA 数据安全,包括 MD5 报文摘译算法。如果成功,则返回所计算的 MD5 散列,如果失败,则返回 false。

语法:md5(string,raw)

参数string,必需。规定要计算的文件。

参数charlist,可选。规定十六进制或二进制输出格式:TRUE - 原始 16 字符二进制格式;FALSE - 默认。32 字符十六进制数。

复制代码 代码如下:

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

存储 "test.txt" 文件的 MD5 散列:

复制代码 代码如下:

<?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.

PS:这里再为大家提供2款MD5加密工具,感兴趣的朋友可以参考一下:

MD5在线加密工具:

http://tools.jb51.net/password/CreateMD5Password

在线MD5/hash/SHA-1/SHA-2/SHA-256/SHA-512/SHA-3/RIPEMD-160加密工具:

http://tools.jb51.net/password/hash_md5_sha

相关文章

总结一些PHP中好用但又容易忽略的小知识

本文主要给大家总结了PHP中一些好用的小知识,分享出来供大家参考学习,下面来看看详细的介绍: 1、PHP函数之判断函数是否存在 当我们创建了自定义函数,并且了解了可变函数的用法,为了确保...

PHP简单获取多个checkbox值的方法

本文实例讲述了PHP简单获取多个checkbox值的方法。分享给大家供大家参考,具体如下: HTML页面: <html> <head> </head...

PHP正则解析多重循环模板示例

本文实例讲述了PHP正则解析多重循环模板。分享给大家供大家参考,具体如下: $str = "客户您好,为您推荐以下项目:(crm{项目2:项目名称} (crm{项目3:项目名称}cr...

php通过文件头判断格式的方法

本文实例讲述了php通过文件头判断格式的方法。分享给大家供大家参考,具体如下: function judgeFile($file,$form){ if(!empty($file) &...

PHP读写文件高并发处理操作实例详解

本文实例讲述了PHP读写文件高并发处理操作。分享给大家供大家参考,具体如下: 背景: 最近公司游戏开发需要知道游戏加载的流失率。因为,我们做的是网页游戏。玩过网页游戏的人都知道,进入游戏...