【问题标题】:How can i Insert a row in Excel File with PHP? [closed]如何使用 PHP 在 Excel 文件中插入一行? [关闭]
【发布时间】:2012-12-20 19:34:29
【问题描述】:

我是 php 新手,也许这很愚蠢.. 我有 5 个参数要添加到 Excel 2007 文件 (*.xlsx) 名称、电话、电子邮件和地址中。

$name = $_POST['name'];
$email = $_POST['email'];
$phone  = $_POST['phone'];
$adress = $_POST['adress'];

如何在每次代码运行时添加 1 行。

【问题讨论】:

标签: php excel insert excel-2007 xlsx


【解决方案1】:

假设您正在使用PHPExcel,您将这样做以编写一行:

$objPHPExcel = new PHPExcel();
$objPHPExcel->setActiveSheetIndex(0);
$row = 1;
$objPHPExcel->getActiveSheet()->SetCellValue('A'.$row, $_POST['name']);
$objPHPExcel->getActiveSheet()->SetCellValue('B'.$row, $_POST['email']);
$objPHPExcel->getActiveSheet()->SetCellValue('C'.$row, $_POST['phone']);
$objPHPExcel->getActiveSheet()->SetCellValue('D'.$row, $_POST['adress']);
$objWriter = new PHPExcel_Writer_Excel2007($objPHPExcel);
$objWriter->save('myfile.xlsx');

阅读文件涉及从这里开始并继续工作:

$objReader = PHPExcel_IOFactory::createReader('Excel2007');
$data = $objReader->load('myfile.xlsx');
$objWorksheet = $data->getActiveSheet();

显然,您需要深入研究文档以了解如何打开现有文件并附加到它们,但希望这能让您朝着正确的方向前进。

【讨论】:

  • 是的,我正在使用 PHPExcel,但是这段代码,我已经尝试过了。 $LastRow = $objPHPExcel->setActiveSheetIndex(0)->getHighestRow(); $row = $LastRow + 1; $objPHPExcel->getActiveSheet()->SetCellValue('A'.$row, $_POST['name']) 唯一的问题是,它总是创建一个新的 xls 而不是添加...任何想法?
  • 保存时,使用与加载相同的文件名进行保存。然后它不会创建新的 Excel 文件,而是会覆盖原来的
  • @user1818079,如果您更新上面的答案以发布您目前拥有的确切代码,这将有所帮助。
猜你喜欢
  • 2013-06-14
  • 1970-01-01
  • 1970-01-01
  • 2023-04-03
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-08-02
相关资源
最近更新 更多