【问题标题】:php script that gives md5 of a online file提供在线文件 md5 的 php 脚本
【发布时间】:2013-08-31 11:22:04
【问题描述】:

嗨,我正在寻找一个脚本,通过链接为我提供文件的 md5 我已经准备好一个脚本,该脚本提供文件夹中文件的 md5,但现在我想添加一个脚本,将链接粘贴到文件并打印出 md5 如果有人知道如何制作这个请告诉我

我拥有的代码:

<?php
$cwd = $_SERVER['REQUEST_URI'];
$cwd = substr($cwd, 0, strrpos($cwd, '/' + 1));

function paintUndersideOfFox($c) {
global $cwd;
echo('<ul class="dirlist">');
$d = opendir($c);
while($f = readdir($d)) {
  if(strpos($f, '.') === 0) continue;
  $ff = $c . '/' . $f;
  echo 'MD5 file hash of ' . $ff . ': ' . md5_file($ff);
  echo('<li><a href="' . $cwd . $ff . '">' . $ff . '</a></li><br />');
  if(is_dir($ff)) paintUndersideOfFox($ff);
 }
 echo('</ul>');
}

paintUndersideOfFox('.');
?>

【问题讨论】:

    标签: php md5 checksum


    【解决方案1】:

    大多数文件系统函数都适用于流,包括 HTTP。你试过了吗

    md5_file("http://remotelocation/file")
    

    【讨论】:

    • 是的,我知道,但它必须是这样的,输入表单(这里是 url)按钮(开始计算)脚本获取文件获取 md5,然后从服务器中删除文件
    • 如果您在计算文件的 md5 后再次删除它,那么将文件放入文件系统有什么意义
    • 只是一个建议,如果它可以计算 md5 而无需下载对我来说很好
    • 那是什么问题。您从表单中获得了文件的 url,只需按照我在回答中提到的方式使用它即可。
    【解决方案2】:

    可以通过file_get_contents() 或使用 CURL 更安全地下载文件

    【讨论】:

    • 需要注意的一点是,一些虚拟主机提供商阻止了 file_get_contents() 下载远程文件的能力,但 curl 可以正常工作
    • 嗯,有很多方法,实际上其他建议的答案很有意义:md5_file("urlfromtheform.com/file"); 可选:md5(file_get_contents('urlfromtheform.com/file'));
    • 如果由于某种原因您不能使用这些方法(例如,您的托管服务提供商阻止了此功能),您可以参考这个 SO 答案 stackoverflow.com/questions/6409462/… -> 顺便说一句,在询问您是否应该尝试搜索类似的答案,有很多...例如:stackoverflow.com/questions/2304081/…
    • 我需要一个预制脚本
    猜你喜欢
    • 2013-09-04
    • 1970-01-01
    • 1970-01-01
    • 2017-02-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-08-30
    相关资源
    最近更新 更多