это мой первый вопрос в stackoverflow.Я пытаюсь использовать PHPExcel для создания таблицы HTML из файла .xlsx.Вы можете найти мой проект в: http://rahulr92.x10.mx/excel/index.php Войдите под именем пользователя 'admin', и вы найдете опцию 'Просмотр таблицы'.На этой странице отображается таблица из ранее загруженного файла .xlsx.Я новичок в PHPExcel и использовал какой-то стандартный код, который я нашел в Интернете.Вот оно:
<?php
require_once '/Classes/PHPExcel.php';
$objReader = PHPExcel_IOFactory::createReader('Excel2007');
$objReader->setReadDataOnly(true);
$objPHPExcel = $objReader->load("..\excel.xlsx");
$objWorksheet = $objPHPExcel->getActiveSheet();
$highestRow = $objWorksheet->getHighestRow();
$highestColumn = $objWorksheet->getHighestColumn();
$highestColumnIndex = PHPExcel_Cell::columnIndexFromString($highestColumn);
$user=strtolower($_GET['user']);
$r_count=0;
echo '<table border="1">' . "\n";
for ($row = 5; $row <= $highestRow; ++$row) {
if ($row <7 || $user=="admin" || strstr(strtolower($objWorksheet->getCellByColumnAndRow(8, $row)->getValue()),$user ))
{
if($row>7)$r_count++;
for ($col = 0; $col <= $highestColumnIndex; ++$col) {
if(PHPExcel_Shared_Date::isDateTime($objWorksheet->getCellByColumnAndRow($col,$row)))
echo '<td>' . date("d M Y",PHPExcel_Shared_Date::ExcelToPHP($objWorksheet->getCellByColumnAndRow($col, $row))) . '</td>' ;
else
echo '<td>' . $objWorksheet->getCellByColumnAndRow($col, $row)->getValue() . '</td>' . "\n";
}
echo '</tr>' . "\n";
}
}
echo '</table>' . "\n";
echo "No. of Entries: ".$r_count;
?>
Извините за неоптимальный код.Когда я запускаю php-файл, я получаю таблицу, и все строки в ней отображаются правильно, но поля даты и времени заполнены, казалось бы, случайным бредом.Пожалуйста, посмотрите на это по ссылке выше.Я провел некоторое исследование и узнал о функции isDateTime () таким образом.Но это не работает или, вероятно, используется неправильно.У меня сжатые сроки для этого проекта, поэтому было бы здорово, если бы кто-нибудь мог указать мне правильное направление.Очень жаль, если ответ был очень очевидным.Заранее большое спасибо.Рахул