Издательский дом ООО "Гейм Лэнд"ЖУРНАЛ ХАКЕР #72, ДЕКАБРЬ 2004 г.

В Excel, на экспорт!

Кислицин Никита

Хакер, номер #072, стр. 072-116-4


for ($j=0;$j<$numf;$j++) { #Стилем titleFormat впечатываем каждое поле в нашу таблицу

$fii=mysql_field_name($fields, $j);

$sheet-> write(0,$j,$fii, $titleFormat);

}

$sql="select * from $table"; #Выбираем все данные

$re=mysql_query($sql);

$i=1;

while($res=mysql_fetch_array($re)) {

for($j=0;$j<$numf;$j++){ #Впечатываем их в таблицу

$sheet-> write($i,$j,$res[$j]);

}

$i++;

} $xls-> close(); }

echo "Все прошло отлично, таблица сконвертирована в xls: <a href=\"li/$table".".xls"."\"> here</a> ";

}}

Это сокращенная версия моего класса, которую я поскипал специально для журнала. В полной версии, которую ты найдешь на диске и сайте http://ired.inins.ru/xa, присутствует дополнительный метод conn(), с помощью которого я подключаюсь к базе данных. Что же касается основной функции conv, то она работает следующим образом. Прежде всего проверяется, существует ли в папке ./li файл с названием таблицы. Если есть, он стирается. Затем я определяю, как будут обрисовываться ячейки, если я укажу в качестве их стиля $titleFormat. Для этого я использую стандартные методы этого класса. Полное их описание ты найдешь в документации на нашем диске.

Затем я получаю список полей таблицы и в цикле по ним вставляю в нулевую строку их названия, указывая в качестве стиля $titleFormat. После этого происходит выборка текстовых данных, и они уже в двумерном цикле тупо вбиваются в таблицу. Как видишь, ничего сложного нет, и разобраться с этим довольно легко.

Мне остается лишь пожелать тебе счастливого и угарного Нового года, счастья и позитива в наступающем. Давай, не попадайся :).

Что такое PEAR?

Если ты недолго программируешь на PHP, то, наверное, для тебя загадка, что же такое PEAR. Ответ программиста: PEAR – это груша по-английски. А еще это PHP Extension and Application Repository, репозиторий приложений и модулей PHP. Этакая структурированная библиотека разнообразных систем, поставляемых открытыми кодами. Благодаря этой системе стало довольно удобно релизить какие-то собственные разработки и распространять свой код среди единомышленников. Разумеется, эта система некоторым образом стандартизирует написание PHP-кода. Почитать о требованиях, предъявляемых к коду, можно здесь: http://pear.php.net/manual/en/standards.php.

Более подробно о PEAR можно почитать на сайте http://pear.php.net, а так же www.onlamp.com/pub/a/php/2001/05/24/pear.html и www.onlamp.com/pub/a/php/2001/07/19/pear.html.

Скрытые методы

Довольно занимательный факт: в библиотеке, о которой я тебе сегодня рассказывал, присутствует, по крайней мере, 3 класса, скрытых от пользователей. Либо они недокументированы, либо скрыты программно и не выставлены в объектный интерфейс. Тебе, скорее всего, не понадобится их использовать, однако для общего развития я опишу их:

* Spreadsheet_Excel_Writer_Validator позволяет добавлять проверочные правила для содержимого ячеек. Т.е. если пользователь вводит какие-то данные в одну из ячеек, с помощью этого класса можно удостовериться в том, что он трезв и вводит подходящие по формату сведения. Самое смешное заключается в том, что я не встречал описание этого класса в инете, мне достаточно лишь знать, что такой класс есть в принципе :).

Назад на стр. 072-116-3  Содержание  Вперед на стр. 072-116-5