Страница 1 из 1

html в xls

Добавлено: 2012-06-28 11:55:37
mmvds
Всем привет! Понадобилось мне сгенерировать из текстового файла таблицу xls (Excel) файл
Не мудрствуя лукаво, засунул содержимое в виде html (т.к. Excel распознает html содержимое):

Код: Выделить всё

$fr = fopen("./out.txt", "rt");
$fw = fopen("./tmp/$file.xls","w");
fwrite($fw,"<html><head><meta http-equiv=Content-Type content='text/html; charset=utf-8' /></head>");
fwrite($fw, "<table border=1> <tr>$file</tr><tr><td></td><td><b>Поле1</b></td><td><b>Поле2</b></td><td><b>Поле3<b></td><td><b>Поле 4</b></td></tr>");

for ($i=0; $data=fgetcsv($fr,100000,","); $i++)
{
  echo "<tr><td>$i</td><td>$data[2]</td></td><td>$data[0]</td><td>$data[1]</td><td>$data[3]</td></tr>";
  fwrite($fw,"<tr><td>$j</td><td>$data[2]</td></td><td>\"$data[0]\"</td><td>\"$data[1]\"</td><td>$data[3]</td></tr>");
}
echo "</table>";
fwrite($fw,"</table></html>");
fclose($fr);
fclose($fw);
В итоге получил нужный мне файл ./tmp/$file.xls вот только при его открытии в excel вылазит сообщение:
"Действительный формат открываемого файла ($file.xls) отличается от указываемого его расширением имени файла. Перед открытием данного файла убедитесь, что он не поврежден и получен из надежного источника. Открыть его сейчас?"
Жму "Да" и все отлично открывается. Документ в том виде, в каком мне нужен.
Еще бы как-то избавиться от этого надоедливого окошка. Подскажите пожалуйста, что еще необходимо добавить в xls файл?

Re: html в xls

Добавлено: 2012-11-18 17:05:00
Alex Keda
а почему бы не сохранить как html?