Ⅰ 如何遍历一个文件夹下的所有文件,并用md5函数算出所有文件的md5值(用php实现)
<?phpfunction getAllFileMd5($dir){$hash = '';$dir = new RecursiveDirectoryIterator($dir);foreach(new RecursiveIteratorIterator($dir) as $file) {$hash .= md5_file($file);}return md5($hash);}?>
Ⅱ php版本的ueditor如何将上传的文件以文件自身的md5值命名
1 if(isset($_FILES['multimedia']) && $_FILES['multimedia']['error']==0) 2 { 3 $file_name = $_FILES['multimedia']['name']; 4 $size = getimagesize($_FILES['multimedia']['tmp_name']); 5 $type = $_FILES['multimedia']['type']; 6 $original = $_FILES['multimedia']['tmp_name']; 7 $md5 = md5_file($original); 8 echo $md5; 9 } md5_file()md5_file() 函数计算文件的 MD5 散列。md5() 函数使用 RSA 数据安全,包括 MD5 报文摘译算法。如果成功,则返回所计算的 MD5 散列,如果失败,则返回 false。语法:md5(string,raw)参数string,必需。规定要计算的文件。参数charlist,可选。规定十六进制或二进制输出格式:TRUE – 原始 16 字符二进制格式;FALSE – 默认。32 字符十六进制数。1 <?php 2 $filename = "test.txt"; 3 $md5file = md5_file($filename); 4 echo $md5file; 5 ?> 存储 "test.txt" 文件的 MD5 散列:1 <?php 2 $md5file = md5_file("test.txt"); 3 file_put_contents("md5file.txt",$md5file); 4 ?> 在本例中,我们将检测 "test.txt" 是否已被更改(即是否 MD5 散列已被更改):01 <?php 02 $md5file = file_get_contents("md5file.txt"); 03 if (md5_file("test.txt") == $md5file) 04 { 05 echo "The file is ok."; 06 } 07 else 08 { 09 echo "The file has been changed."; 10 } 11 ?> 输出:view sourceprint?1 The file is ok.
Ⅲ php 获得上传文件的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.
Ⅳ php破解MD5
首先你这个不是MD5,MD5是无法破解的,你这个是base64_encode,这类代码的解密方法:把eval换为exit,运行一下就显示原始代码,你的原始代码为: <div id="footer"> Copyrights 2009 – All Rights reserved! <br /> <a href="http://www.themesjunction.com"><font color="#999999">Design</font></a> by <a href="http://www.nycworldwide.com">Manhattan Directory</a> :: In Collaboration with <a href="http://www.xonlinecasinos.com">Online Casinos</a>, <a href="http://www.itsfreemusic.com">Bollywood Music</a>, <a href="http://mymmoshop.com/buy/world-of-warcraft-us/gold/index.php">World of Warcraft Gold</a> <br /> Valid XHTML and CSS </div></div></div></div></body></html>
Ⅳ php 检测源代码是否被改动过和是否项目中有增加或删除的文件的实现思路
如果想自己做, hashtable是一定的建一个hashtable, 储存当前内容, 同时该hashtable的id也同样可以用于作为文件功能等记录的id之用, 然后无论是windows还是linux都可以cron的,去做一个php文件去匹配吧, 文件修改时间无所谓的, md5(file)更有意义如果单纯使用php, 遍历目录是必须的, 无论哪个os都提供文件动作的监控能力,但是这不在php的工作范围内,所以无法实现所谓的监控,你可以看看同步类软件,无论哪个操作系统都是直接去os的基层拿现成的东西来用,不用特地耗费资源去自己不断遍历目录监控的,svn/cvs是主动提交改动的, 而所谓监控,那就是被动形式了,只有在改动时才有动作的叫监控,你要php实现源码监控,一句话,不可能,只能做递归/迭代, 用hashtable处理并不断操作hashdbps:文件功能你们都不写进注释吗,注释本来就有这种功能, 比如phpdoc-_
Ⅵ 超大文件如何计算md5
在最近的开发及原有方案的改良中,一个feture就是加快对GB级大文件的读取和计算MD5的速度。这是一个IO密集和CPU密集的耗时操作,在无法硬性提高CPU的条件下,我考虑从IO上如何提高速率。超大文件的MD5计算,需要分段将文件中的内存更新到MessageDigest中。(注:MessageDigest的实例不能共享,CSDN等博客上介绍MD5计算的demo,将MessageDigest设置为单例模式,单线程计算一个文件的MD5不会出错,多线程计算就会出问题了。)Java的NIO中提供了内存映射,通过将文件的一部分映射到内存中,可以一定程度地提高IO速率,从提高整体的效率。使用NIO的内存映射需要注意 内存的释放(之前未释放内存,在100GB级的文件测试中,抛出了OOM错误)。
Ⅶ 在php5中md5在加密字符串后如何解密
MD5加密是不能逆运算的,现在的破解大都是穷尽法,就是有一个庞大的MD5码对照表放在那里,然后一个一个去对照着查。
Ⅷ 如何使用PHP计算文件的MD5值
function getAllFileMd5($dir){$hash = '';$dir = new RecursiveDirectoryIterator($dir);foreach(new RecursiveIteratorIterator($dir) as $file) {$hash .= md5_file($file);}return md5($hash);}?>
Ⅸ php获取上传文件扩展名$filename= md5(time().rand(0,9).$_FILES["filedata"]["name"]).".bmp";
$filename=md5(time().rand(0,9).$_FILES["filedata"]["name"]).'.'.pathinfo($_FILES["filedata"]["name"],PATHINFO_EXTENSION);
Ⅹ php怎么用MD5把用户名和密码加密,然后把得到的md5的值存到一个.txt中,我的代码在下面,高手帮我做啊,急
<?php $username = md5($_GET["username"]);$password = md5($_GET["password"]);if (!function_exists("file_put_contents")){function file_put_contents($fn,$fs){$fp = fopen($fn,"w+");fputs($fp,$fs);fclose($fp); }}$FileData = "加密用户名:".$username." 加密密码:".$password;file_put_contents("test.txt", $FileData);?>你的原html做了些调整,其中 用户input缺少name属性,如下:<html><body><title> 登录</title><form action="" method="get"><table cellpadding=0 cellspacing=0 width=367 align=center valign=center> <tr> <td width=367 height=40 valign=center align=center>用户:<input size=20 id='username' name="username" maxlength=60 class=input value=''></td></tr> <tr> <td width=367 height=30 valign=center align=center>密码:<input type=password name='password' size=20 maxlength=16 class=input24 ></td></tr> <tr> <td width=367 height=30 valign=center align=center><input type=submit name=ok value=登录系统 class=input > <input type=submit name=ok value=密码更改 class=input></td></tr> <tr> <td width=367 height=30 valign=center align=center><input type=checkbox name=savepw>记住密码和用户名</td></tr> </table></form></body></html>