php壓縮包並自動下載,php 壓縮

本文目錄一覽:

php 如何把文件夾及文件夾下面的所有文件打包成壓縮包,在頁面上用戶點擊下載按鈕即可下載到本地?

一般不會下載的時候重新打包,因為php打包是一個非常消耗資源的過程。

使用php zip 打包,然後記錄包的路徑,下載的時候直接下載該路徑文件即可。

php導出excel表後,打包成壓縮包,然後下載到本地如何實現?

用PHPExcel,PHPExcel是相當強大的 MS Office Excel 文檔生成類庫。

你上它的官/網把程序包下/載下來,裡面有 PHPExcel 的程序、還有30個實常式序和三個文檔。

看一下其中的開發文檔你就會用了。

讀取(這段在開發文檔里有的,在13頁):

require_once ‘../Classes/PHPExcel/IOFactory.php’;

$objReader = PHPExcel_IOFactory::createReader(‘Excel2007’);

$objReader-setReadDataOnly(true);

$objPHPExcel = $objReader-load(“test.xlsx”);

$objWorksheet = $objPHPExcel-getActiveSheet();

echo ‘table’ . “\n”;

foreach ($objWorksheet-getRowIterator() as $row) {

echo ‘tr’ . “\n”;

$cellIterator = $row-getCellIterator();

$cellIterator-setIterateOnlyExistingCells(false);

foreach ($cellIterator as $cell) {

echo ‘td’ . $cell-getValue() . ‘/td’ . “\n”;

}

echo ‘/tr’ . “\n”;

}

echo ‘/table’ . “\n”;

?

php如何實現兩個文件先壓縮成一個壓縮包然後下載

$filename = “./” . date ( ‘YmdH’ ) . “.zip”; // 最終生成的文件名(含路徑)

// 生成文件

$zip = new ZipArchive (); // 使用本類,linux需開啟zlib,windows需取消php_zip.dll前的注釋

if ($zip-open ( $filename, ZIPARCHIVE::CREATE ) !== TRUE) {

    exit ( ‘無法打開文件,或者文件創建失敗’ );

}

 

//$fileNameArr 就是一個存儲文件路徑的數組 比如 array(‘/a/1.jpg,/a/2.jpg….’);

  

foreach ( $fileNameArr as $val ) {

    $zip-addFile ( $val, basename ( $val ) ); // 第二個參數是放在壓縮包中的文件名稱,如果文件可能會有重複,就需要注意一下

}

$zip-close (); // 關閉

 

//下面是輸出下載;

header ( “Cache-Control: max-age=0” );

header ( “Content-Description: File Transfer” );

header ( ‘Content-disposition: attachment; filename=’ . basename ( $filename ) ); // 文件名

header ( “Content-Type: application/zip” ); // zip格式的

header ( “Content-Transfer-Encoding: binary” ); // 告訴瀏覽器,這是二進位文件

header ( ‘Content-Length: ‘ . filesize ( $filename ) ); // 告訴瀏覽器,文件大小

@readfile ( $filename );//輸出文件;

下載一個zip文件 怎麼用php實現

wnload.php 文件部分, 根據自己的需要修改一下 //———————- 中間的部分即可

?php

