PHPExcel удаляет строки в цикле

Есть ли более эффективный способ удаления строк в цикле, чем этот обходной путь?

/**
* Delete all rows that are identified on the 'D'
* column with a $tag String value
* @param String $tag
*/
protected function deleteRowsByTag( $tag )
{
$found = true;
while( $found )
{
$found = false;
foreach ( $this->objWorksheet->getRowIterator() as $row )
{
$cell = $this->objWorksheet->getCell( "D" . $row->getRowIndex() );
$tag = str_replace( "tag_delete_", "", $tag );
if ( strtolower( trim( $cell->getValue() ) ) === $tag )
{
$delete_row = $row->getRowIndex();
// $this->objWorksheet->getRowIterator()->seek( $delete_row-2 );
$this->objWorksheet->removeRow( $delete_row );
$found = true;
break;
}
}
}
} // deleteRowByTag

Я попытался установить итератор строки в положение prev-> prev, но это не сработало (одна из моих попыток прокомментирована в коде)

Спасибо

PS: @Mark Baker — извините, я не слишком внимательно читал руководство 🙂

1

Решение

Задача ещё не решена.

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]