PHP excel读取excel文件转换为数组
/*
备注:先去下载PHP EXCEL——http://download-codeplex.sec.s-msft.com/Download/Release?ProjectName=phpexcel&DownloadId=809023&FileTime=130382506270130000&Build=20907
*/ /*
* 将excel转换为数组 by aibhsc
* */
require(ROOT_PATH . 'includes/PHPExcel.php');//引入PHP EXCEL类
function format_excel2array($filePath='',$sheet=){
if(empty($filePath) or !file_exists($filePath)){die('file not exists');}
$PHPReader = new PHPExcel_Reader_Excel2007(); //建立reader对象
if(!$PHPReader->canRead($filePath)){
$PHPReader = new PHPExcel_Reader_Excel5();
if(!$PHPReader->canRead($filePath)){
echo 'no Excel';
return ;
}
}
$PHPExcel = $PHPReader->load($filePath); //建立excel对象
$currentSheet = $PHPExcel->getSheet($sheet); //**读取excel文件中的指定工作表*/
$allColumn = $currentSheet->getHighestColumn(); //**取得最大的列号*/
$allRow = $currentSheet->getHighestRow(); //**取得一共有多少行*/
$data = array();
for($rowIndex=;$rowIndex<=$allRow;$rowIndex++){ //循环读取每个单元格的内容。注意行从1开始,列从A开始
for($colIndex='A';$colIndex<=$allColumn;$colIndex++){
$addr = $colIndex.$rowIndex;
$cell = $currentSheet->getCell($addr)->getValue();
if($cell instanceof PHPExcel_RichText){ //富文本转换字符串
$cell = $cell->__toString();
}
$data[$rowIndex][$colIndex] = $cell;
}
}
return $data;
} 使用方法:
$filePath = ROOT_PATH.'data/diamondStock.xlsx'; //钻石库存文件
$data = format_excel2array($filePath);
print_r($data);die; 输出结果示例: Array
(
[] => Array
(
[A] => 商品编号
[B] => 商品名称
[C] => 总重量
[D] => 进货价格
[E] => 销售价格
[F] => 4C备注
) [] => Array
(
[A] =>
[B] => GIA-
[C] => 0.7
[D] =>
[E] =>
[F] => G色、.7ct、SI1、FR
) [] => Array
(
[A] =>
[B] => GIA-
[C] => 0.7
[D] =>
[E] =>
[F] => G色、.7ct、SI1、FR
) [] => Array
(
[A] =>
[B] => GIA-
[C] => 0.7
[D] =>
[E] =>
[F] => G色、.7ct、SI1、FR
) [] => Array
(
[A] =>
[B] => GIA-
[C] => 0.7
[D] =>
[E] =>
[F] => G色、.7ct、SI1、FR
) [] => Array
(
[A] =>
[B] => GIA-
[C] => 0.7
[D] =>
[E] =>
[F] => G色、.7ct、SI1、FR
) [] => Array
(
[A] =>
[B] => GIA-
[C] => 0.7
[D] =>
[E] =>
[F] => G色、.7ct、SI1、FR
) [] => Array
(
[A] =>
[B] => GIA-
[C] => 0.7
[D] =>
[E] =>
[F] => G色、.7ct、SI1、FR
) [] => Array
(
[A] =>
[B] => GIA-
[C] => 0.7
[D] =>
[E] =>
[F] => G色、.7ct、SI1、FR
) [] => Array
(
[A] =>
[B] => GIA-
[C] => 0.7
[D] =>
[E] =>
[F] => G色、.7ct、SI1、FR
) [] => Array
(
[A] =>
[B] => GIA-
[C] => 0.7
[D] =>
[E] =>
[F] => G色、.7ct、SI1、FR
) [] => Array
(
[A] =>
[B] => GIA-
[C] => 0.7
[D] =>
[E] =>
[F] => G色、.7ct、SI1、FR
) [] => Array
(
[A] =>
[B] => GIA-
[C] => 0.7
[D] =>
[E] =>
[F] => G色、.7ct、SI1、FR
) [] => Array
(
[A] =>
[B] => GIA-
[C] => 0.7
[D] =>
[E] =>
[F] => G色、.7ct、SI1、FR
) )
PHP excel读取excel文件转换为数组的更多相关文章
- java的poi技术下载Excel模板上传Excel读取Excel中内容(SSM框架)
使用到的jar包 JSP: client.jsp <%@ page language="java" contentType="text/html; charset= ...
- PHP读取txt文件到数组
$file_path = "test.txt"; if(file_exists($file_path)){ $file_arr = file($file_path); for($i ...
- 服务器不装Excel读取Excel并转换DataTable
原来是用OleDb.4.0组件读取Excel,但是放到服务器后 傻了,服务器没装Excel ,而且领导说不可以装 没办法,只好自己重新找下代码 在CodeProject找到一个开源的dll,一阵欢喜啊 ...
- Microsoft.Office.Interop.Excel 读取 excel 中的 checkbox 和 radio
using Excel = Microsoft.Office.Interop.Excel; Excel.Application excelapp = new Excel.Application(); ...
- C#导入Excel|读取Excel方法
OleDbConnection读取 /// <summary> /// 返回Excel数据源 /// </summary> /// < ...
- php逐行读取txt文件写入数组的方法
使用说明: 采用fopen 方法,逐行读取数据,并使用feof($fp) 判断是否文件截止,最后通过filter() 方法,去除空白行,得到所需数据 $file = fopen("user ...
- phpexcel如何读取excel的数据和如何导出数据到excel
phpexcel如何读取excel的数据和如何导出数据到excel 一.总结 一句话总结:去官网看参考手册和api,或者找中文的博客或者参考手册 1.phpexcel插件如何下载? 其实这些插件不仅可 ...
- 利用PHPExcel读取Excel的数据和导出数据到Excel
PHPExcel是一个PHP类库,用来帮助我们简单.高效实现从Excel读取Excel的数据和导出数据到Excel.也是我们日常开发中,经常会遇到的使用场景.比如有个客户信息表,要批量导出发给同事,我 ...
- asp.net mvc Dateset读取Excel数据
//处理Excel //读取Excel [NonAction] public static DataSet ExcelToDS(string Path) { //根据情况选择合适的连接字符,参考msd ...
随机推荐
- 【分治】计算概论(A) / 函数递归练习(1)多边形游戏
#include<cstdio> #include<algorithm> using namespace std; ],c[],s[]; int work(int L,int ...
- 输入输出流和String的混合使用-替换信息
---恢复内容开始--- package demo; import java.io.BufferedReader; import java.io.BufferedWriter; import java ...
- laravel中的事件处理
一.什么是事件处理 事件就是在特地时间.特定地点.发生的特定行为.例如:删除某个用户帖子这个行为后,要通过站短发送信息给帖子所属的用户.这里就有删除帖子事件,发站短是事件后处理. 二.为什么要使用事件 ...
- python中的else子句
在一般的语言中else子句一般是紧跟在if 子句后面,但是python语言中else子句可以不跟在if子句后面,请看下面代码: >>> for n in range(2, 10): ...
- identifier is too long 异常处理
修改了oracle中的表. 报 identifier is too long 错误 我执行的脚本是: ---备份create table MDT_AGREEMENTMANAGEMENT_2018080 ...
- easyui中一键清空搜索栏搜索条件的思路
$.fn.clearAllSearchPanel = function () { var $id = $(this); $id.find(".form-control").each ...
- 阿里云RDS(云数据库)之产品简介
参考阿里产品文档:https://docs.aliyun.com/?spm=5176.100054.3.1.ywnrMX#/pub/rds/product-introduce/overview& ...
- [Python爬虫] 之二十四:Selenium +phantomjs 利用 pyquery抓取中广互联网数据
一.介绍 本例子用Selenium +phantomjs爬取中广互联网(http://www.tvoao.com/select.html)的资讯信息,输入给定关键字抓取资讯信息. 给定关键字:数字:融 ...
- 深入NIO Socket实现机制(转)
http://www.jianshu.com/p/0d497fe5484a# 前言 Java NIO 由以下几个核心部分组成: Buffer Channel Selector 以前基于net包进行so ...
- TestNG+Jenkins+Maven参数化测试dubbo接口
1.TestNG参数化测试用例: package com.tree.autotest.testcase.IUserBankSummaryService; import com.datatrees.fi ...