PHP读取Excel文件(PHPExcel)
/*
* 读取Excel文件
* */
require_once (dirname(dirname(dirname(__FILE__))).'/PHPExcel/PHPExcel.php');//Classes为根目录
require_once (dirname(dirname(dirname(__FILE__))).'/PHPExcel/PHPExcel/IOFactory.php');
require_once (dirname(dirname(dirname(__FILE__)))).'/PHPExcel/PHPExcel/Reader/Excel5.php';
$newfile=md5($_FILES['filename']['name']);
$do = copy($_FILES['filename']['tmp_name'],dirname(dirname(dirname(__FILE__))).'/PHPExcel/cache/'.$newfile.'.xls');
$file_url=dirname(dirname(dirname(__FILE__))).'/PHPExcel/cache/'.$newfile.'.xls';
$objReader=PHPExcel_IOFactory::createReader('Excel5');//use excel2007 for 2007 format
$objPHPExcel=$objReader->load($file_url);//$file_url即Excel文件的路径
$sheet=$objPHPExcel->getSheet(0);//获取第一个工作表
$highestRow=$sheet->getHighestRow();//取得总行数
$highestColumn=$sheet->getHighestColumn(); //取得总列数
//循环读取excel文件,读取一条,插入一条
for($j=2;$j<=$highestRow;$j++){//从第一行开始读取数据
$str='';
for($k='A';$k<=$highestColumn;$k++){ //从A列读取数据
//这种方法简单,但有不妥,以'\\'合并为数组,再分割\\为字段值插入到数据库,实测在excel中,如果某单元格的值包含了\\导入的数据会为空
$str.=$objPHPExcel->getActiveSheet()->getCell("$k$j")->getValue().'\\';//读取单元格
}
//explode:函数把字符串分割为数组。
$strs=explode("\\",$str);
/*
* 进行写入数据库操作
* */
$table = new Table('customer_info', $_POST);
$table->SetStrip('location', 'other');
$table->input_time = time();
$table->input_admin_id = $login_user_id;
$fieldArr = array(
'sign_name', 'sign_time', 'floor_num',
'room_num', 'built_cover', 'suite_cover', 'pay_type',
'amount_price', 'c_name', 'c_sex', 'identity_id', 'c_position', 'c_email',
'c_tel', 'c_pscode', 'c_addr', 'company_name',
'company_tel', 'company_web', 'company_business','account_name',
'bank_name','bank_account'
);
//将值赋予对象
// for($i=0;$i<count($fieldArr);$i++){
// $table->$fieldArr[$i]=$strs[$i];
// }
$table->sign_name=$strs[0];
$table->sign_time=$strs[1];
$table->floor_num=$strs[2];
$table->room_num=$strs[3];
$table->built_cover=$strs[4];
$table->suite_cover=$strs[5];
$table->pay_type=$strs[6];
$table->amount_price=$strs[7];
$table->c_name=$strs[8];
$table->c_sex=$strs[9];
$table->identity_id=$strs[10];
$table->c_position=$strs[11];
$table->c_email=$strs[12];
$table->c_tel=$strs[13];
$table->company_web=$strs[14];
$table->company_business=$strs[15];
$table->account_name=$strs[16];
$table->bank_name=$strs[17];
$table->bank_account=$strs[18];
$table->insert(array(
'input_time', 'input_admin_id', 'sign_name', 'sign_time', 'floor_num',
'room_num', 'built_cover', 'suite_cover', 'pay_type',
'amount_price', 'c_name', 'c_sex', 'identity_id', 'c_position', 'c_email',
'c_tel', 'c_pscode', 'c_addr', 'company_name',
'company_tel', 'company_web', 'company_business','account_name',
'bank_name','bank_account'
));
}
unlink($file_url);//删除excel文件
PHP读取Excel文件(PHPExcel)的更多相关文章
- 利用PHPExcel读取excel文件
$filePath = "7788.xls"; $PHPExcel = new PHPExcel(); $PHPReader = new PHPExcel_Reader_Excel ...
- PhpSpreadsheet如何读取excel文件
PhpSpreadsheet如何读取excel文件 一.总结 一句话总结:万能的百度,直接搜代码就好,绝对有,毕竟github上面4000+的关注,说明很多人用了这个,使用照着demo倒是异常简单 二 ...
- PHPExcel读取Excel文件的实现代码
<?php require_once 'PHPExcel.php'; /**对excel里的日期进行格式转化*/ function GetData($val){ $jd = GregorianT ...
- PHPExcel读取excel文件示例
PHPExcel读取excel文件示例PHPExcel最新版官方下载网址:http://phpexcel.codeplex.com/PHPExcel是一个非常方便生成Excel格式文件的类,官方下载包 ...
- (实用篇)PHPExcel读取Excel文件的实现代码
用PHPExcel读取Excel 2007 或者Excel2003文件,需要的朋友,可以参考下. 涉及知识点: php对excel文件进行循环读取 php对字符进行ascii编码转化,将字符转为十进 ...
- PHP使用phpexcel读取excel文件
PHP读取excel文件 require("Classes/PHPExcel.php"); require("Classes/PHPExcel/IOFactory.php ...
- php phpexcel 读取excel文件数据
public function readExcel(){ $allPath = '/home/examine\video/list.xls'; \think\Loader::import('exten ...
- PHP读取Excel文件内容
PHP读取Excel文件内容 项目需要读取Excel的内容,从百度搜索了下,主要有两个选择,第一个是PHPExcelReader,另外一个是PHPExcel. PHPExcelReader比较 ...
- php读取excel文件 更新修改excel
php读取excel文件示例,还有更新修改功能. 代码: //模板存放目录 $dir = $DOCUMENT_ROOT.'/backoffice/admin/oemcheck/'; $template ...
随机推荐
- Linux学习 -- 软件包管理
1 软件包类型 源码包 脚本安装包 install.sh 不常用 二进制包(rpm包.系统默认包) RedHat -- rpm包 Debian,Ubuntu -- beb包 2 RPM包命令管理 ...
- C语言中的几种常见排序算法
1.冒泡排序法:如果有N个数,两两相邻进行比较,将最值沉入最后一位置,要进行N-1轮比较, 第一轮要比较N-1次,第2轮只要比较N-1-1次,因为第一次已经把最值沉入最后一位置,故 不需在进行比较一次 ...
- ubuntu 解压 windows 生成的 zip 文件乱码问题
在windows上压缩的文件,是以系统默认编码中文来压缩文件.由于zip文件中没有声明其编码,所以linux上的unzip一般以默认编码解压,中文文件名会出现乱码. 有两种方式解决问题:(建议采用方法 ...
- wamp开机自动启动
控制面板--管理工具--服务 将其中的wampapache和wampmysql的属性均改为“自动”即可.
- 虚拟ip
网卡上增加一个IP: ifconfig eth0:1 192.168.0.1 netmask 255.255.255.0 删除网卡的第二个IP地址: ip addr del 192.168.0.1 d ...
- java thread park
http://agapple.iteye.com/blog/970055 apidoc中说,park/unpark用来阻塞/激活线程,但是没有弃用方法suspend/resume的缺点,suspend ...
- source.list
deb http://www.anheng.com.cn/debian/ squeeze maindeb-src http://www.anheng.com.cn/debian/ squeeze ma ...
- java几种常用设计模式简单示例
1.单例设计模式 所谓单例设计模式简单说就是无论程序如何运行,采用单例设计模式的类(Singleton类)永远只会有一个实例化对象产生.具体实现步骤如下: (1) 将采用单例设计模式的类的构造方法私有 ...
- android 画图之setXfermode .
setXfermode 设置两张图片相交时的模式 我们知道 在正常的情况下,在已有的图像上绘图将会在其上面添加一层新的形状. 如果新的Paint是完全不透明的,那么它将完全遮挡住下面的Paint: 而 ...
- 关于UIView及其子类重绘drawRect
转载自:https://nezha.gitbooks.io/ios-developmentarticles/content/UIView%E7%9A%84drawRect%E9%87%8D%E7%BB ...