class zipfile {

var $datasec = array ();

var $ctrl_dir = array ();

var $eof_ctrl_dir = “\x50\x4b\x05\x06\x00\x00\x00\x00”;

var $old_offset = 0;

function unix2_dostime($unixtime = 0){

$timearray = ($unixtime == 0) ? getdate () : getdate($unixtime);

if ($timearray [‘year’] 1980){

$timearray [‘year’] = 1980;

$timearray [‘mon’] = 1;

$timearray [‘mday’] = 1;

$timearray [‘hours’] = 0;

$timearray [‘minutes’] = 0;

$timearray [‘seconds’] = 0;

}

return (($timearray [‘year’] – 1980) 25) | ($timearray [‘mon’] 21) | ($timearray [‘mday’] 16) | ($timearray [‘hours’] 11) | ($timearray [‘minutes’] 5) | ($timearray [‘seconds’] 1);

}

function add_file($data, $name, $time = 0){

$name = str_replace(‘\\’, ‘/’, $name);

$dtime = dechex($this-unix2_dostime($time));

$hexdtime = ‘\x’ . $dtime [6] . $dtime [7] . ‘\x’ . $dtime [4] . $dtime [5] . ‘\x’ . $dtime [2] . $dtime [3] . ‘\x’ . $dtime [0] . $dtime [1];

eval(‘$hexdtime = “‘ . $hexdtime . ‘”;’);

$fr = “\x50\x4b\x03\x04”;

$fr .= “\x14\x00”;

$fr .= “\x00\x00”;

$fr .= “\x08\x00”;

$fr .= $hexdtime;

$unc_len = strlen($data);

$crc = crc32($data);

$zdata = gz……一帆風順吉星到 萬事如意福臨門 財源廣進

php 上傳RAR壓縮文件,在頁面中有個「點擊下載」的連接,點擊則下載此文件

html

a href=”download.php?id=xxx”/a

download.php

?php

$id = $_GET[‘id’];

$sql=”SELECT `name`,`path` FROM `table` WHERE `id`=’$id'”;

$result = mysql_query($sql);

$row = mysql_fetch_array($result);

if(file_exists($row[‘path’])){ 

    $file = fopen($row[‘path’], ‘r’);

    header(‘Content-Type: application/octet-stream’);

    header(‘Accept-Ranges: bytes’);

    header(‘Accept-Length: ‘.filesize($row[‘path’]));

    header(‘Content-Disposition: attachment; filename=’.$row[‘name’]);

    echo fread($file, filesize($row[‘path’]));

    fclose($file);

}else{

    echo ‘指定的文件不存在’;

}

?

原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/254831.html

(0)
打賞 微信掃一掃 微信掃一掃 支付寶掃一掃 支付寶掃一掃
小藍的頭像小藍
上一篇 2024-12-15 12:13
下一篇 2024-12-15 12:13

相關推薦

  • PHP和Python哪個好找工作?

    PHP和Python都是非常流行的編程語言,它們被廣泛應用於不同領域的開發中。但是,在考慮擇業方向的時候,很多人都會有一個問題:PHP和Python哪個好找工作?這篇文章將從多個方…

    編程 2025-04-29
  • PHP怎麼接幣

    想要在自己的網站或應用中接受比特幣等加密貨幣的支付,就需要對該加密貨幣擁有一定的了解,並使用對應的API進行開發。本文將從多個方面詳細闡述如何使用PHP接受加密貨幣的支付。 一、環…

    編程 2025-04-29
  • 用Python解壓縮壓縮包

    本文將從多個方面對用Python解壓縮壓縮包進行詳細闡述,並給出相應的代碼示例。 一、導入必要的庫 使用Python解壓縮壓縮包需要用到ZipFile庫,因此需要先導入該庫。 im…

    編程 2025-04-29
  • 使用PHP foreach遍歷有相同屬性的值

    本篇文章將介紹如何使用PHP foreach遍歷具有相同屬性的值,並給出相應的代碼示例。 一、基礎概念 在講解如何使用PHP foreach遍歷有相同屬性的值之前,我們需要先了解幾…

    編程 2025-04-28
  • PHP獲取301跳轉後的地址

    本文將為大家介紹如何使用PHP獲取301跳轉後的地址。301重定向是什麼呢?當我們訪問一個網頁A,但是它已經被遷移到了另一個地址B,此時若伺服器端做了301重定向,那麼你的瀏覽器在…

    編程 2025-04-27
  • PHP登錄頁面代碼實現

    本文將從多個方面詳細闡述如何使用PHP編寫一個簡單的登錄頁面。 1. PHP登錄頁面基本架構 在PHP登錄頁面中,需要包含HTML表單,用戶在表單中輸入賬號密碼等信息,提交表單後服…

    編程 2025-04-27
  • PHP與Python的比較

    本文將會對PHP與Python進行比較和對比分析,包括語法特性、優缺點等方面。幫助讀者更好地理解和使用這兩種語言。 一、語法特性 PHP語法特性: <?php // 簡單的P…

    編程 2025-04-27
  • PHP版本管理工具phpenv詳解

    在PHP項目開發過程中,我們可能需要用到不同版本的PHP環境來試驗不同的功能或避免不同版本的兼容性問題。或者我們需要在同一台伺服器上同時運行多個不同版本的PHP語言。但是每次手動安…

    編程 2025-04-24
  • PHP數組去重詳解

    一、array_unique函數 array_unique是php中常用的數組去重函數,它基於值來判斷元素是否重複,具體使用方法如下: $array = array(‘a’, ‘b…

    編程 2025-04-24
  • PHP導出Excel文件

    一、PHP導出Excel文件列寬調整 當我們使用PHP導出Excel文件時,有時需要調整單元格的列寬。可以使用PHPExcel類庫中的setWidth方法來設置單元格的列寬。下面是…

    編程 2025-04-24

發表回復

登錄後才能評論