首頁 >後端開發 >php教程 >php對檔案進行hash運算

php對檔案進行hash運算

WBOY
WBOY原創
2016-07-25 08:43:181043瀏覽

這段程式碼非常有用,如果你下載了一個文件,網站提供了hash結果,你可以對你下載下來的文件進行hash運算,以驗證下載的文件是否正確。

  1. 雜湊(檢查)檔案
  2. if(!empty($_FILES)){
  3. if ($_FILES["file"]["error"] > 0){
  4. switch($_FILES[" file"]["error"]) {
  5. case 1:
  6. echo "錯誤:上傳的檔案超出了php.ini 中的upload_max_filesize 指令";
  7. break; case 2:
  8. echo "錯誤:上傳的檔案超出了HTML 表單中指定的MAX_FILE_SIZE 指令。 b>
    ";
  9. break;
  10. casease 3:
  11. echo "錯誤:上傳的檔案僅部分上傳。";
  12. 中斷;
  13. 情況4:
  14. echo " 錯誤:未上傳檔案。暫存資料夾。
    ";
  15. 中斷;
  16. 案例8:
  17. echo "錯誤:PHP 擴充停止了檔案上傳。中斷;
  18. 預設值:
  19. echo "發生未知錯誤。
    ";
  20. }
  21. } else {
  22. echo '上傳:' . $_FILES['檔案']['名稱'] 。 '
    ';
  23. echo '類型:' 。 $_FILES['檔案']['類型'] 。 '
    ';
  24. echo '尺寸:' 。 (round($_FILES['檔案']['大小'] / 1024, 2)) 。 ' Kb

    ';
  25. if(array_search($_POST['algo'], hash_algos())===false){
  26. echo '請求未知的雜湊演算法。
    ';
  27. } else {
  28. echo '雜湊演算法:'。 $_POST['演算法'] 。 '
    ';
  29. $hash = hash_file($_POST['algo'], $_FILES['file']['tmp_name']);
  30. echo '計算出的雜湊值: ' . $哈希。 '
    ';
  31. if($_POST['exphash']!=='none' && !empty($_POST['exphash'])){
  32. echo '預期雜湊值:    ; ' 。 $_POST['exphash'] 。 '

    ';
  33. echo ($hash==$_POST['exphash'])? '雜湊值與預期值相符。 ' : '哈希與預期值不符。 ';
  34. echo '
    ';
  35. }
  36. }
  37. }
  38. ?>

  39. }else {
  40. ?>



  41. 選擇演算法(這是php 安裝中所有可用演算法的清單)
  42. foreach(hash_algos() as $algo){
  43. if($algo=='md5'){
  44. echo "
    ";
  45. } else {
  46. echo "
    ";
  47. }
  48. }
  49. ?>
  50. ;
  51. }
  52. ?>
複製程式碼

php,哈希


陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn