<?php
    //建立reader对象 ,分别用两个不同的类对象读取2007和2003版本的excel文件
    require("PHPExcel/Reader/Excel2007.php");
     $filePath = "text.xlsx";
     $PHPReader = new PHPExcel_Reader_Excel2007();
     if( ! $PHPReader->canRead($filePath))
     {
         $PHPReader = new PHPExcel_Reader_Excel2007();
         if( ! $PHPReader->canRead($filePath)){
             echo 'no Excel';
             return ;
         }
     }

$PHPExcel = $PHPReader->load($filePath); //读取文件
     $currentSheet = $PHPExcel->getSheet(0); //读取第一个工作簿
     $allColumn = $currentSheet->getHighestColumn(); // 所有列数
     $allRow = $currentSheet->getHighestRow(); // 所有行数
     $data = array(); //下面是读取想要获取的列的内容
     for ($rowIndex = 2; $rowIndex <= $allRow; $rowIndex++)
     {
         $data[$cell = $currentSheet->getCell('A'.$rowIndex)->getValue()] = $currentSheet->getCell('B'.$rowIndex)->getValue();
     }
     var_dump($data);
     foreach($data as $key=>$val){
         $str = var_export($val,true);
          file_put_contents("cross_yuanzheng_excel.php", "\r\n".'$cross_yuanzheng_arr['.$key.'] = '.$str.';',FILE_APPEND);
     }
// $data = var_export($data,true);
 ?>

以下为转conf配置文件的示例

