【PHPExecl】PHP简单实现Execl的导入导出【原创】

时间:2022-08-19 18:38:03
如题1:
纯文本文件 city.txt为城市信息, 里面的内容(包括花括号)如下所示:
   
   
  1. {
  2. "1" : "上海",
  3. "2" : "北京",
  4. "3" : "成都"
  5. }
写入到city.xls文件中:
【PHPExecl】PHP简单实现Execl的导入导出【原创】

代码:
   
   
  1. <?php
  2. /**
  3. * 把txt中的json数据导入到excel中
  4. * Created by PhpStorm.
  5. * User: Administrator
  6. * Date: 2016/12/9
  7. * Time: 19:02
  8. */
  9. require_once 'Common/PHPExcel/Classes/PHPExcel.php';
  10. //读取文件并且转json为数组
  11. $json = file_get_contents('15/city.txt');
  12. $array = json_decode($json, true);
  13. $PHPExcel = new PHPExcel();
  14. $PHPExcel_write = new PHPExcel_Writer_Excel5($PHPExcel);
  15. $string = range('A', 'Z');
  16. //写入数据
  17. foreach ($array as $key=>$value) {
  18. //输入第一列
  19. $PHPExcel->getActiveSheet()->setCellValue($string[0].$key, $key);
  20. //输入第二列
  21. $PHPExcel->getActiveSheet()->setCellValue($string[1].$key, $value);
  22. }
  23. //保存到xls
  24. $PHPExcel_write->save('15/city.xls');

如题2:  纯文本文件 student.txt为学生信息, 里面的内容(包括花括号)如下所示:
   
   
  1. {
  2. "1":["张三",150,120,100],
  3. "2":["李四",90,99,95],
  4. "3":["王五",60,66,68]
  5. }
写入到student.xls文件中:
【PHPExecl】PHP简单实现Execl的导入导出【原创】

代码为:
   
   
  1. <?php
  2. /**
  3. * 把txt中的json数据导入到excel中
  4. * Created by PhpStorm.
  5. * User: Administrator
  6. * Date: 2016/12/9
  7. * Time: 19:02
  8. */
  9. require_once 'Common/PHPExcel/Classes/PHPExcel.php';
  10. //读取文件并且转json为数组
  11. $json = file_get_contents('14/student.txt');
  12. $array = json_decode($json, true);
  13. $PHPExcel = new PHPExcel();
  14. $PHPExcel_write = new PHPExcel_Writer_Excel5($PHPExcel);
  15. $string = range('A', 'Z');
  16. //写入数据
  17. foreach ($array as $key=>$value) {
  18. //输入第一列
  19. $PHPExcel->getActiveSheet()->setCellValue($string[0].$key, $key);
  20. //输入后面的列
  21. foreach ($value as $key2=>$value2) {
  22. $PHPExcel->getActiveSheet()->setCellValue($string[$key2+1].$key, $value2);
  23. }
  24. }
  25. //保存到xls
  26. $PHPExcel_write->save('14/student.xls');

如题3: 读取execl文件 【PHPExecl】PHP简单实现Execl的导入导出【原创】

代码为:
   
   
  1. <?php
  2. /**
  3. * 将 第 0014 题中的 student.xls 文件中的内容写到 student.xml 文件中
  4. * Created by PhpStorm.
  5. * User: Administrator
  6. * Date: 2016/12/17
  7. * Time: 21:38
  8. */
  9. require_once 'Common\PHPExcel\Classes\PHPExcel\IOFactory.php';
  10. $reader = PHPExcel_IOFactory::createReader('Excel5'); //设置以Excel5格式(Excel97-2003工作簿)
  11. $PHPExcel = $reader->load("17/student.xls"); // 载入excel文件
  12. $sheet = $PHPExcel->getSheet(0); // 读取第一個工作表
  13. $highestRow = $sheet->getHighestRow(); // 取得总行数
  14. $highestColumm = $sheet->getHighestColumn(); // 取得总列数
  15. /** 循环读取每个单元格的数据 */
  16. for ($row = 1; $row <= $highestRow; $row++){//行数是以第1行开始
  17. for ($column = 'B'; $column <= $highestColumm; $column++) {//列数是以B列开始
  18. $dataset[$row][] = $sheet->getCell($column.$row)->getValue();
  19. }
  20. }
  21. var_dump($dataset);