Форум АНТИЧАТ

Форум АНТИЧАТ (https://forum.antichat.xyz/index.php)
-   PHP, PERL, MySQL, JavaScript (https://forum.antichat.xyz/forumdisplay.php?f=37)
-   -   Проблема с кодировкой в Spreadsheet_Excel_Writer (https://forum.antichat.xyz/showthread.php?t=97864)

-=Static=- 25.12.2008 11:33

Проблема с кодировкой в Spreadsheet_Excel_Writer
 
Может кто сталкивался? У меня из базы cp1251 набираются данные + из *.php, Создаю *.xls, в нем текст по-русски никак не хочет быть. все какие-то кракозябли пишет...В API написано что есть метод Worksheet::setInputEncoding - толку от него нету, подставлял и "CP1251" и "UTF-8" и "ISO-8859-4" (Cyr) - Нифига не пашет...может кто-нибудь что-нибудь подсказать?

groundhog 25.12.2008 11:47

Исходник в студию. Вардампил то, что идёт из базы? Уверен, что оно в нужной кодировке?

-=Static=- 25.12.2008 11:49

Уверен. Уже решил проблему:

PHP код:

<?
# Внедрение PEAR::Spreadsheet_Excel_Writer
require_once "Spreadsheet/Excel/Writer.php";
# Создание случая, отправка имени файла для создания
$xls =& new Spreadsheet_Excel_Writer($filename);
$xls->setVersion(8); // Обящательно надо!!! Иначе не будет работать setInputEncoding
# Добавление листа к файлу, возвращение объекта для добавления данныx
$sheet =& $xls->addWorksheet('Лист 1');
$sheet->setInputEncoding('CP1251');

Тут 2 ключевых момента:
1 - $xls->setVersion(8);
2 - $sheet->setInputEncoding('CP1251');

OpenOffice под FC 8 Стал понимать по-русски :D УРА!)


Время: 23:29