<?php
//从策划excel表中获得物品id、名称、type,导入前,需先删除非数据部分的文字说明和列标题,文件名不能包含汉字,删除id=99999的无用物品,用类型字段排序后,删除末尾的空白行,再开始导入
require_once( './include/class/Classes/PHPExcel/IOFactory.php'); //$filePath = $path.$_GET['f'];//从参数获得文件名
//$filePath = "PHPExcel.php";//从参数获得文件名 //$path = "E:\\susen\\myjob\\ddt\\";//固定文件目录
$filePath = 'alrale_languages.xlsx';//从参数获得文件名
$content_cn_str = null;
$content_vn_str = null;
$PHPExcel = PHPExcel_IOFactory::load($filePath);
$currentSheet = $PHPExcel->getSheet(0);
$allColumn = $currentSheet->getHighestColumn();
$allRow = $currentSheet->getHighestRow();
$str_arr = array(); for( $currentRow = 2 ; $currentRow <= $allRow ; $currentRow++) {
$row_arr = array();
for ($currentColumn = 'A'; ord($currentColumn) <= ord($allColumn); $currentColumn++) {
$address = $currentColumn . $currentRow;
$string = $currentSheet->getCell($address)->getValue();
if ($string === '')
break;
switch ($currentColumn) {
case "A":
$flag = "catalog";
break;
case "B":
$flag = "file";
break;
case "C":
$flag = "name";
break;
case "D":
$flag = "cn";
break;
case "E":
$flag = "vn"; break; } $row_arr[$flag] = "$string"; } //一级目录 $new_cn_dir = $row_arr['catalog'].'/cn/'; $new_vn_dir = $row_arr['catalog'].'/vn/'; if(!is_dir($new_cn_dir) || !is_dir($new_cn_dir)){ mkdir(iconv("UTF-8", "GBK", $new_cn_dir),0777,true); mkdir(iconv("UTF-8", "GBK", $new_vn_dir),0777,true); } $new_cn_file = $row_arr['catalog'].'/cn/'.$row_arr['file'].'.conf'; $new_vn_file = $row_arr['catalog'].'/vn/'.$row_arr['file'].'.conf'; if(file_exists($new_cn_file) || file_exists($new_vn_file)){ unlink($new_cn_file ); unlink($new_vn_file ); } //$content_str = null; $content_cn_str .= "$row_arr[name]=$row_arr[cn]\n"; $content_vn_str .= "$row_arr[name]=$row_arr[vn]\n";} file_put_contents($new_cn_file,$content_cn_str,FILE_APPEND); file_put_contents($new_vn_file,$content_vn_str,FILE_APPEND);echo "44:ok!";

转化Excel表格为php配置文件的更多相关文章

  1. laravel 5.4 导出excel表格

    1.在laravel根目录下面找到一个composer.json文件 打开并在require下面加上一句话,如图所示: 注:以后这个excel的版本号可能还会修改 2.执行 composer inst ...

  2. 【游戏开发】Excel表格批量转换成CSV的小工具

    一.前言 在工作的过程中,我们有时可能会面临将Excel表格转换成CSV格式文件的需求.这尤其在游戏开发中体现的最为明显,策划的数据文档大多是一些Excel表格,且不说这些表格在游戏中读取的速度,但就 ...

  3. php网址显示excel表格内容

    /** * excel表格内容在网页中显示 * * 首先需要下载PHPExcel 工具包 * 网址: http://phpexcel.codeplex.com/releases/view/119187 ...

  4. DataTable数据与Excel表格的相互转换

    using Excel = Microsoft.Office.Interop.Excel; private static Excel.Application m_xlApp = null; /// & ...

  5. 用sqlserver处理excel表格

    本来最近在研究微信公众平台的,老大临时交我个任务,把excel表格里的数据导入sql数据库,我想这so easy嘛. 没想都在上面消磨了两天... 把情况介绍下:在数据库中有如下这样结构的表(A表) ...

  6. 【游戏开发】Excel表格批量转换成lua的转表工具

    一.简介 在上篇博客<[游戏开发]Excel表格批量转换成CSV的小工具> 中,我们介绍了如何将策划提供的Excel表格转换为轻便的CSV文件供开发人员使用.实际在Unity开发中,很多游 ...

  7. Java使用POI解析Excel表格

    概述 Excel表格是常用的数据存储工具,项目中经常会遇到导入Excel和导出Excel的功能. 常见的Excel格式有xls和xlsx.07版本以后主要以基于XML的压缩格式作为默认文件格式xlsx ...

  8. java用poi读取Excel表格中的数据

    Java读写Excel的包是Apache POI(项目地址:http://poi.apache.org/),因此需要先获取POI的jar包,本实验使用的是POI 3.9稳定版.Apache POI 代 ...

  9. node.js 操作excel 表格与XML文件常用的npm

    在日常工作中会经常用到把一些excel表格文件转化为json,xml,js等格式的文件,下面就是我在日常中用到的这些npm. 1.node-xlsx: node-xlsx可以把excel文件转化为上面 ...

随机推荐

  1. Linux下常用的ftp操作命令

    Linux下常用的ftp操作命令 =========== 完美的分割线 ============= 1.登陆ftp服务器 ftp [IP] [PORT] # 登陆ftp服务器,本机登陆可以不写IP 实 ...

  2. Texas Instruments matrix-gui-2.0 hacking -- helper_functions.php

    <?php # PHP_SELF: 但前正在执行脚本的文件名,与document root相关 # QUERY_STRING: 查询(query)的字符串 $cachefile = " ...

  3. VS2015 Release 生成调试信息

    - C/C++ > 常规 > 调试信息格式 - C/C++ > 优化 > 优化 > 禁止(/Od) - 链接器 > 调试 > 生成调试信息 > 是 (/ ...

  4. UVA 156:Ananagrams (vector+map+sort)

    题意:一大堆单词中间有空格隔开,以'#'结束输出,问只出现一次的的单词有哪些(如果两个具有相同的长度,相同的字母也算是相同的,不区分大小写,如:noel和lone属于一个单词出现两次).最后按照字典序 ...

  5. JS经典面试题

    自己总结了一些JS面试题 希望能够帮助正在找工作的程序猿(●´∀`●) 1.js 实现一个函数对javascript中json 对象进行克隆 var oldObject ="sdf" ...

  6. HDU 4632 区间DP 取模

    题目链接: http://acm.hdu.edu.cn/showproblem.php?pid=4632 注意到任意一个回文子序列收尾两个字符一定是相同的,于是可以区间dp,用dp[i][j]表示原字 ...

  7. Struts2重新学习2之struts2和struts1的区别

    1) 在Action实现类方面的对比:Struts 1要求Action类继承一个抽象基类:Struts 1的一个具体问题是使用抽象类编程而不是接口.Struts 2 Action类可以实现一个Acti ...

  8. test20180922 交错的字符串

    题意 分析 这个数据范围容易使人想到折半搜索. 我们将字符串分为前后两部分.如果前半部分中搜得的前缀串为{S1, S2},那么后半部分中搜得的后缀串必须为{rev(S2), rev(S1)},且为有序 ...

  9. OASGraph 转换rest api graphql 试用

    创建rest api lb4 appdemo 参考提示即可 安装 OASGraph git clone https://github.com/strongloop/oasgraph.git cd oa ...

  10. asp.net 导出excel的一种方法

    项目用到的一种导出excel 的方法予以记录:(具体的业务类可更具情况替换使用) protected void Export(string filename, List<ComponentCon ...