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?
setInputEncoding вызывается после создания листа и влияет только на его содержимое. Для названия листа нужно принудительно вызывать iconv в 1251 $worksheet =& $workbook->addWorksheet(iconv("UTF-8", "CP1251", "Привет, лист"));
setInputEncoding вызывается после создания листа и влияет только на его содержимое. Для названия листа нужно принудительно вызывать iconv в 1251
$worksheet =& $workbook->addWorksheet(iconv(«UTF-8», «CP1251», «Привет, лист»));