Задать вопрос

SpreadSheet_Excel_Writer и вкладки (листы) с русскими именами

Задача была предельно проста. Сформировать Excel-файл на основе данных из таблицы. В принципе ничего сложно. Был взят PEAR-модуль SpreadSheet_Excel_Writer оттестирован и запущен. И под конец работы выяснилось, что никоим образом не получается создать вкладку (новый лист) с именем на русском языке.
<?php
require_once 'Spreadsheet/Excel/Writer.php';
$workbook = new Spreadsheet_Excel_Writer("result.xls");
$workbook->setVersion(8);
$worksheet =& $workbook->addWorksheet("Новый лист1");
$worksheet->setInputEncoding('utf-8');
$worksheet->write(0,0,"Привет, мир!");
$workbook->close();
?>

Таким образом «Новый лист» будет отображен кракозябрами, а «Привет, мир!» вполне уютно будет жить на листе.
Второй день подряд ковыряюсь. А теперь, собственно, вопрос: Сталкивался кто-либо с такой задачей? Удалось реализовать? Если да, то какую библиотечку использовали. А может Вы сумели вылечить SpreadSheet_Excel_Writer?
  • Вопрос задан
  • 4345 просмотров
Подписаться 4 Оценить Комментировать
Пригласить эксперта
Ответы на вопрос 3
shurshur
@shurshur
Сисадмин, просто сисадмин...
PHPExcel получше будет.
Ответ написан
Комментировать
@Jazzist
Аналогично, названия вкладок на русском не получаются, хотя в самой таблице — без проблем.
Ответ написан
setInputEncoding вызывается после создания листа и влияет только на его содержимое. Для названия листа нужно принудительно вызывать iconv в 1251
$worksheet =& $workbook->addWorksheet(iconv(«UTF-8», «CP1251», «Привет, лист»));
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

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