php导入Excel实例,直接上代码,亲测可用

//文件后缀
$allow_type = array(
	"xls"	=> "Excel5",
	"xlsx"	=> "Excel2007",
);
$type = strtolower(substr($_FILES["myfile"]["name"],strripos($_FILES["myfile"]["name"],".")+1));
if(!array_key_exists($type,$allow_type)){
	lyg::showmsg('文件类型错误,请重新选择');
}

$newname = uniqid();
$newname = "tmp/{$newname}.{$type}";
move_uploaded_file($_FILES["myfile"]["tmp_name"],$newname);

require_once("include/PHPExcel/PHPExcel.php");
require_once("include/PHPExcel/PHPExcel/IOFactory.php");
	
//以上三步加载phpExcel的类
$objReader = PHPExcel_IOFactory::createReader($allow_type[$type]);
//接收存在缓存中的excel表格
$objPHPExcel = $objReader->load($newname);
$sheet = $objPHPExcel->getSheet(0); //载入第一个工作簿
$highestRow = $sheet->getHighestRow(); // 取得总行数 
// $highestColumn = $sheet->getHighestColumn(); // 取得总列数
	
//$sheet = $objPHPExcel->getActiveSheet();
//上面这句,会默认读取Excel的活动工作簿

$suc = 0; $err = 0;
for($j=2;$j<=$highestRow;$j++){
	$a = $sheet->getCell("A".$j)->getValue();
	$b = $sheet->getCell("B".$j)->getValue();
	$c = $sheet->getCell("C".$j)->getValue();
	$d = $sheet->getCell("D".$j)->getValue();
	$e = $sheet->getCell("E".$j)->getValue();
	
	$arr = array(
		"goods"		=>$b,
		"no"		=>$c,
		"stock"		=>$d,
		"price"		=>$e,
	);
	
	$class_id = addClass($a);
	$arr["class_id"] = $class_id;
	$ok = addGoods($arr);
	if($ok){
		$suc++;
	}else{
		$err++;
	}
}

用的是上传Excel文件后实现读取并入库,其中没用的方法就没贴出来了,到了abcde这里就已经取到数据了。


PHPExcel导入日期时间格式处理>>