иметь значение xls с форматированным текстом, с phpExcel

Я ищу способ касаться xls с форматированным текстом базы данных сервера через phpExcel. Какие-то ячейки файла содержат плоский текст и другой форматированный текст, с несколькими форматами в той же ячейке.

Уже я проверил выбор getStyle() и getCellValue() PHPexcel cannot reads styles from xls, но я это не получаю.

  • Марк Бейкер использует getStyle() чтобы извлекать стиль конкретной ячейки ('B2'). Я нуждаюсь в том, чтобы извлечь контент всех, содержите или нет форматированный текст. С toArray() я пробегаю весь xls.

  • Во втором выборе используй getCellValue(). Эта инструкция дает мне следующее сообщение: Фатальная ошибка: Uncaught Ошибка: Call to undefined method PHPExcel_Worksheet:: getCellValue ()

Как я делаю, чтобы импортировать весь контент excel поддерживая стили?

1
задан 23.05.2017, 15:39
1 ответ

Ответ, который ты соединяешь, должен быть desfasada, так как он 2012.

toArray () продолжи существовать и возврати array с данными об активной странице.

В настоящей версии phpExcel код второго выбора был бы чем-то как:

$objPHPExcel->getActiveSheet()->getCell('B2')->getValue();

Чтобы пробегать различные ячейки ты можешь использовать различные "iterator" (rowiterator и columniterator).

$objReader = PHPExcel_IOFactory::createReader('Excel2007');
$objReader->setReadDataOnly(TRUE);
$objPHPExcel = $objReader->load("test.xlsx");

$objWorksheet = $objPHPExcel->getActiveSheet();

echo '<table>' . PHP_EOL;
foreach ($objWorksheet->getRowIterator() as $row) {
    echo '<tr>' . PHP_EOL;
    $cellIterator = $row->getCellIterator();
    $cellIterator->setIterateOnlyExistingCells(FALSE); // This loops through all cells,
                                                       //    even if a cell value is not set.
                                                       // By default, only cells that have a value 
                                                       //    set will be iterated.
    foreach ($cellIterator as $cell) {
        echo '<td>' . 
             $cell->getValue() . 
             '</td>' . PHP_EOL;
    }
    echo '</tr>' . PHP_EOL;
}
echo '</table>' . PHP_EOL;

Это пример, который появляется в: https://github.com/PHPOffice/PHPExcel/blob/develop/Documentation/markdown/Overview/07-Accessin

На каждом объекте Cell ты можешь использовать методы getValue и getStyle, чтобы получать данные, в которых ты нуждаешься.

1
ответ дан 24.11.2019, 13:48

Теги

Похожие вопросы