<?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. 【c++基础】ifstream的构造函数

    公共成员函数: ) ifstream(); initialization () explicit ifstream (const char* filename, ios_base::openmode ...

  2. convert CAN frame

    前言 最近了解了一些socket can的知识点,本文主要介绍如何将数据转换为CAN报文,前提是已经确定CAN的传输协议. 本文使用的CAN报文共有22条,这些报文共用一个can id,每条报文使用序 ...

  3. os.path.join 用法

    写在前面的话:看大家阅读量这么大,也应该在放点干货来了~~ 获取层级路径,直到可以获取文件夹下面的文件,多一个判断就行了: level1_list = [os.path.join(base_path, ...

  4. liunx服务程序的安装及配置

    1.系统运行级别:

  5. CodeForces - 1093G:Multidimensional Queries (线段树求K维最远点距离)

    题意:给定N个K维的点,Q次操作,或者修改点的坐标:或者问[L,R]这些点中最远的点. 思路:因为最后一定可以表示维+/-(x1-x2)+/-(y1-y2)+/-(z1-z2)..... 所以我们可以 ...

  6. java中 static,final,transient,volatile关键字的作用

    static 和final static  静态修饰关键字,可以修饰 变量,程序块,类的方法: 当你定义一个static的变量的时候jvm会将将其分配在内存堆上,所有程序对它的引用都会指向这一个地址而 ...

  7. ConfigUtil读取配置文件

    package utils; import java.util.ResourceBundle; public class ConfigUtil { private static ResourceBun ...

  8. CTF-练习平台-Misc之 猜?

    六.猜? 打开图片后发现是一个半个脸被遮住的美女,再联系到题目是“猜”,答案又是一个人的名字全拼,所以熟悉的人都知道这是刘亦菲,把拼音输进去就可以啦.

  9. python type metaclass

    在python中一切皆对象, 所有类的鼻祖都是type, 也就是所有类都是通过type来创建. 传统创建类 class Foo(object): def __init__(self,name): se ...

  10. 使用slot编写弹窗组件

    具体slot用法详见http://www.cnblogs.com/keepfool/p/5637834.html html: <!--测试弹窗--> <dialog-test v-i ...