最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

PHP使用PHPExcel讀取excel數(shù)據(jù)并批量上傳到數(shù)據(jù)庫

 更新時間:2024年12月25日 11:38:01   作者:又藍  
這篇文章主要為大家詳細介紹了PHP如何使用PHPExcel讀取excel數(shù)據(jù)并批量上傳到數(shù)據(jù)庫,文中的示例代碼講解詳細,感興趣的小伙伴可以參考一下

應(yīng)用場景

當(dāng)遇到需要批量導(dǎo)入數(shù)據(jù)的時候,前端會上傳一個excel表格,由后端讀取數(shù)據(jù)并存入數(shù)據(jù)庫。前端代碼就不介紹了,這是一個前后端分離的項目,主要是講解后端讀取excel表格的數(shù)據(jù)。前端上傳文件就可以了。

PHPExcel 是什么

是用來操作office excel 文檔的一個PHP類庫,它基于微軟的OpenXML標(biāo)準和PHP語言??梢允褂盟鼇碜x取、寫入不同格式的電子表格,如Excel(BIFF).xls,Excel 2007 (OfficeOpenXML),.xlsx,CSV,Libre/OpenOffice Calc .ods, Gnumeric, PDF, HTML等等。

要求

PHP 5.2.0 版本及以上

PHP extension php_zip 開啟 (如果你需要使用 PHPExcel 來操作 .xlsx .ods or .gnumeric 文件)

PHP extension php_xml 開啟

PHP extension php_gd2 開啟(選填, 如果需要計算準確的列寬需要開啟此擴展)

PHP 讀取文件寫入數(shù)據(jù)庫

<?php
header("Content-type:text/html; charset=utf-8");

// 制定允許其他域名訪問
header("Access-Control-Allow-Origin:*");
// 響應(yīng)類型
header('Access-Control-Allow-Methods:POST');
// 響應(yīng)頭設(shè)置
header('Access-Control-Allow-Headers:x-requested-with, content-type');
// 數(shù)據(jù)庫配置文件
include './config/config.php';
// 下載 PHPExcel 放入項目內(nèi),引入即可
include "./PHPExcel-1.8/Classes/PHPExcel/IOFactory.php";


// 獲取前端傳入的文件
$file = $_FILES['file'];
//臨時文件存放路徑
$fileTmp = $file['tmp_name'];
$fileSize = $file['size'];
$fileName = $file['name'];
//錯誤,輸出0,表示文件提交成功
$fileError = $file['error'];


if($fileError==0) {
	$inputFileName = $fileTmp;
	date_default_timezone_set('PRC');
	// 讀取excel文件
	try {
	    $inputFileType = PHPExcel_IOFactory::identify($inputFileName);
	    $objReader = PHPExcel_IOFactory::createReader($inputFileType);
	    $objPHPExcel = $objReader->load($inputFileName);
	} catch(Exception $e) {

	}

	// 確定要讀取的sheet,什么是sheet,看excel的右下角
	$sheet = $objPHPExcel->getSheet(0);
	$highestRow = $sheet->getHighestRow();
	$highestColumn = $sheet->getHighestColumn();

	$time = date('Y-m-d h:i:s', time());
	// 把數(shù)據(jù)處理后存入數(shù)組
	$array = array();
	$time = date('Y-m-d h:i:s', time());
	for ($row = 2; $row <= $highestRow; $row++) {
		$rowData = $sheet->rangeToArray('A' . $row . ':' . $highestColumn . $row, NULL, TRUE, FALSE);
		// 重復(fù)數(shù)據(jù)不插入數(shù)據(jù)庫
		$falg = $rowData[0][0];
		$sqlIf = "SELECT codes FROM tablef where codes = '$falg'";
		$querySQL = mysqli_query($conn,$sqlIf);
		$arrSQL = mysqli_fetch_array($querySQL);
		if($arrSQL == null) {
			// 獲取到 Excel 每行的數(shù)據(jù)插入數(shù)據(jù)庫,需根據(jù)你自己的表格進行調(diào)整
			$sql="insert into tablef(codes,year,month,idcode,type,timese) values('".$rowData[0][0]."','" .($rowData[0][1])."','".$rowData[0][2]."','".$rowData[0][3]."','".$rowData[0][4]."','".$time."')";

			$query=mysqli_query($conn,$sql);//函數(shù)執(zhí)行一條 MySQL 查詢。
		}
	}

	// 成功后返回給前端
	echo json_encode(["msg" => 'ok']);
}else {
	echo json_encode(["msg" => 'no']);
}


// 斷開數(shù)據(jù)庫連接
$conn->close();   


?>

結(jié)語

