1

我需要将数据从excel导入php,因为我听说这很难,所以我需要将excel文件转换为csv。但是我遇到了问题,我无法成功转换,当我尝试时收到错误消息: 错误csv

我的原始 excel 文件如下所示: 原来的

转换为 csv 后: 后转换

有什么问题?我需要转换并保持相同的格式。

我用于读取 csv 的 php 文件如下所示:

<?php
$row = 1;
if (($handle = fopen("test.csv", "r")) !== FALSE) {
    while (($data = fgetcsv($handle, 1000, ",")) !== FALSE) {
        $num = count($data);
        echo "<p> $num fields in line $row: <br /></p>\n";
        $row++;
        for ($c=0; $c < $num; $c++) {
            echo $data[$c] . "<br />\n";
        }
    }
    fclose($handle);
}
?> 

在 php 中阅读后的结果如下: 示例

所以我需要任何想法如何在不丢失格式的情况下将 xls 转换为 csv 或如何将数据从 excel 文件导入 php。任何人都可以帮助我,好吗?谢谢你。

4

3 回答 3

2

这个 PHPExcel 库在加载大文件时存在一些问题(内存/时间)。如果您的文件不是那么大,phpExcel 是一个很好的解决方案,否则您可能必须尝试直接加载 .csv 格式的数据。

于 2013-11-04T17:35:52.990 回答
0

按您的要求,

@Nisarg Patel,你给了我指向 PHPExcel 的链接,我尝试使用它,但没有成功,我不知道我真的可以使用它。我需要将所有 3 个文件夹 Classes、Documentation 和 Examples 放到我的 FTP 中?那么我需要如何让它从 test.xls 导入数据我需要改变什么?谢谢你。

你可以通过这个来使用 PHPExcel。

Library of PHPExcel这里下载

然后IOFactory.php在你的文件中包含文件。

/** PHPExcel_IOFactory */
require_once '../../../includes/PHPExcel/Classes/PHPExcel/IOFactory.php';

然后制作对象

$objReader = PHPExcel_IOFactory::createReader('Excel5');
$objPHPExcel = $objReader->load("mytest1.xls");

在此Standard functions of PHPExcel用于获取数据之后。

于 2013-07-31T09:40:45.267 回答
0

所以我需要任何想法如何在不丢失格式的情况下将 xls 转换为 csv 或如何将数据从 excel 文件导入 php。任何人都可以帮助我,好吗?谢谢你。

CSV 没有任何样式功能。Excel、Google Docs、Libre 等...会将它们分隔为单元格,但文件本身就像它的名称一样——逗号分隔(或可能由其他字符分隔)的值列表。通常用双引号表示字符串和换行符表示行。我能想出完成你想要的唯一方法是在 HTML 中编码你的值。

于 2017-03-14T04:00:51.070 回答