为了账号安全,请及时绑定邮箱和手机立即绑定

使用php将上传的excel文件转换为csv

使用php将上传的excel文件转换为csv

PHP
有只小跳蛙 2021-11-26 15:43:44
我正在尝试使用 php 创建一个网页,该网页使用浏览按钮在页面上上传 excel 文件并将其导入 mysql 数据库。我可以上传 csv 文件并将其导入数据库//html代码<form action="import.php" enctype="multipart/form-data" method="post"role="form"><input type="file" name="file" id="file" accept=".xls"><br><br><input type="submit" name="submit" value="submit">//php代码 if ($conn->connect_error) {     die("Connection failed: " . $conn->connect_error); }  echo nl2br("Connected to Database successfully \n"); mysqli_query($conn,'Truncate table sheet'); $file = $_FILES['file']['tmp_name']; file_put_contents($file,str_replace("'","\'",file_get_contents($file))); $handle = fopen($file,"r");// 另一部分代码 if($sql) {     $ffilename=basename($_FILES['file']['name']);     $filename=preg_replace('/\\.csv/',' ',$ffilename);     echo "File ".$filename." imported in database"; } 我想上传 excel 文件并将其转换为 csv 而不按任何额外的按钮,并使用与我一直在使用的 csv 文件相同的代码,即 csv 文件虽然将被导入但 excel 文件将被上传。
查看完整描述

2 回答

?
动漫人物

TA贡献1815条经验 获得超10个赞

你可以使用Github:PHPOffice/PhpSpreadsheet,它是Github的继任者:PHPOffice/PHPExcel


安装它 composer require phpoffice/phpspreadsheet


require 'vendor/autoload.php';

use PhpOffice\PhpSpreadsheet\Spreadsheet;

use PhpOffice\PhpSpreadsheet\Writer\Xlsx;


$reader = new Xls();

$spreadsheet = $reader->load("test.xls");

$writer = new Csv($spreadsheet);

$writer->save("test.csv");

输入文件 test.xls

//img1.sycdn.imooc.com//61a0904e00018cfd04650112.jpg

输出文件 text.csv

//img1.sycdn.imooc.com//61a0905e0001a65202530091.jpg

查看完整回答
反对 回复 2021-11-26
?
摇曳的蔷薇

TA贡献1793条经验 获得超6个赞

您也可以尝试使用https://developers.convertio.co/ru/api/docs/来节省一些时间处理 .xlsx 文件混乱,只需使用辅助项目 API。

我试图只在 PHP 上做这样的事情,但最终在文档方面和不推荐使用的库上花费了几个小时后使用了 Convertio。

*不是由 Convertio 支付


查看完整回答
反对 回复 2021-11-26
  • 2 回答
  • 0 关注
  • 247 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信