composer require phpoffice/phpspreadsheet
xlsx、et 格式
<?php
require 'vendor/autoload.php';
use PhpOffice\PhpSpreadsheet\IOFactory;
$inputFileName = '1.xlsx';
//方法1.1, 1.2, 2都可以
//方法1:自动识别文件类型
//方法1.1
$spreadsheet = IOFactory::load($inputFileName);//自动识别文件类型
//方法1.2
//$spreadsheet = IOFactory::createReaderForFile($inputFileName)->setReadDataOnly(true)->load($inputFileName);
//方法2:指定文件类型
//$spreadsheet = IOFactory::createReader("Xlsx")->load($inputFileName);
//获取表格所有页
$sheets = $spreadsheet->getAllSheets();
foreach ($sheets as $shee_id=>$sheet){
$sheetData = $sheet->toArray(null, true, true, true);
foreach ($sheetData as $k=>$v){
foreach ($v as $txt){
if ($txt){
file_put_contents('excel1.txt', $txt.PHP_EOL,FILE_APPEND);
}
}
}
}
//获取单页表格数据
$sheetData = $spreadsheet->getActiveSheet()->toArray(null, true, true, true);
foreach ($sheetData as $k=>$v){
foreach ($v as $txt){
if ($txt){
file_put_contents('excel.txt', $txt.PHP_EOL,FILE_APPEND);
}
}
}
CSV格式
<?php
$filePath = '1.csv';
$data = getCsvData($filePath);
foreach ($data as $k=>$v){
foreach ((array)$v as $txt){
if ($txt){
file_put_contents('csv.txt', $txt.PHP_EOL,FILE_APPEND);
}
}
}
function getCsvData($filePath){
$handle = fopen( $filePath, "rb" );
$data = [];
while (!feof($handle)) {
$data[] = fgetcsv($handle);
}
fclose($handle);
$data = eval('return ' . iconv('gb2312', 'utf-8', var_export($data, true)) . ';'); //字符转码操作
return $data;
}