Оставлю тут, может кому пригодится: Скачиваем биб
Оставлю тут, может кому пригодится: Скачиваем библиотеку PHPExcel Я положил ее в assets/lib/ там внутри уже папка Classes из скачанного архива, в сниппете будет виден путь. Создал TV файл, назвал его xlsFile Создал сниппет showXls, в нем присутствует отладочная информация:
<?php
require_once 'assets/lib/Classes/PHPExcel/IOFactory.php'; // Подключаем библиотеку
$xls = $modx->resource->getTVValue('xlsFile'); // Наш TV
$objPHPExcel = PHPExcel_IOFactory::load($xls); // Скармливаем его библиотеке
foreach ($objPHPExcel->getWorksheetIterator() as $worksheet)
{
$worksheetTitle = $worksheet->getTitle();
$highestRow = $worksheet->getHighestRow(); // Например, 10
$highestColumn = $worksheet->getHighestColumn(); // Например, 'F'
$highestColumnIndex = PHPExcel_Cell::columnIndexFromString($highestColumn);
$nrColumns = ord($highestColumn) - 64;
echo "
В таблице ".$worksheetTitle." ";
echo $nrColumns . ' колонок (A-' . $highestColumn . ') ';
echo ' и ' . $highestRow . ' строк.';
echo '
Данные: <table border="0"><tr>';
for ($row = 1; $row <= $highestRow; ++ $row)
{
echo '<tr>';
for ($col = 0; $col < $highestColumnIndex; ++ $col)
{
$cell = $worksheet->getCellByColumnAndRow($col, $row);
$val = $cell->getValue();
$dataType = PHPExcel_Cell_DataType::dataTypeForValue($val);
echo '<td>' . $val . '
(Тип ' . $dataType . ')</td>';
}
echo '</tr>';
}
echo '</table>';
}
И теперь в ресурсе, где надо вывести Excel и где мы загрузили в TV файлик, запускаем сниппет:
[[showXls?]]