Apr 20

Колко струва един PDF?

   На скоро един клиент поиска нещо съвсем просто – в страничката, където се показва една километрична шарена таблица да има един бутон: “Запази като PDF файл”.
Сайтът беше писан на PHP, което привидно улесняваше нещата – все някой, все някога е правил някаква библиотека за такива работи. Отговорът “Добре, няма проблем” си дойде някак естествено… Аз и голямата ми уста… 🙂 🙂 🙂

Всъщност това си е интересна задачка. Особеното в случая беше, че не исках да “пиша” буква по буква PDF-а, нито да рисувам чертички, ка-мо-ли да оцветявам. Желанието ми беше да намеря от ония вълшебни и безплатни класове за PHP, които да конвертират HTML код директно в PDF. След малко Гугълуване нещата започнаха да се нареждат – намерих няколко опен-сорс решения и картината започна да става цветна:

Continue reading

Feb 21

How-To: Инсталиране на PHP под Windows и IIS

   Ще се постарая тази статия да не е поредната на тема “Инсталация на PHP под Windows”. Казвам го, защото обикновено стъпките са непълни, липсва ценна информация и възникват неочаквани неща, за които трябва да се ровите по форумите. Освен това не съм привърженик на принципа “цъкай без да знаеш какво значи това, което цъкаш” 🙂

Какво е PHP?

Continue reading

Feb 21

PHP & MySQL & IIS6: Unable to load dynamic library ./ext/php_mysql.dll – The specified procedure could not be found

   Доста лъжливо съобщение при положение, че конфигурацията в php.ini е ОК, а пътят до PHP и EXT папките е добавен в променливата на обкръжението (environment variable) %PATH% 🙂

Имаме следното: php 5.2.8 като архивен файл, а не .MSI.

Всъщност PHP-то си намира библиотеката php_mysql.dll, ОБАЧЕ самата библиотека не може да намери helper файла си libmysql.dll, въпреки, че се намира в достъпна през %PATH% директория (!?!). Така че ако искате да си спестите момента с дебъгването просто копирайте libmysql.dll в %SYSTEMROOT%\System32 и всичко заспива.

%SYSTEMROOT% е променлива, която съдържа пътя до директорията, където е инсталиран Windows. Обикновено е C:\Windows

Ако и това не помогне и държите ДА НЕ използвате .MSI пакети или прословутите бъндели (PHP+MySQL+каквото се сетите друго) можете да проверите дали сте конфигурирали нещата както трябва, базирайки се статията за инсталиране на PHP.

 

Допълнителна информация:

[ http://www.issociate.de/board/post/102775/PHP5/IIS6_Unable_to_load_dynamic_library.html ]

Jan 10

Изпълняване на .php скриптове вместо .vbs под Command Prompt?

[ UPDATED – 11.01.2009 ]

   Почти съм убеден, че повечето от Вас, които пишете скриптове за управление/конфигуриране на компютри под Windows използват VBScript. Защо? Защото го има от мноооого отдавна, защото има купища информация за него в Интернет, заедно с безброй примери и защото е почти “прост” за използване … даже прекалено? Нека си признаем – като скриптов език не е нищо особено. Основните му предимства са три (според мен!):

  • вграден е в операционната система от Windows 95/98 насам;
  • лесно се инстанциират ActiveX/COM обекти (дефакто в това му е силата…но и слабото място);
  • подписване на скрипта с цифров сертификат (codeSigning);

Continue reading

Sep 18

Побитови операции в PHP (bitwise operations)

За добро или зло PHP е нестриктен език. Просто казано не е необходимо да дефинирате променливите предварително и можете да им присвоявате стойности от различни типове.
Подобно на другите езици за програмиране PHP разползга с вградени (т.нар примитивни) типове:

  • boolean;
  • integer;
  • float;
  • string;
  • и още няколко.

Интересен е типа INTEGER. За него PHP заема 4 байта памет (при 32 битовите системи). Continue reading

Aug 18

Какво правим с файловете, по-големи от 2 GB в PHP?

    Скоро ми се наложи да обработвам с PHP файл с големина около 6 GB. Резултатът от функцията filesize беше много интересен: връща 1.1 GB?!? Оказа се, че това си е документиран БЪГ, за който се споменава, че ще бъде отсранен в 6-та версия. Но до колкото знам има и пач. Continue reading