php操作脂excel,PHP文件操作

本文目錄一覽:

php怎樣讀取excel表格內容?

常用的用PHP讀取EXCEL的方法有以下三種,各自有各自的優缺點。個人推薦用第三種方法,因為它可以跨平台使用。\x0d\x0a\x0d\x0a1. 以.csv格式讀取\x0d\x0a\x0d\x0a將.xls轉換成.csv的文本格式,然後再用PHP分析這個文件,和PHP分析文本沒有什麼區別。\x0d\x0a\x0d\x0a優點:跨平台,效率比較高、可以讀寫。\x0d\x0a\x0d\x0a缺點:只能直接使用.csv的文件,如果經常接受.xls二進位文件的話需要手工轉換,不能自動化。一個文件只有一個SHEET。\x0d\x0a\x0d\x0aPHP有自帶的分析.csv函數:fgetcsv\x0d\x0a\x0d\x0aarray fgetcsv ( int $handle [, int $length [, string $delimiter [, string $enclosure]]] )\x0d\x0a\x0d\x0ahandle 一個由 fopen()、popen() 或 fsockopen() 產生的有效文件指針。\x0d\x0a\x0d\x0alength (可選)必須大於 CVS 文件內最長的一行。在 PHP 5 中該參數是可選的。如果忽略(在 PHP 5.0.4 以後的版本中設為 0)該參數的話,那麼長度就沒有限制,不過可能會影響執行效率。\x0d\x0a\x0d\x0adelimiter (可選)設置欄位分界符(只允許一個字元),默認值為逗號。\x0d\x0a\x0d\x0aenclosure (可選)設置欄位環繞符(只允許一個字元),默認值為雙引號。該參數是在 PHP 4.3.0 中添加的。 和 fgets() 類似,只除了 fgetcsv() 解析讀入的行並找出 CSV 格式的欄位然後返回一個包含這些欄位的數組。\x0d\x0a\x0d\x0afgetcsv() 出錯時返回 FALSE,包括碰到文件結束時。\x0d\x0a\x0d\x0a注意: CSV 文件中的空行將被返回為一個包含有單個 null 欄位的數組,不會被當成錯誤。\x0d\x0a\x0d\x0a當然也可以自己手動分析字元串。\x0d\x0a\x0d\x0a還可以利用fputcsv函數將行格式化為 CSV 並寫入文件指針。\x0d\x0a\x0d\x0a2. ODBC鏈接數據源\x0d\x0a\x0d\x0a優點:支持多種格式,cvs, xls等。支持讀寫,使用標準SQL語言,和SQLSERVER、MYSQL資料庫幾乎完全一樣。\x0d\x0a\x0d\x0a缺點:值支持windows伺服器\x0d\x0a\x0d\x0a3. PHP自定義類\x0d\x0a\x0d\x0a優點:跨平台。某些類支持寫操作。支持.xls二進位文件\x0d\x0a\x0d\x0a常用的類有phpExcelReader、PHPExcel。其中後者支持讀寫,但是需要php5.2以上版本。\x0d\x0a\x0d\x0aphpExcelReader是專門用來讀取文件的。返回一個數組,包含表格的所有內容。\x0d\x0a\x0d\x0a該 class 使用的方法可以參考網站下載回來的壓縮檔中的 example.php。\x0d\x0a\x0d\x0a不過我下載回來的 (版本 2009-03-30),有兩點要注意:\x0d\x0a\x0d\x0areader.php 中的下面這行要修改\x0d\x0a\x0d\x0a將 require_once 『Spreadsheet/Excel/Reader/OLERead.php』;\x0d\x0a\x0d\x0a改為 require_once 『oleread.inc』;\x0d\x0a\x0d\x0aexample.php 中\x0d\x0a\x0d\x0a修改 $data-setOutputEncoding(』CP1251′);\x0d\x0a\x0d\x0a為 $data-setOutputEncoding(』CP936′);\x0d\x0a\x0d\x0aexample2.php 中\x0d\x0a\x0d\x0a修改 nl2br(htmlentities($data-sheets[$sheet][‘cells’][$row][$col]));\x0d\x0a\x0d\x0a為 $table_output[$sheet] .= nl2br(htmlspecialchars($data-sheets[$sheet][‘cells’][$row][$col]));\x0d\x0a\x0d\x0a不然中文會有問題。\x0d\x0a\x0d\x0a繁體的話可以修改為CP950、日文是CP932,具體可參考codepage說明。\x0d\x0a\x0d\x0a修改 $data-read(』jxlrwtest.xls』) 為自己的 excel 文件名,zip 檔中附的 jxlrwtest.xls 應該是壞了。

在PHP中操作Excel實例代碼

複製代碼

代碼如下:

?php

//指定頁面編碼,防止出現中文亂碼的情形

header(‘Content-type:

text/html;

charset=gb2312′);

//啟動Excel

$ms_excel=new

COM(“excel.application”)

or

die(“不能打開Excel應用程序”);

