Intereting Posts
сохранение XMLHttpRequest.responseText в переменной PHP readfile возвращает файл с нулевой длиной Проверьте, существует ли столбец в таблице Mysql через php PHP – Как изменить статус конфиденциальности видео с YouTube через Youtube API v3? Преобразование логики запросов mysql в построитель запросов Laravel Как настроить сообщения об ошибках регулярного выражения Zend_Form? Laravel5.1: проверять поле времени (время начала должно быть больше конечного времени) Как отображать адрес электронной почты для пользователей, но скрывать от робота? Есть ли простой способ сделать это с помощью PHP, Javascript или JQuery? Требуется расширение Mcrypt PHP. В Laravel С Ubuntu 14 Форсировать композитор, чтобы требовать версию PHP между версией X и версией Y PHP upcasting object Максимальная длина сгенерированного хэша при использовании пароля_шиба? Исключить маршрут из аутентификации Laravel PHP Удаление нескольких строк с помощью флажка Использование pdo в php с хранимой процедурой

Добавление новой строки в PHPExcel?

Как добавить новую строку в существующий файл .xls с помощью PHPExcel?

Нужно ли вычислять количество строк, которые уже существуют?

Если да, то как я могу сделать это для файла excel?

Предполагая эту настройку:

$objPHPExcel = PHPExcel_IOFactory::load("foo.xlsx"); $objWorksheet = $objPHPExcel->getActiveSheet(); 

Вы можете получить количество строк:

$num_rows = $objPHPExcel->getActiveSheet()->getHighestRow();

После этого вы можете вставить строку, используя следующую инструкцию:

$objWorksheet->insertNewRowBefore($num_rows + 1, 1);

Это добавляет 1 новую строку до $num_rows .

В приведенном выше примере добавляется только пустая строка. В приведенном ниже примере добавляются данные, поступающие из формы.

 <?php require_once '../inc/phpexcel/Classes/PHPExcel.php'; require_once '../inc/phpexcel/Classes/PHPExcel/IOFactory.php'; $objPHPExcel = PHPExcel_IOFactory::load("myExcelFile.xlsx"); $objWorksheet = $objPHPExcel->getActiveSheet(); //add the new row $num_rows = $objPHPExcel->getActiveSheet()->getHighestRow(); $objWorksheet->insertNewRowBefore($num_rows + 1, 1); $name = isset($_POST['name']) ? $_POST['name'] : ''; if($submit){ //SAVING THE NEW ROW - on the last position in the table $objWorksheet->setCellValueByColumnAndRow(0,$num_rows+1,$name); } //display the table echo '<table>'."\n"; echo '<thead> <tr> <th>Company Name</th> </tr> </thead>'."\n"; echo '<tbody>'."\n"; foreach ($objWorksheet->getRowIterator() as $row) { echo '<tr>'."\n"; $cellIterator = $row->getCellIterator(); $cellIterator->setIterateOnlyExistingCells(false); foreach ($cellIterator as $cell) { echo '<td>'.$cell->getValue().'</td>'."\n"; } echo '</tr>'."\n"; } echo '</tbody>'."\n"; echo '</table>'."\n"; ?>