1. <output id="hzk7v"><pre id="hzk7v"><address id="hzk7v"></address></pre></output>
      <output id="hzk7v"></output>
    2. <nav id="hzk7v"><i id="hzk7v"><em id="hzk7v"></em></i></nav>
    3. <listing id="hzk7v"><delect id="hzk7v"><em id="hzk7v"></em></delect></listing>

      详解PHP素材图片上传¡¢下载功能

       更新时间£º2019年04月12日 11:38:06   作者£ºMillionGao   我要评论

      这篇文章主要介绍了PHP图片上传下载功能£¬文中通过示例代码介绍的非常详细£¬对大家的学习或者工作具有一定的参考学习价值£¬需要的朋友们下面随着小编来一起学习学习吧

       这里的下载?#24039;?#25104; zip 包进行下载£¬所以需要 PHP 的ZipArchive ()类£¬使用本类£¬linux需开启zlib£¬windows需取消php_zip.dll前的注释¡£并且不包括 oss 之类的三方

      上传

      上传就很简单了£¬PHP ?#28304;?#30340; move_uploaded_file£¨£©函数就可以使用我们简单的文件上传了¡£

      我们只需要把文件的路径存到数据库方便我们下载或展示时使用就 OK了¡£

      这里需要注意上传的路径和文件名尽量不要包括中文¡£

      下载

      下载文件我们需要临时生成一个服务器的 zip 包£¬然后设?#20204;?#27714;头最后删除服务器生成的临时 zip 包就 OK 了¡£下面直接上代码£º

      $filename = rand(0, 999).'.zip';
      $zip = new ZipArchive();
      /*
      * $zip->open 这个方法的第一参数是要处理的文件名
      * 第二个表示处理模式¡£
      * ZipArchive::CREATE£¬系统会往原来的zip 文件内追加内容
      * ZipArchive::OVERWRITE 是防止系统多次添加同一个文件到 zip 中
      */
      $zip->open($filename, ZipArchive::CREATE | ZipArchive::OVERWRITE);
      // 添加文件内容到zip 文档
      $zip->addFromString(/*文件名称*/£¬ /*文件内容*/);
      
      // 设?#20204;?#27714;头£¬下载压缩包£¬并且删除服务器上的临时 zip 文件
      Header("Content-type: application/octet-stream");
      Header("Accept-Ranges: bytes");
      Header("Accept-length: ".$filename); // 后面要拼接你的zip 文件名
      Header("Content-Disposition: attachment; filename=images.zip"); // 这里的 filename 是你要下载的 zip 包的名称
      
      // 一次只传输1024个字节的数据给客户端
      $buffer = 1024;
      while(!feof($file)) {
       // 将文件读入内存
       $file_data = fread($file, $buffer);
       // 每次向客户端回送1024个字节
       echo $file_data;
      }
      
      fclose($file);
      unlink($filename); // 删除文件
      exit;
      

      以上所述是小编给大家介绍的PHP图片上传下载功能详解整合£¬希望对大家有所帮助£¬如果大家有任?#25105;?#38382;请给我留言£¬小编会及时回复大家的¡£在此也非常?#34892;?#22823;家对脚本之家网站的支持£¡

      相关文章

      最新评论

      3dÊÔ»úºÅÖвÊÍø

        1. <output id="hzk7v"><pre id="hzk7v"><address id="hzk7v"></address></pre></output>
          <output id="hzk7v"></output>
        2. <nav id="hzk7v"><i id="hzk7v"><em id="hzk7v"></em></i></nav>
        3. <listing id="hzk7v"><delect id="hzk7v"><em id="hzk7v"></em></delect></listing>

            1. <output id="hzk7v"><pre id="hzk7v"><address id="hzk7v"></address></pre></output>
              <output id="hzk7v"></output>
            2. <nav id="hzk7v"><i id="hzk7v"><em id="hzk7v"></em></i></nav>
            3. <listing id="hzk7v"><delect id="hzk7v"><em id="hzk7v"></em></delect></listing>