//在網頁中顯示當前的Excel版本

echo

“Excel版本:{$ms_excel-Version}\n”;

//新建一個工作簿

$ms_excel-Application-Workbooks-Add()

or

die(“不能添加新工作簿”);

//在工作簿的工作表Sheet1中單元格A1中輸入文本

$ms_excel-Worksheets(“Sheet1”)-Range(“A1″)-Value=”測試”;

//保存工作簿,如果沒有指定路徑,則默認保存在我的文檔中

$ms_excel-Workbooks(1)-SaveAs(“php_excel_test.xls”);

//關閉工作簿

$ms_excel-Quit();

//清空對象

$ms_excel=null;

?

在htdocs文件夾中將該文件保存為「excelsample.php」。打開瀏覽器,在地址欄中輸入:

此時,將會在頁面中顯示當前的Excel版本,同時創建名為php_excel_test.xls的工作簿並在工作表Sheet1單元格A1中輸入「測試」。

打開工作簿php_excel_test.xls,在單元格A1中將會看到已經輸入了「測試」。

註:為防止出現亂碼,在代碼開始設置了編碼格式,同時在保存文件時選擇保存為gb2312格式。

php格式怎麼用excel文件

PHP 輸出EXCEL文件有種簡單的方式:

定義header() 頭部輸出格式:

—頭部輸出格式的步驟有兩種:

.header(“Content-type:application/vnd.ms-excel”);

.header(“Content-Disposition:filename=php100.xls”);

舉例如下:

?php

header(“Content-type:application/vnd.ms-excel”);

header(“Content-Disposition:filename=php100.xls”);

echo “A1\t B1\t C1\n”;

echo “A2\t B2\t C2\n”;

echo “A3\t B3\t C3\n”;

?

顯示的結果:

一個3行3列的excel 文件

A1 B1 C1

A2 B2 C2

A3 B3 C3

php怎麼讀取excel 文件數據並輸出

PHPExcel

PHPExcel 是用來操作Office Excel 文檔的一個PHP類庫,它基於微軟的OpenXML標準和PHP語言。可以使用它來讀取、寫入不同格式的電子表格,如 Excel (BIFF) .xls, Excel 2007 (OfficeOpenXML) .xlsx, CSV, Libre/OpenOffice Calc .ods, Gnumeric, PDF, HTML等等。

PHP讀取示例代碼

//獲取上傳的excel臨時文件

$path = $_FILES[“file”][“tmp_name”];

//將臨時文件移動當前目錄,可自定義存儲位置

 

move_uploaded_file($_FILES[“file”][“tmp_name”],$_FILES[“file”][“name”]);

//將獲取在伺服器中的Excel文件,此處為上傳文件名

$path = $_FILES[“file”][“name”];

//調用readExcel函數返回一個

二維數組

$exceArray = readExcel($path);

 

//創建一個讀取

excel函數

function readExcel($path){

        //引入PHPExcel類庫

    include ‘Classes/PHPExcel.php’;            

    include ‘Classes/PHPExcel/IOFactory.php’;

 

    $type = ‘Excel5’;//設置為Excel5代表支持2003或以下版本,

Excel2007代表2007版

    $xlsReader = \PHPExcel_IOFactory::createReader($type);  

    $xlsReader-setReadDataOnly(true);

    $xlsReader-setLoadSheetsOnly(true);

    $Sheets = $xlsReader-load($path);

    //開始讀取上傳到伺服器中的Excel文件,返回一個

二維數組

    $dataArray = $Sheets-getSheet(0)-

toArray();

    return $dataArray;

}

php讀取excel,excel下多個個工作表,該怎麼讀取

php讀取excel,excel下多個個工作表的方法:

1、利用PHPExcelReader來完成多個excel的讀取。

2、PHPExcel比較強大,能夠將內存中的數據輸出成Excel文件,同時還能夠對Excel做各種操作,下面主要介紹下如何使用PHPExcel進行Excel 2007格式(.xlsx)文件的讀取。

3、下載PHPExcel後保存到自己的類文件目錄中,然後使用以下代碼可以打開Excel 2007(xlsx)格式的文件:

require_once ‘/libs/PHPExcel-1.8.0/Classes/PHPExcel.php’; //修改為自己的目錄

echo ‘pTEST PHPExcel 1.8.0: read xlsx file/p’;

$objReader = PHPExcel_IOFactory::createReaderForFile($filename);

$objPHPExcel = $objReader-load($filename);

$objPHPExcel-setActiveSheetIndex(1);

$date = $objPHPExcel-getActiveSheet()-getCell(‘A16’)-getValue();

輸出$date變數就能夠看到文件中的內容了。

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

(0)
打賞 微信掃一掃 微信掃一掃 支付寶掃一掃 支付寶掃一掃
ZMLT的頭像ZMLT
上一篇 2024-10-04 00:21
下一篇 2024-10-04 00:21

相關推薦

發表回復

登錄後才能評論