用php写一个可以同时将10000个excel文件内容导入一个excel文件中的程序显示导入进度条
时间: 2024-05-06 15:16:20 浏览: 130
以下是一个简单的PHP脚本,可以将指定文件夹中的10000个Excel文件内容导入到一个Excel文件中,并显示导入进度条:
```php
<?php
// 设置导入文件夹路径和目标文件路径
$importFolder = '/path/to/excel/folder/';
$targetFile = '/path/to/target/excel/file.xlsx';
// 初始化Excel读写类
require_once 'PHPExcel.php';
$reader = PHPExcel_IOFactory::createReader('Excel2007');
$writer = PHPExcel_IOFactory::createWriter(new PHPExcel(), 'Excel2007');
$objPHPExcel = $reader->load($targetFile);
// 获取导入文件夹中的所有Excel文件
$files = glob($importFolder . '*.xlsx');
// 设置进度条参数
$total = count($files);
$current = 0;
$percent = 0;
// 循环遍历文件,逐个导入内容
foreach ($files as $file) {
// 加载Excel文件内容
$excel = $reader->load($file);
$sheet = $excel->getActiveSheet();
// 将当前文件内容复制到目标文件中
$objPHPExcel->addExternalSheet($sheet);
// 更新进度条
$current++;
$percent = intval($current / $total * 100);
echo str_repeat('=', $percent) . '>' . $percent . '% complete' . PHP_EOL;
}
// 保存目标Excel文件
$writer->save($targetFile);
echo 'Import complete!' . PHP_EOL;
?>
```
在上面的示例中,我们使用了PHPExcel类库来进行Excel文件的读写操作。首先,我们需要初始化一个PHPExcel读写类实例,并加载指定的目标文件。接着,我们使用glob函数获取指定文件夹中所有Excel文件的路径,并使用循环遍历这些文件。在循环中,我们使用PHPExcel读写类实例加载每个Excel文件,并将其内容复制到目标文件中。同时,我们根据循环进度更新进度条并显示当前导入进度。最后,我们保存目标Excel文件,并输出导入完成的提示信息。
阅读全文