<?php
header("Content-Type:text/html;charset=utf-8");
$dir = dirname(__FILE__);
require $dir . '/Excel/PHPExcel/IOFactory.php'; //引入PHP EXCEL类
$filename = $dir . "/storage_num.xls";
$fileType = PHPExcel_IOFactory::identify($filename); //自动获取php的类型给phpExcel用
$objReader = PHPExcel_IOFactory::createReader($fileType); //获取文件读取操作对象
$objPHPExcel = PHPExcel_IOFactory::load($filename); //加载整个Excel表格
//获取工作表的数目
$sheet = $objPHPExcel->getSheet(0); // 读取第一個工作
$allRow = $sheet->getHighestRow(); // 取得总行数
$allColumn = $sheet->getHighestColumn(); // 取得总列数
$sheetCount = $objPHPExcel->getSheetCount();
$data = array();
for ($rowIndex = 1; $rowIndex <= $allRow; $rowIndex++) {
//循环读取每个单元格的内容。注意行从1开始,列从A开始
for ($colIndex = 'A'; $colIndex <= $allColumn; $colIndex++) {
$addr = $colIndex . $rowIndex;
$cell = (string) $sheet->getCell($addr)->getValue();
if ($cell instanceof PHPExcel_RichText) { //富文本转换字符
$cell = strval($cell->__toString());
}
if (!empty($cell)) {
$data[$rowIndex][$colIndex] = $cell;
}
}
}
$all_key = $data[1]; //取出第一个数组的所有值作为新数组的key
$arr = array();
$ret = array();
$allAttr = array();
foreach ($data as $key => $value) {
if (!empty($value)) {//&& !empty($key)
if ($key != 0 && $key != 1) {
for ($colIndex = 'A'; $colIndex <= $allColumn; $colIndex++) {
if (!empty($all_key) && !empty($value)) {
if (!empty($value["$colIndex"])) {//去除空的单元格
$arr[$all_key["$colIndex"]] = $value["$colIndex"];
}
}
}
}
}
if (!empty($arr)) {
array_push($ret, $arr); //组合成新数组放到$ret
}
}
//循环新数组
foreach ($ret as $attr => $prodVal) {
if (!empty($prodVal)) {
//print_r($prodVal);
foreach ($prodVal as $attrname => $attrValue) {
//$STORAGE_NUM='';
if ($attrname == '货位号' && !empty($attrValue)) {//获取货位号
$STORAGE_NUM = $attrValue;
}
//$proCode='';
if ($attrname == '商品编号' && !empty($attrValue)) {//获取商品编号
$proCode = $attrValue;
}
$tns = 'oci:dbname=//192.168.1.9:1521/orcl';
$db_username = "test_product";
$db_password = "123456";
$sth = new PDO($tns, $db_username, $db_password);
//修改单条的货位号
//$sql="update T_PRODUCT set STORAGE_NUM=:STORAGE_NUM WHERE PROD_CODE='170020001118019'";
//修改所有的货位号
$sql = "update T_PRODUCT set STORAGE_NUM=:STORAGE_NUM WHERE PROD_CODE=:PROD_CODE";
$result = $sth->prepare($sql);
$result->bindParam(':STORAGE_NUM', $STORAGE_NUM);
$result->bindParam(':PROD_CODE', $proCode);
$bool = $result->execute();
var_dump($bool);
}
}
}
?>
php读取excel并存入数据库
最后编辑于 :
©著作权归作者所有,转载或内容合作请联系作者
- 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
- 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
- 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
推荐阅读更多精彩内容
- 最近策划提了个需求,但是已有的数据不能满足需要,于是内容资源部制作了份excel表格补充。So,任务来了,读取并使...
- tushare是一个非常神奇的Python模块包,基于新浪的API,可提供并不限于股票的历史数据。 数据库选用的是...
- 1、先去 https://github.com/PHPOffice/PHPExcel 下载 PHPExcel ; ...
- header("Content-type:text/html;charset=utf-8"); include('...