zoukankan      html  css  js  c++  java
  • php 在web端读出pdf 与各种文件下载

     单纯的下载功能实现

    <?php
    // 表示调用文本类型为pdf的应用
    header('Content-type: application/pdf');
    
    // 这句可以输出下载页面进行下载
    header('Content-Disposition: attachment; filename="downloaded.pdf"');
    
    // 能够读出pdf
    readfile('original.pdf');
    ?>
    

      

    实现各种文件的下载方法:

    <?php 
    
    $file="N1.PDF";
    
    downloadFile($file);
    function downloadFile( $fullPath ){ 
    
      // Must be fresh start 
      if( headers_sent() ) 
        die('Headers Sent'); 
    
      // Required for some browsers 
      if(ini_get('zlib.output_compression')) 
        ini_set('zlib.output_compression', 'Off'); 
    
      // File Exists? 
      if( file_exists($fullPath) ){ 
        
        // Parse Info / Get Extension 
        $fsize = filesize($fullPath); 
        $path_parts = pathinfo($fullPath); 
        $ext = strtolower($path_parts["extension"]); 
        
        // Determine Content Type 
        switch ($ext) { 
          case "pdf": $ctype="application/pdf"; break; 
          case "exe": $ctype="application/octet-stream"; break; 
          case "zip": $ctype="application/zip"; break; 
          case "doc": $ctype="application/msword"; break; 
          case "xls": $ctype="application/vnd.ms-excel"; break; 
          case "ppt": $ctype="application/vnd.ms-powerpoint"; break; 
          case "gif": $ctype="image/gif"; break; 
          case "png": $ctype="image/png"; break; 
          case "jpeg": 
          case "jpg": $ctype="image/jpg"; break; 
          default: $ctype="application/force-download"; 
        } 
    
        header("Pragma: public"); // required 
        header("Expires: 0"); 
        header("Cache-Control: must-revalidate, post-check=0, pre-check=0"); 
        header("Cache-Control: private",false); // required for certain browsers 
        header("Content-Type: $ctype"); 
        header("Content-Disposition: attachment; filename="".basename($fullPath)."";" ); 
        header("Content-Transfer-Encoding: binary"); 
        header("Content-Length: ".$fsize); 
        ob_clean(); 
        flush(); 
        readfile( $fullPath ); 
    
      } else 
        die('File Not Found'); 
    
    }
    
    
    
    ?>
    

      PHP 扒网页资源 ,测试能扒网页和ZIP 只是要想办法知道格式

    <?php 
     
    $file="http://www.yinghy.com/index.php";
     
     
    
        header("Pragma: public"); // required
        header("Expires: 0");
        header("Cache-Control: must-revalidate, post-check=0, pre-check=0");
        header("Cache-Control: private",false); // required for certain browsers
        header("Content-Type: application/force-download");
        header("Content-Disposition: attachment; filename="index.html"" );
        header("Content-Transfer-Encoding: binary");
        header("Content-Length: ".filesize("index.php"));
        ob_clean();
        flush();
        readfile($file);
     
     
    ?>
    

      

  • 相关阅读:
    HDU1565_方格取数(1)
    HDU3046_Pleasant sheep and big big wolf
    HDU4183_Pahom on Water
    「zoj2314」Reactor Cooling (无源汇上下界可行流)
    [ACM-ICPC 2018 沈阳网络赛] G. Spare Tire (思维+容斥)
    [ACM-ICPC 2018 沈阳网络赛] D. Made In Heaven (k短路模板)
    lct,半平面交,线性基,k短路
    P3950 部落冲突 (LCT暴力)
    P4219 [BJOI2014]大融合 ( LCT维护虚实子树size )
    P3203 [HNOI2010]弹飞绵羊(LCT维护链的size + 思维)
  • 原文地址:https://www.cnblogs.com/sunxun/p/4470648.html
Copyright © 2011-2022 走看看