php - 如何在 phpspreadsheet 中添加新行?

标签 php excel phpexcel php-5.6 phpspreadsheet

我有一个小项目 [Billing Account] 包含一些数学运算/值,例如 [+/*-%]..
通过深度搜索,很多网站都建议使用 phpspreadsheet,我开始通过教程学习如何使用它。

问:我如何添加新行?

例如:当我单击保存按钮时,程序将保存另一条记录
新行。

代码:

<?php

use PhpOffice\PhpSpreadsheet\Spreadsheet; 
use PhpOffice\PhpSpreadsheet\Writer\Xlsx;

require_once __DIR__ . '/phpoffice/phpspreadsheet/src/Bootstrap.php';


$spreadsheet = new Spreadsheet();
?>
<!DOCTYPE html>
<html>
<head>
    <title></title>
</head>
<body>
<form action="<?php echo $_SERVER['PHP_SELF']; ?>" method="post">
    Name:<input type="text" name="name">
    Age:<input type="text" name="age">
    <input type="submit" name="submit" value="Save">
</form>
</body>
</html>
<?php

$spreadsheet->getProperties()
->setCreator('root');

// New Worksheet
$sheet = $spreadsheet->getActiveSheet();
$sheet->setTitle('MySheet');


if(isset($_POST['submit'])){
$name = $_POST['name'];
$age = $_POST['age'];

 $sheet->setCellValue('A1',$name);
 $sheet->setCellValue('B1',$age);

$Writer = new Xlsx($spreadsheet);
$Writer->save('test.xlsx');

}

最佳答案

我认为您正在寻找的是 insertNewRowBefore,您需要一个 Worksheet 类实例,这是您大部分时间用来操作特定事件工作表的对象。
我真的不知道您还需要什么,但请关注 this API docs

如果您只想将值添加到单元格中,只需使用:

$cell = $sheet->getCellByColumnAndRow(colNumber(int), rowNumber(int));
$sheet->setCellValue('e.g A1', $cell->getValue());

再一次,探索 api,电子表格以一种相当奇怪的方式工作。

关于php - 如何在 phpspreadsheet 中添加新行?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51913401/

相关文章:

php - mysql 总和值 GROUP BY 分割

php - 如何优化查询以更快地获得结果?

php - 在 php 中将 1/0 值转换为 YES/NO

php - MySql查询错误(二)

html - Magento - container1 和 container2 的拆分选项

excel - 通过工作表上设计的自定义按钮,使用宏 vba 将一个 xls 的所有工作表复制到另一个 xls 文件

c# - 导出到 Excel 时如何将列表分配给 closedXML 中的单元格(下拉格式)

excel - 将模板从 Excel 复制到 Outlook

PHPExcel 文件不是正确的 Microsoft Excel 2003 XLS 格式

PHPExcel 库获取日期