這是原生PHP使用的一個方式,我PHP的話只會一個 ThinkPHP 框架,這邊我測試的話 ThinkPHP 使用起來跟這個也是差不多的,至于有些其他的php框架的話我沒有用過,但是基本都差不多?,F(xiàn)在前后端分離占主導(dǎo)地位,對于一些做后臺的兄弟們來說,這些批量導(dǎo)入數(shù)據(jù)的是很常見的,這邊就分享一個簡單的,對于一些sql語句的話是需要修改的,這里面的sql語句是不安全的,這里提醒一下大家,測試的時候使用這些SQL語句為啥問題,生產(chǎn)環(huán)境切記不能這樣用。

到此這篇關(guān)于PHP使用PHPExcel讀取excel數(shù)據(jù)并批量上傳到數(shù)據(jù)庫的文章就介紹到這了,更多相關(guān)PHP PHPExcel讀取excel內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • PHP利用緩存技術(shù)提升性能技巧及原理探究

    PHP利用緩存技術(shù)提升性能技巧及原理探究

    隨著互聯(lián)網(wǎng)的快速發(fā)展,網(wǎng)站性能對于用戶體驗和SEO排名變得越來越重要,PHP作為一種常用的服務(wù)器端腳本語言,其性能對于網(wǎng)站的響應(yīng)速度起著至關(guān)重要的作用,而PHP的緩存技術(shù)就是提高性能的一種重要手段
    2024-01-01
  • PHP正則替換函數(shù)preg_replace和preg_replace_callback使用總結(jié)

    PHP正則替換函數(shù)preg_replace和preg_replace_callback使用總結(jié)

    這篇文章主要介紹了PHP正則替換函數(shù)preg_replace和preg_replace_callback使用總結(jié),本文是在寫一個模板引擎遇到一個特殊需求時總結(jié)而來,需要的朋友可以參考下
    2014-09-09
  • php生成shtml類用法實例

    php生成shtml類用法實例

    這篇文章主要介紹了php生成shtml類用法,較為詳細的講述了生成shtml的類文件以及與之對應(yīng)的用法實例,具有一定的參考借鑒價值,需要的朋友可以參考下
    2014-12-12
  • php如何連接sql server

    php如何連接sql server

    這篇文章主要介紹了php連接sql server的方法,在連接過程中遇到的問題以及解決方法,需要的朋友可以參考下
    2015-10-10
  • 通過具體程序來理解PHP里面的抽象類

    通過具體程序來理解PHP里面的抽象類

    面向?qū)ο蟪绦蛲ㄟ^類的分層結(jié)構(gòu)構(gòu)建起來. 在單重繼承語言如PHP中, 類的繼承是樹狀的. 一個根類有一個或更多的子類,再從每個子類繼承出一個或更多下一級子類.
    2010-01-01
  • PHP7新特性之抽象語法樹(AST)帶來的變化詳解

    PHP7新特性之抽象語法樹(AST)帶來的變化詳解

    這篇文章主要介紹了PHP7新特性之抽象語法樹(AST)帶來的變化,結(jié)合實例形式分析了PHP7抽象語法樹的相關(guān)概念、功能、特性、使用方法及相關(guān)注意事項,需要的朋友可以參考下
    2018-07-07
  • PHP讀取Excel類文件

    PHP讀取Excel類文件

    本篇文章主要介紹了PHP讀取Excel類文件的相關(guān)知識。具有很好的參考價值。下面跟著小編一起來看下吧
    2017-05-05
  • 關(guān)于PHP內(nèi)存溢出問題的解決方法

    關(guān)于PHP內(nèi)存溢出問題的解決方法

    本篇文章是對PHP內(nèi)存溢出問題的解決方法進行了詳細的分析介紹,需要的朋友參考下
    2013-06-06
  • php對圖像的各種處理函數(shù)代碼小結(jié)

    php對圖像的各種處理函數(shù)代碼小結(jié)

    這篇文章主要介紹了php的圖片處理實現(xiàn)代碼,包括縮放、剪裁、縮放、翻轉(zhuǎn)、旋轉(zhuǎn)、透明、銳化等圖片操作,需要的朋友可以參考下
    2013-07-07
  • PHP 常用函數(shù)庫和一些實用小技巧

    PHP 常用函數(shù)庫和一些實用小技巧

    包括文件讀取函式,文件寫入函式,靜態(tài)頁面生成函式,目錄刪除函式等
    2009-01-01

最新評論

贺兰县| 大英县| 新乐市| 余姚市| 开封市| 当涂县| 绥棱县| 班玛县| 永州市| 丰县| 镇宁| 阿城市| 肃北| 淳安县| 平利县| 台前县| 赫章县| 峨山| 土默特右旗| 芷江| 丹东市| 青冈县| 滁州市| 扎兰屯市| 柳江县| 南召县| 金乡县| 孟村| 深州市| 曲阳县| 巴林左旗| 佛教| 盈江县| 龙口市| 鸡泽县| 定安县| 威海市| 崇文区| 龙门县| 四子王旗| 新丰县|