當前位置:首頁 » 編程語言 » php編輯excel

php編輯excel

發布時間: 2022-03-06 23:19:40

㈠ 基於php中使用excel的簡單介紹

在工作中需要處理多語言的翻譯問題,翻譯都是寫在excel表格裡面。為了處理方便我就保留中文和英文兩列。
這樣需要將這些數據從excel中取出來,然乎保存在excel的數組中,通過使用循環數組將相應的數據放入到資料庫中。
所以工作的第一步就是要將數據從excel中取出來。這里我使用到了一個開源php處理excel類:phpexcel.
該項目的詳細信息
http://phpexcel.codeplex.com/

我目前使用的是phpexcel1.7.3版本,
壓縮後裡面有一個PHPExcel和PHPExcel.php文件。
我們主要使用那個PHP文件。見下圖文件目錄結構
這個版本據說是可以支持excel2007,但是我使用2007編輯的xlsx是無法獲得該庫的支持。於是乎我就將它轉化為2003。感覺支持地很好。
下面介紹一下具體的使用:
復制代碼
代碼如下:
require_once('./phpexcel1.7.3/PHPExcel.php');
$php_excel_obj
=
new
PHPExcel();
$php_reader
=
newPHPExcel_Reader_Excel2007();
if(!$php_reader->canRead($file_name)){

$php_reader=
new
PHPExcel_Reader_Excel5();

if(!$php_reader->canRead($file_name)){

echo'NO
Excel!'

}
}
$php_excel_obj
=
$php_reader->load($file_name);
$current_sheet
=$php_excel_obj->getSheet(0);
上面的主要功能是初始化相關的excel類,並裝載excel第一個sheet
復制代碼
代碼如下:
$all_column
=$current_sheet->getHighestColumn();
$all_row
=$current_sheet->getHighestRow();
以上分別獲得該表格的最大列值(字母表示如:『G'),和最大的行數(數值表示)
下面將使用循環來講excel裡面的數據讀到excel中:
復制代碼
代碼如下:
$all_arr
=
array();
$c_arr
=
array();
//字元對照表
for($r_i
=
1;
$r_i<=$all_row;
$r_i++){

$c_arr=
array();

for($c_i=
'A'
$c_i<=
'B'
$c_i++){

$adr=
$c_i
.
$r_i;

$value=
$current_sheet->getCell($adr)->getValue();

if($c_i==
'A'
&&
empty($value)
)
break;

if(is_object($value))
$value=
$value->__toString();

$c_arr[$c_i]=
$value;

}

$c_arr&&
$all_arr[]
=
$c_arr;
}
下面簡單地介紹一下phpexcel的寫操作,這個操作經常用於將資料庫中的數據導入到excel中,便於展示和做成更美觀的效果。
復制代碼
代碼如下:
require_once('./phpexcel1.7.3/PHPExcel.php');
$excel_obj
=
new
PHPExcel();
$objWriter
=
newPHPExcel_Writer_Excel5($excel_obj);
$excel_obj->setActiveSheetIndex(0);
$act_sheet_obj=$excel_obj->getActiveSheet();
$act_sheet_obj->setTitle('sheet');
$act_sheet_obj->setCellValue('A1',
'字元串內容');
$act_sheet_obj->setCellValue('A2',
26);
$file_name
=
"output.xls";
$objWriter->save($file_name);
代碼很簡單,
首先初始化相關的excel寫類,然後寫入數據,最後保存為xls文件。
輸出的效果見圖

㈡ 我改的一個對表格操作的php。原來是點擊可以編輯表格,我想改為點擊就刪除該行,以及資料庫。

$(function(){
$("tr:even").css("background-color","#ffff99");

$("trtd:not(.id)").click(function(){
//獲取tr
var$tr=$(this).parent();
varid=$tr.find('td:first-child').text();

//把id發送到伺服器
$.post("delete.php",{
id:id
},function(data){
//伺服器返回成功之後刪除tr
$tr.remove();
alert('刪除成功');
});
});
});

㈢ 在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」。打開瀏覽器,在地址欄中輸入:
http://localhost/excelsample.php
此時,將會在頁面中顯示當前的Excel版本,同時創建名為php_excel_test.xls的工作簿並在工作表Sheet1單元格A1中輸入「測試」。
打開工作簿php_excel_test.xls,在單元格A1中將會看到已經輸入了「測試」。
註:為防止出現亂碼,在代碼開始設置了編碼格式,同時在保存文件時選擇保存為gb2312格式。

㈣ php讀取excel文件示例分享(更新修改excel)

復制代碼
代碼如下:
//模板存放目錄
$dir
=
$DOCUMENT_ROOT.'/backoffice/admin/oemcheck/';
$templateName
=
'1.xlsx';
$outputFileName
=
'模板.xlsx';
$txt='test';
//實例化Excel讀取類
$PHPReader
=
new
PHPExcel_Reader_Excel2007();
if(!$PHPReader->canRead($dir.$templateName)){
$PHPReader
=
new
PHPExcel_Reader_Excel5();
if(!$PHPReader->canRead($dir.$templateName)){

echo
'無法識別的Excel文件!';

return
false;
}
}
//讀取Excel
$PHPExcel
=
$PHPReader->load($dir.$templateName);
//讀取工作表1
$currentSheet
=
$PHPExcel->getSheet(0);
$currentSheet->setCellValue('B13',iconv('gbk','utf-8',$txt));//表頭賦值//
//實例化Excel寫入類
$PHPWriter
=
new
PHPExcel_Writer_Excel2007($PHPExcel);
ob_start();
header("Content-Type:
application/force-download");
header("Content-Type:
application/octet-stream");
header("Content-Type:
application/download");
header('Content-Disposition:attachment;filename="'
.$outputFileName.
'"');//輸出模板名稱
header("Content-Transfer-Encoding:
binary");
header("Last-Modified:".gmdate("D,
d
M
Y
H:i:s")."
GMT");
header('Pragma:
public');
header('Expires:
30');
header('Cache-Control:
public');
$PHPWriter->save('php://output');

㈤ 高分求指導PHPExcel 修改已經存在的excel文檔中某個sheet中的內容。急!!!

經查閱資料,phpexcel類貌似並不能直接進行excel文檔的編輯(就是打開文檔進行讀寫),而是分成兩個部分:讀或寫。我的建議有兩點:

1. 如果使用PHPExcel類,那麼可以考慮的方法:
先用 PhpExcel 建立reader,再load文件,這樣打開已經存在的文檔,然後再建立writer,將reader中的數據都復制過來,再用 PhpExcel 進行數據修改,再以load的文件名覆蓋保存。

2. 如果可以使用COM,則可以直接用COM進行操作。

㈥ PHPEXCEL寫入即有的EXCEL

$objPHPExcel->setActiveSheetIndex($i)
->setCellValue('A1','時間')
->setCellValue('B1','帶寬峰值Mbps');
$time=substr($value["sd_datetime"],4,2).'-'.substr($value["sd_datetime"],6,2).''.substr($value["sd_datetime"],8,2).':'.substr($value["sd_datetime"],10);
$objPHPExcel->setActiveSheetIndex($i)->setCellValue('A'.$j,$time);
$objPHPExcel->setActiveSheetIndex($i)->setCellValue('B'.$j,$value["bw"]/1000);

從第三行開始,那就是是從A3開始,把i初始化為A,使用phpexcel的setCellValue函數來填充數據,然後根據數據條數來每次遞加,直到裝滿數據為止;數據裝完之後想提供給客戶下載,那就用header函數就好了,文件名由你來定

header('Content-Type:application/vnd.ms-excel');
header('Content-Disposition:attachment;filename="'.$outputFileName.'"');
header('Cache-Control:max-age=0');
//Ifyou'reservingtoIE9,thenthefollowingmaybeneeded
header('Cache-Control:max-age=1');

//Ifyou'reservingtoIEoverSSL,thenthefollowingmaybeneeded
header('Expires:Mon,26Jul199705:00:00GMT');//Dateinthepast
header('Last-Modified:'.gmdate('D,dMYH:i:s').'GMT');//alwaysmodified
header('Cache-Control:cache,must-revalidate');//HTTP/1.1
header('Pragma:public');//HTTP/1.0

$objWriter=IOFactory::createWriter($objPHPExcel,'Excel5');
$objWriter->save('php://output');

大概思路是這樣,具體實現你要根據自己的業務需求來修改

㈦ 怎麼用PHPexcel選定指定的excel並修改裡面的某個sheet

步驟1、在左下角的任一工作表標簽上,單擊滑鼠右鍵,選擇「選定全部工作表」,將所有工作表處於組合狀態;

步驟2、在任一工作表的A1進行字型大小的修改或編輯,該操作將同步到所有表格的A1單元格;
步驟3、完成操作後,在左下角的工作表標簽位置,單擊滑鼠右鍵,「取消組合工作表」,退出組合工作表狀態,避免在任一工作表的獨立操作同步到其他所有工作表。

㈧ 是否有開源免費的php等支持在線編輯excel的程序

開源的不清楚,商業控制項可以用SpreadJS,純前端的控制項,無關服務端語言,這樣PHP也可以使用。

㈨ PHPEXCEL怎麼使用

步驟一、滑鼠點選到C1的單元格中,然後輸入公式「=A1*B1」; 步驟二、此時,從第二排單元格中開始輸入你需要求積的數字; 步驟三、好了,最關鍵的時刻就在這里了。我們將滑鼠選中「C1」,然後當游標變成十字架形狀的時候一直網下拉,放開滑鼠,你就會發現,所有自動求積的計算就都已經完成了!

㈩ php後台要有一個編輯器,編輯器要像Excel差不多

搜在線編輯,有很多。php中常用的是fckeditor(最新版叫ckeditor),另外還有ewebeditor(這個功能很強大)、xhEditor等

熱點內容
二級c語言技巧 發布:2025-01-13 07:54:37 瀏覽:2
自動充值腳本 發布:2025-01-13 07:48:02 瀏覽:19
越容易壓縮 發布:2025-01-13 07:37:37 瀏覽:558
ecstore資料庫 發布:2025-01-13 07:29:43 瀏覽:297
手機設置密碼忘記了怎麼解開 發布:2025-01-13 07:28:29 瀏覽:21
存儲卡交流 發布:2025-01-13 07:16:06 瀏覽:984
php字元串浮點數 發布:2025-01-13 07:15:28 瀏覽:999
python排序cmp 發布:2025-01-13 07:09:04 瀏覽:73
雲腳本精靈 發布:2025-01-13 07:03:27 瀏覽:619
高維訪問 發布:2025-01-13 07:03:23 瀏覽:976