想要使用PHP讀取Excel文件必然要用到PHPExcel開源類庫,網上資源應該挺多的。但是每一種的操作必然都是不同的,可原理應該都是大同小異。
這個文件夾裡包含的就是PHPExcel類文件
,在外面還有一個入口PHP文件
處理機制:1.讀取Excel文件
2.獲取最大行號和最大列號
3.通過行數循環裡面嵌套列數循環來用特殊符號拼接每個小表格裡面的數據得到一個字符串
4.然後使用explode拆分函數將字符串拆分後就得到了一個二維數組(即表格裡面的數據)。
代碼示例
代碼如下復制代碼
$path="/wamp/www/xiong/hadf";
if(is_dir($path)){
echo"存在";
}else{
mkdir($path, 0777, true);
echo"chuangji";
}
require_once"./PHPExcel.php";
$filePath="./1233.xlsx";
$PHPReader=newPHPExcel_Reader_Excel2007();
if(!$PHPReader->canRead($filePath)) {
$PHPReader=newPHPExcel_Reader_Excel5();
if(!$PHPReader->canRead($filePath)) {
echo'no Excel'
exit;
}
}
$PHPExcel=$PHPReader->load($filePath);
/**讀取excel文件中的第一個工作表*/
$currentSheet=$PHPExcel->getSheet(0);
/**取得最大的列號*/
$allColumn=$currentSheet->getHighestColumn();
// echo $allColumn;exit;
/**取得一共有多少行*/
$allRow=$currentSheet->getHighestRow();
/**從第二行開始輸出,因為excel表中第一行為列名*/
$val=''
for($currentRow= 1;$currentRow<=$allRow;$currentRow++) {
/**從第A列開始輸出*/
for($currentColumn='A'$currentColumn<=$allColumn;$currentColumn++) {
$val.=$currentSheet->getCellByColumnAndRow(ord($currentColumn) - 65,$currentRow);//->getValue();/**ord()將字符轉為十進制數*/
$val.="&%|%&";
/**如果輸出漢字有亂碼,則需將輸出內容用iconv函數進行編碼轉換,如下將GBK編碼轉為UTF-8編碼輸出*/
//$val .= iconv('GBK','UTF-8', $val);
}
$val.="\n";
}$member_info_arr=explode("\n",$val);
unset($member_info_arr[count($member_info_arr) - 1]);
$present_time=date("Y-m-d H:i:s");
if(count($member_info_arr) <= 0) {
sys_msg_json(0,"會員信息文件中無數據,請添加");
}
unset($member_info_arr[0]);
// var_dump($member_info_arr);exit;
foreach($member_info_arras$key=>$val) {
$arr[$key] =explode("&%|%&",$val);
}
// var_dump($arr);exit;
foreach($arras$key=>$val) {
unset($arr[$key][2]);
}
var_dump($arr);
以上就是本文的全部內容,希望本文的內容對大家的學習或者工作能帶來一定的幫助,同時也希望多多支持本網站!