此功能實現使用到phpexcel類庫,phpexcel是乙個php類庫,用來幫助我們簡單、高效實現從excel讀取excel的資料和匯出資料到excel。也是我們日常開發中,經常會遇到的使用場景。
(二) phpexcel引入到ci框架
(三) 具體**實現
1) excel檔案的接收及其驗證
說明:detectuploadfilemime()方法是判斷上傳檔案是否為excel檔案,此方法更為安全
if($_files['file']['error'])2) 讀取excel檔案資料die;
}//接收的excel資訊
$info = pathinfo($_files['file']['name']);
$file = $_files['file'];
//驗證excel檔案型別
$res = $this->detectuploadfilemime($file);
if($res)
$new_path = $new_dir . $new_name;
$new_path = str_replace('\\', directory_separator, $new_path);
$new_path = str_replace('/', directory_separator, $new_path);
$res = move_uploaded_file($_files['file']['tmp_name'], $new_path);
if (!$res)
if (!file_exists($new_path))我上傳的excel檔案內容為/*載入phpexcel*/
$this->load->library('phpexcel.php');
$this->load->library('phpexcel/iofactory.php');
// $this->load->library('phpexcel/reader/excel5.php');
$objphpexcel = new phpexcel();
$objprops = $objphpexcel->getproperties();
//設定excel格式
if($info['extension'] =='xlsx' )else
//載入excel檔案
$objphpexcel = $objreader->load($new_path);
//讀取第一張表
$sheet = $objphpexcel->getsheet(0);
//獲取總行數
$highestrow = $sheet->gethighestrow();
//獲取總列數
$highestcolumn = $sheet->gethighestcolumn();
$excel_data = array();
for ($col='a';$col<=$highestcolumn;$col++)
}print_r($excel_data);die;
列印出來的資料為
就這樣完成la
補充detectuploadfilemime()方法
/**ok,不謝( ̄_, ̄ )* 檢測是否為excel檔案程式
* *
*/public function detectuploadfilemime($file)
if ($typecode == "d0cf11e0a1b11ae1")
break;
case "xlsx" :
// 2007 excel
$fh = fopen ( $file ["tmp_name"], "rb" );
$bin = fread ( $fh, 4 );
fclose ( $fh );
$strinfo = @unpack ( "c4chars", $bin );
$typecode = "";
foreach ( $strinfo as $num )
// echo $typecode;
if ($typecode == "504b34")
break;
} // 3.return the flag
return $flag;
}
更新一下,最近聽說phpexcel已經停止維護了,所以可以用phpspreadsheet了
還沒有嘗試,先留個鏈結
CI框架 讀取新聞條目
在上一節中,我們通過寫出乙個包含靜態頁面的類了解了一些框架的基本概念,我們也根據自定義路由規則來重定向 uri 現在是時候向大家介紹動態內容 和如何使用資料庫了。資料庫的查詢操作應該放在模型裡,而不是寫在控制器裡,這樣可以很方便的重用它。模型正是用於從資料庫或者其他儲存中獲取 新增 更新資料的地方。...
CI框架(5) 資料讀取
1,資料庫引數設定 2,建立model 3,控制器獲得資料,並且傳遞引數給檢視 4,檢視顯示資料 1,資料庫引數設定 hostname 資料庫位址 username 使用者名稱 password 密碼 database 資料 2,建立model class singermodel extends c...
python pandas讀取excel檔案
python pandas讀取excel檔案 data pd.read excel c users 86188 python dummy.xlsx 會報錯 syntaxerror unicode error unicodeescape codec can t decode bytes in posi...