導航:首頁 > 編程語言 > phpexcel類庫

phpexcel類庫

發布時間:2022-12-28 16:15:10

⑴ Thinkphp引入第三方類庫PHPExcel後,總是提示找不到模塊

  1. 提示信息:就是找不到控制器,可能你的路徑不正確;


  2. vendor文件夾下-》PHPExcel-》PHPExcel-》再加上你要引入的第三方類庫裡面的文件名


3.修改方法: 試一下

vendor("PHPExcel.PHPExcel.index");

⑵ thinkphp3.1中的phpexcel導入怎麼用

首先,去PHPExcel官方網站下載PHPExcel,官方地址為;http://phpexcel.codeplex.com/.我下的是1.8.0版本的.解壓後發現還是蠻大的,有十幾M,不知道其他版本是不是會小點.
這里寫圖片描述
把解壓好的PHPExcel文件放在ThinkPHP的Vender文件夾下(專門放第三方類庫的),如下圖
這里寫圖片描述
其次,創建Excel轉換數組類,並把它放在ThinkPHP\Extend\Library\ORG\Util目錄下
class ExcelToArrary {
public function __construct() {
Vendor("PHPExcel.Classes.PHPExcel");//引入phpexcel類(留意路徑,不了解路徑可以查看下手冊)
Vendor("PHPExcel.Classes.PHPExcel.IOFactory"); //引入phpexcel類(留意路徑)
}
public function read($filename,$encode,$file_type){
if(strtolower ( $file_type )=='xls')//判斷excel表類型為2003還是2007
{
Vendor("PHPExcel.Classes.PHPExcel.Reader.Excel5"); //引入phpexcel類(留意路徑)
$objReader = PHPExcel_IOFactory::createReader('Excel5');
}elseif(strtolower ( $file_type )=='xlsx')
{
Vendor("PHPExcel.Classes.PHPExcel.Reader.Excel2007");//引入phpexcel類(留意路徑)
$objReader = PHPExcel_IOFactory::createReader('Excel2007');
}
$objReader->setReadDataOnly(true);
$objPHPExcel = $objReader->load($filename);
$objWorksheet = $objPHPExcel->getActiveSheet();
$highestRow = $objWorksheet->getHighestRow();
$highestColumn = $objWorksheet->getHighestColumn();
$highestColumnIndex = PHPExcel_Cell::columnIndexFromString($highestColumn);
$excelData = array();
for ($row = 1; $row <= $highestRow; $row++) {
for ($col = 0; $col < $highestColumnIndex; $col++) {
$excelData[$row][] =(string)$objWorksheet->getCellByColumnAndRow($col, $row)->getValue();
}
}
return $excelData;
}
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
如右圖這里寫圖片描述
現在來說Excel,表格的結構樣式和MySQL樣式要類似,表格樣式如下(本人對Excel使用只是一般,所以如果有Excel大神做的報表,不知後果如何).
這里寫圖片描述
前端頁面相關代碼:
<div>
<form method="post" action="{:U('Index/upload')}" enctype="multipart/form-data">
<font>導入Excel數據:</font>
<label for="file_stu">上傳</label>
<input name="file_stu" type="file" id="file_stu" />
<h3>溫馨提示:</h3>
<p>請確認您的Excel表格類型是xls的,以免出現兼容問題.</p>
<inputtypeinputtype="submit" class="sure" value="導入" />
</form>
</div>
1
2
3
4
5
6
7
8
9
10
1
2
3
4
5
6
7
8
9
10
最後,控制器部分使用了Thinkphp自帶的上傳類,使用unlink()函數是為了刪除上傳的excel表格,以免文件夾存入過多文件,調試代碼時可先注釋掉.或者不寫也行,把刪除文件的工作交給你們的運維.代碼中foreach循環部分$v[]里的0, 1,2可以改動以下看看與Excel表格里的內容是什麼關系.可以把數組列印出來看一看,你就很清楚了
相關代碼:
public function upload(){
import('ORG.Util.ExcelToArrary');//導入excelToArray類
if (! empty ( $_FILES ['file_stu'] ['name'] )){
import('ORG.Net.UploadFile');
$upload = new UploadFile();// 實例化上傳類
$upload->maxSize = 3145728 ;// 設置附件上傳大小
$upload->allowExts = array('xls', 'xlsx');// 設置附件上傳類型
$upload->savePath = './Uploads/';// 設置附件上傳目錄
if(!$upload->upload()) {// 上傳錯誤提示錯誤信息
$this->error($upload->getErrorMsg());
}else{// 上傳成功 獲取上傳文件信息
$info = $upload->getUploadFileInfo();
}
}else{
$this->error('(⊙o⊙)~沒傳數據就導入?!你在逗我?!');
}
//mp($info);die;
$ExcelToArrary=new ExcelToArrary();//實例化
$res=$ExcelToArrary->read($info[0]['savepath'].$info[0]['savename'],"UTF-8",$info[0]['extension']);//傳參,判斷office2007還是office2003
$res = array_slice($res,1); //為了去掉Excel里的表頭,也就是$res數組里的$res[0];
//mp($res);
foreach ( $res as $k => $v ){ //循環excel表
$data[$k]['mobile'] = $v [0];//創建二維數組
$data[$k]['name'] = $v [1];
$data[$k]['ty'] = $v [2];
}
//mp($data);die;
$result=M('appkey')->addAll($data);
if(!$result){
$this->error('導入資料庫失敗');
exit();
}else{
$filename = './Uploads/'.$info[0]['savename'];//上傳文件絕對路徑,unlink()刪除文件函數
if (unlink($filename)) {
$this->success ( '導入成功' );
}else{
$this->error('緩存刪除失敗');
}
}
}

⑶ PHP 用PHPExcel往資料庫導入大量數據

1、首先我們准備一個含有數據的Excel表格,表頭和數據表中的表欄位相對應。

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

PHPExcel

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

//獲取上傳的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函數
functionreadExcel($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;
}

⑸ 如何載入第三方類庫phpexcel的所有PHP文件

第一步 網上下載PHPExcel類庫包,解壓後

打開Classes目錄可以看到有個PHPExcel.php文件,將這個文件更名為PHPExcel.class.php

第二步 將整個目錄放到項目的ORG目錄下此時的目錄結構

第三步利用thinkphp的import方法在Action中將PHPExcel類導入

import ( '@.ORG.PHPExcel.Classes.PHPExcel' );

這樣你就可以使用PHPExcel類庫所提供的操作Excel文檔的方法了

⑹ 怎麼用phpexcel怎麼導出excel文件

下載phpexcel類庫 代碼如下:x0dx0aarray('id'=>2013,'name'=>'張某某','age'=>21),x0dx0a 1=>array('id'=>201,'name'=>'EVA','age'=>21)x0dx0a );x0dx0a //設置excel列名x0dx0a $objPHPExcel->setActiveSheetIndex(0)->setCellValue('A1','編號');x0dx0a $objPHPExcel->setActiveSheetIndex(0)->setCellValue('B1','姓名');x0dx0a $objPHPExcel->setActiveSheetIndex(0)->setCellValue('C1','年齡');x0dx0a //把數據循環寫入excel中x0dx0a foreach($data as $key => $value){x0dx0a $key+=2;x0dx0a $objPHPExcel->setActiveSheetIndex(0)->setCellValue('A'.$key,$value['id']);x0dx0a $objPHPExcel->setActiveSheetIndex(0)->setCellValue('B'.$key,$value['name']);x0dx0a $objPHPExcel->setActiveSheetIndex(0)->setCellValue('C'.$key,$value['age']);x0dx0a }x0dx0a //excel保存在根目錄下 如要導出文件,以下改為注釋代碼x0dx0a $objPHPExcel->getActiveSheet() -> setTitle('SetExcelName');x0dx0a $objPHPExcel-> setActiveSheetIndex(0);x0dx0a $objWriter = $iofactory -> createWriter($objPHPExcel, 'Excel2007');x0dx0a $objWriter -> save('SetExcelName.xlsx');x0dx0a //導出代碼x0dx0a // $objPHPExcel->getActiveSheet() -> setTitle('SetExcelName');x0dx0a // $objPHPExcel-> setActiveSheetIndex(0);x0dx0a // $objWriter = $iofactory -> createWriter($objPHPExcel, 'Excel2007');x0dx0a // $filename = 'SetExcelName.xlsx'x0dx0a // header('Content-Type: application/vnd.ms-excel');x0dx0a // header('Content-Type: application/octet-stream');x0dx0a // header('Content-Disposition: attachment; filename="' . $filename . '"');x0dx0a // header('Cache-Control: max-age=0');x0dx0a // $objWriter -> save('php://output');x0dx0a?>

閱讀全文

與phpexcel類庫相關的資料

熱點內容
dvd光碟存儲漢子演算法 瀏覽:757
蘋果郵件無法連接伺服器地址 瀏覽:962
phpffmpeg轉碼 瀏覽:671
長沙好玩的解壓項目 瀏覽:144
專屬學情分析報告是什麼app 瀏覽:564
php工程部署 瀏覽:833
android全屏透明 瀏覽:736
阿里雲伺服器已開通怎麼辦 瀏覽:803
光遇為什麼登錄時伺服器已滿 瀏覽:302
PDF分析 瀏覽:484
h3c光纖全工半全工設置命令 瀏覽:143
公司法pdf下載 瀏覽:381
linuxmarkdown 瀏覽:350
華為手機怎麼多選文件夾 瀏覽:683
如何取消命令方塊指令 瀏覽:349
風翼app為什麼進不去了 瀏覽:778
im4java壓縮圖片 瀏覽:362
數據查詢網站源碼 瀏覽:150
伊克塞爾文檔怎麼進行加密 瀏覽:892
app轉賬是什麼 瀏覽:163