找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 748|回复: 0
打印 上一主题 下一主题

php对文件进行hash运算的方法

[复制链接]

2647

主题

2647

帖子

7881

积分

论坛元老

Rank: 8Rank: 8

积分
7881
跳转到指定楼层
楼主
发表于 2018-2-14 05:47:15 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

            本文实例讲述了php对文件进行hash运算的方法。分享给大家供大家参考。具体如下:
这段代码非常有用,如果你下载了一个文件,网站提供了hash结果,你可以对你下载下来的文件进行hash运算,以验证下载的文件是否正确。
  Hash (Check) Files
  
   #ok{color:green;}
   #nono{color:red;}
  

  0){
    switch($_FILES["file"]["error"]){
     case 1:
     echo "Error: The uploaded file exceeds the upload_max_filesize directive in php.ini
";
     break;
     case 2:
     echo "Error: The uploaded file exceeds the MAX_FILE_SIZE directive that was specified in the HTML form.
";
     break;
     case 3:
     echo "Error: The uploaded file was only partially uploaded.
";
     break;
     case 4:
     echo "Error: No file was uploaded.
";
     break;
     case 6:
     echo "Error: Missing a temporary folder.
";
     break;
     case 7:
     echo "Error: Failed to write file to disk.
";
     break;
     case 8:
     echo "Error: A PHP extension stopped the file upload.
";
     break;
     default:
     echo "Unknown error occured.
";
    }
   } else {
    echo 'Upload: ' . $_FILES['file']['name'] . '
';
    echo 'Type: ' . $_FILES['file']['type'] . '
';
    echo 'Size: ' . (round($_FILES['file']['size'] / 1024, 2)) . ' Kb
';
    if(array_search($_POST['algo'], hash_algos())===false){
    echo 'Unknown hashing algorithm requested.
';
    } else {
    echo 'Hashing Algorithm: '. $_POST['algo'] . '
';
    $hash = hash_file($_POST['algo'], $_FILES['file']['tmp_name']);
    echo 'Calculated hash: ' . $hash . '
';
    if($_POST['exphash']!=='none' && !empty($_POST['exphash'])){
      echo 'Expected hash:   ' . $_POST['exphash'] . '
';
      echo ($hash==$_POST['exphash'])? 'Hash matched expected value.' : 'Hash did not match expected value.';
      echo '
';
    }
    }
   }
   ?>
   
   Again
   
  
   
   Filename:
   
   
   Expected hash(optional):
   
Choose an algorithm (This is the list of all the available algorithms in your php installation)
   $algo
";
    } else {
    echo "$algo
";
    }
   }
   ?>
  


希望本文所述对大家的php程序设计有所帮助。
            
            
您可能感兴趣的文章:
  • php 数学运算验证码实现代码
  • PHP几个数学计算的内部函数学习整理
  • 第四章 php数学运算
  • PHP常用特殊运算符号和函数总结(php新手入门必看)
  • (PHP实现)只使用++运算实现加法,减法,乘法,除法
  • php中的比较运算符详解
  • php常用数学函数汇总
  • ThinkPHP自定义函数解决模板标签加减运算的方法
  • 非常全面的php日期时间运算汇总
  • php实现可运算的验证码
  • 简单谈谈php浮点数精确运算
  • PHP数学运算函数大汇总(经典值得收藏)
            
  • 分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
    收藏收藏
    回复

    使用道具 举报

    您需要登录后才可以回帖 登录 | 立即注册

    本版积分规则

    用户反馈
    客户端