我有一个小项目 [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/