怎么用phpexcel将Excel文件转成CSV文件并打开

PHPzhong
PHPzhong原创
2023-03-27 16:46:1462浏览

PHPEXCEL是一个优秀的PHP读写Excel文件的类库,它提供了非常充分的API,能够让我们使用PHP来读写Excel文件。而有些时候,我们需要将Excel文件转换成CSV文件,在一些场合下使用。

本文主要讲述如何使用PHPEXCEL类库将Excel文件转换成CSV文件,并进行打开。

一、转换Excel文件为CSV格式

步骤1:安装PHPEXCEL类库

首先,我们需要使用Composer来安装PHPEXCEL类库,可以使用以下命令:

composer require phpoffice/phpexcel

步骤2:读取Excel文件

使用PHPEXCEL读取Excel文件并转换为CSV文件,我们需要用到以下代码

// 加载类库
require_once 'vendor/autoload.php';

// 读取Excel文件
$inputExcel = './data/test.xlsx';
$phpExcel   = PHPExcel_IOFactory::load($inputExcel);

// 获取工作表
$sheet = $phpExcel->getActiveSheet();

// 循环遍历工作表
foreach ($sheet->getRowIterator() as $row) {
    $csv = [];
    $cellIterator = $row->getCellIterator();
    $cellIterator->setIterateOnlyExistingCells(false);

    foreach ($cellIterator as $cell) {
        $csv[] = $cell->getValue();
    }

    echo implode(',', $csv), PHP_EOL;
}

步骤3:将Excel文件转换为CSV文件

我们可以将上述代码中的echo换成将数据写入CSV文件中,完整代码如下

// 加载类库
require_once 'vendor/autoload.php';

// 读取Excel文件
$inputExcel = './data/test.xlsx';
$phpExcel   = PHPExcel_IOFactory::load($inputExcel);

// 定义CSV文件名和路径
$outputCSV  = './data/test.csv';

// 打开CSV文件并追加数据
$file = fopen($outputCSV, 'a+');

// 获取工作表
$sheet = $phpExcel->getActiveSheet();

// 循环遍历工作表
foreach ($sheet->getRowIterator() as $row) {
    $csv = [];
    $cellIterator = $row->getCellIterator();
    $cellIterator->setIterateOnlyExistingCells(false);

    foreach ($cellIterator as $cell) {
        $csv[] = $cell->getValue();
    }

    // 将数据写入CSV文件中
    fwrite($file, implode(',', $csv) . PHP_EOL);
}

// 关闭CSV文件
fclose($file);

在上述代码中,我们首先定义要写入CSV文件的文件名和路径,然后使用fopen函数打开CSV文件,并且设置打开方式为追加数据。接着,我们循环遍历Excel文件的每一行,并使用foreach循环遍历每一行中的单元格,并将单元格的值存储到一个数组中。最后,我们使用fwrite函数将每一行数据写入CSV文件中。最后,我们使用fclose函数关闭CSV文件。

二、打开CSV格式文件

完成Excel文件转换为CSV文件后,我们需要打开CSV文件,并且使用Excel或文本编辑器查看其内容。

如果需要在Excel中查看CSV文件,可以使用以下步骤来打开:

  1. 启动Excel应用程序。
  2. 点击“文件”->“打开”。
  3. 导航到CSV文件的位置,并选择该文件。
  4. 选择“文件类型”下拉菜单中的“文本文件”。
  5. 点击“打开”。
  6. 在“文本导入向导”窗口中,确保“分隔符”选项卡被选中。下面的“分隔符类型”选项卡应选择“逗号”。
  7. 点击“下一步”。
  8. 在“分隔符”选项卡上选择用于分隔数据的分隔符(例如逗号)。
  9. 点击“下一步”。
  10. 如果数据列的格式没有问题,不需要做任何更改,直接点击“下一步”。
  11. 在“目标”步骤中,选择Excel文件的工作表。
  12. 点击“完成”。

如果需要使用文本编辑器打开CSV文件,可以直接用文本编辑器打开即可,文件的数据内容将会以纯文本的形式显示。

结论

在本文中,我们介绍了如何使用PHPEXCEL类库将Excel文件转换为CSV格式,并对其进行了打开。希望能够帮助读者更好地利用PHPEXCEL类库。

以上就是怎么用phpexcel将Excel文件转成CSV文件并打开的详细内容,更多请关注php中文网其它相关文章!

声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。