PHP读取Excel类文件


Posted in PHP onMay 15, 2017

想要使用PHP读取Excel文件必然要用到PHPExcel开源类库,网上资源应该挺多的。但是每一种的操作必然都是不同的,可原理应该都是大同小异。

这个文件夹里包含的就是PHPExcel类文件

PHP读取Excel类文件

,在外面还有一个入口PHP文件

PHP读取Excel类文件

处理机制: 1.读取Excel文件

         2.获取最大行号和最大列号

            3.通过行数循环里面嵌套列数循环来用特殊符号拼接每个小表格里面的数据得到一个字符串

         4.然后使用explode拆分函数将字符串拆分后就得到了一个二维数组(即表格里面的数据)。

代码示例

$path = "/wamp/www/xiong/hadf";
    if(is_dir($path)){
      echo "存在";
    }else{
      mkdir($path, 0777, true);
      echo "chuangji";
    }
    require_once"./PHPExcel.php";
    $filePath = "./1233.xlsx";
    $PHPReader = new PHPExcel_Reader_Excel2007();
          if(!$PHPReader->canRead($filePath)) {
            $PHPReader = new PHPExcel_Reader_Excel5();
            if(!$PHPReader->canRead($filePath)) {
              echo 'no Excel';
              exit;
            }
          }
    $PHPExcel = $PHPReader->load($filePath);
          /**读取excel文件中的第一个工作表*/
          $currentSheet = $PHPExcel->getSheet(0);
          /**取得最大的列号*/
          $allColumn = $currentSheet->getHighestColumn();
          // echo $allColumn;exit;
          /**取得一共有多少行*/
          $allRow = $currentSheet->getHighestRow();
          /**从第二行开始输出,因为excel表中第一行为列名*/
          $val = '';
          for($currentRow = 1; $currentRow <= $allRow; $currentRow++) {
          /**从第A列开始输出*/
            for($currentColumn = 'A'; $currentColumn <= $allColumn; $currentColumn++) {
              $val .= $currentSheet->getCellByColumnAndRow(ord($currentColumn) - 65,$currentRow);//->getValue();/**ord()将字符转为十进制数*/
              $val .= "&%|%&";
              /**如果输出汉字有乱码,则需将输出内容用iconv函数进行编码转换,如下将GBK编码转为UTF-8编码输出*/
              //$val .= iconv('GBK','UTF-8', $val);
            }
            $val .= "\n";
          }$member_info_arr = explode("\n", $val);
          unset($member_info_arr[count($member_info_arr) - 1]);
          $present_time = date("Y-m-d H:i:s");
          if(count($member_info_arr) <= 0) {
            sys_msg_json(0, "会员信息文件中无数据,请添加");
          }
          unset($member_info_arr[0]);
          // var_dump($member_info_arr);exit;
          foreach ($member_info_arr as $key => $val) {
            $arr[$key] = explode("&%|%&",$val);
          }
          // var_dump($arr);exit;
          foreach ($arr as $key => $val) {
            unset($arr[$key][2]);
          }
          var_dump($arr);

以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,同时也希望多多支持三水点靠木!

PHP 相关文章推荐
1.PHP简介
Oct 09 PHP
php方法调用模式与函数调用模式简例
Sep 20 PHP
PHP实现的MongoDB数据库操作类分享
May 12 PHP
php json转换成数组形式代码分享
Nov 10 PHP
Mac OS下配置PHP+MySql环境
Feb 25 PHP
[原创]php获取数组中键值最大数组项的索引值
Mar 17 PHP
PHP生成短网址方法汇总
Jul 12 PHP
详解php 使用Callable Closure强制指定回调类型
Oct 26 PHP
Laravel模型间关系设置分表的方法示例
Apr 21 PHP
PHP单例模式模拟Java Bean实现方法示例
Dec 07 PHP
thinkphp5.1框架容器与依赖注入实例分析
Jul 23 PHP
Yii 框架控制器创建使用及控制器响应操作示例
Oct 14 PHP
详谈php中 strtr 和 str_replace 的效率问题
May 14 #PHP
PHP从数组中删除元素的四种方法实例
May 12 #PHP
利用PHPExcel读取Excel的数据和导出数据到Excel
May 12 #PHP
php中时间函数date及常用的时间计算
May 12 #PHP
解决php 处理 form 表单提交多个 name 属性值相同的 input 标签问题
May 11 #PHP
PHP 实现浏览记录并按日期分组
May 11 #PHP
thinkPHP5 ACL用户权限模块用法详解
May 10 #PHP
You might like
PHP+JS+rsa数据加密传输实现代码
2011/03/23 PHP
浅谈php中mysql与mysqli的区别分析
2013/06/10 PHP
php指定函数参数默认值示例代码
2013/12/04 PHP
jquery.combobox中文api和例子,修复了上面的小bug
2011/03/28 Javascript
关于使用 jBox 对话框的提交不能弹出问题解决方法
2012/11/07 Javascript
13 款最热门的 jQuery 图像 360 度旋转插件推荐
2014/12/09 Javascript
node.js中的fs.createReadStream方法使用说明
2014/12/17 Javascript
JavaScript 学习笔记之基础中的基础
2015/01/13 Javascript
JQuery中clone方法复制节点
2015/05/18 Javascript
纯js模拟div层弹性运动的方法
2015/07/27 Javascript
jquery+ajax+text文本框实现智能提示完整实例
2016/07/09 Javascript
jQuery在ie6下无法设置select选中的解决方法详解
2016/09/20 Javascript
纯JS焦点图特效实例(可一个页面多用)
2016/12/07 Javascript
JavaScript字符串_动力节点Java学院整理
2017/06/27 Javascript
AngularJS点击添加样式、点击变色设置的实例代码
2017/07/27 Javascript
Vue.js 通过jQuery ajax获取数据实现更新后重新渲染页面的方法
2018/08/09 jQuery
使用rollup打包JS的方法步骤
2018/12/05 Javascript
vue实现简单学生信息管理
2020/05/30 Javascript
vue常用高阶函数及综合实例
2021/02/25 Vue.js
[47:22]Mineski vs Winstrike 2018国际邀请赛小组赛BO2 第二场 8.16
2018/08/17 DOTA
[03:11]完美世界DOTA2联赛PWL DAY8集锦
2020/11/09 DOTA
使用scrapy实现爬网站例子和实现网络爬虫(蜘蛛)的步骤
2014/01/23 Python
利用python将pdf输出为txt的实例讲解
2018/04/23 Python
详解python3 + Scrapy爬虫学习之创建项目
2019/04/12 Python
Python实现 版本号对比功能的实例代码
2019/04/18 Python
Django forms表单 select下拉框的传值实例
2019/07/19 Python
英国复古皮包品牌:Beara Beara
2018/07/18 全球购物
当一个对象被当作参数传递到一个方法后,此方法可改变这个对象的属性,并可返回变化后的结果,那么这里到底是值传递还是引用传递?
2014/09/09 面试题
给领导的检讨书
2014/02/16 职场文书
高中毕业生的个人自我评价
2014/02/21 职场文书
机关道德讲堂实施方案
2014/03/15 职场文书
关于长城的导游词
2015/01/30 职场文书
铁人纪念馆观后感
2015/06/16 职场文书
学习经验交流会策划书
2015/11/02 职场文书
教你用Python+selenium搭建自动化测试环境
2021/06/18 Python
使用RedisTemplat实现简单的分布式锁
2021/11/20 Redis