XDebug или краткое введение в отладку PHP скриптов

В этой статье будет рассказано о том как производится отладка, трассировка и профилирование PHP скриптов в ОС Линукс при помощи специального расширения PHP – xdebug, которое было создано одним из разработчиков языка PHP Derick Rethans. Статья не претендует на полноту раскрытия такой обширной темы как отладка кода, но все же будет полезна начинающим PHP программистам, которые только начинают знакомство с основными инструментами отладки.

Читать полностью »

Установка Memcached на Debian Lenny

Memcached – это, коротко говоря, распределенная система кеширования объектов в памяти. Многие известные веб-сайты, такие facebook, slashdot и livejournal, используют memcached для того чтобы справляться с высокой нагрузкой. Использование memcached позволяет кешировать или только результаты выполнения самых тяжелых запросов к базе данных или даже сохранять в кеше текст сгенерированной веб-страницы полностью и за счет этого можно многократно повышать производительность веб-приложения.

Читать полностью »

Как свернуть Thunderbird в tray

Я довольно давно работаю с почтой в программе Thunderbird. После долгих поисков идеала именно эта почтовая программа оказалась наиболее удобной для работы по протоколу IMAP с несколькими учетными записями Gmail (сюда входят и “родные” почтовые адреса вида *@gmail.com, а так же почта с доменов, которые принимают почту через почтовые сервера Gmail). Немного раздражал меня один-единственный серьезный недостаток при работе в Линукс – программа не умела сворачиваться в трей KDE.

Читать полностью »

Как устроено расширение PHP

В предыдущем посте Пишем простое расширение PHP на C я привел только исходники простого расширения (extension) языка PHP написанного на C добавив только инструкции по сборке и установке расширения, не объясняя как это работает и как устроено расширение PHP “изнутри”. В сегодняшней публикации я немного запоздало восполню этот пробел и начну с того что собой представляют расширения и зачем они обычно создаются…

Итак, начнем сначала:

Читать полностью »

Пишем простое расширение PHP на C

Из этой публикации вы узнаете как создаются расширения PHP и найдете полные исходники простого примера реализации функции на языке C. По традиции создаваемая функция будет уметь делать одну-единственную вещь:

function hello_world() {
    return 'Hello World!';
}

то есть возвращать строку ‘Hello World!’ :) Все примеры были проверены на Debian Lenny с установленным пакетом php-5.2.6-1+lenny2 и должны без изменений работать на любом современном дистрибутиве Линукса.

Читать полностью »

PHP и чудеса в гугловом серпе

Дело было вечером, делать было нечего… И вот от нечего делать я захожу на страницу поиска google.com.ua и набираю одно короткое слово – “php”, в надежде что Гугл подбросит мне что-нибудь интересное… И Гугл на этот раз не подкачал. Первые пять позиций в выдаче были вполне логичными и предсказуемыми, но 6 и 7 строка выдачи меня просто убили…

Читать полностью »

Отправка писем из PHP через SMTP сервер

В большинстве случаев для отправки писем из скрипта PHP вполне достаточно стандартной функции mail(), которая доступна на большинстве хостингов. Тем не менее возможны такие случаи в которых эта функция может вас вдруг подвести, например:

  • хостер может ограничить количество отправляемых писем или установить слишком низкую разрешенную частоту отправки
  • ip-адрес хостинга может не иметь reverse DNS записи
  • smtp-сервер хостинга может попасть в списки SpamHaus или подобной организации (в таком случае вы будете не в состоянии отправлять почту несколько дней или часов – пока хостер не разрешит эту ситуацию).

Даже если вы не сталкивались с вышеперечисленными проблемами вам все равно может пригодиться специальный класс для отправки электронных писем, который позволяет отправлять письма используя smtp-сервера Gmail, Yahoo или Yandex.

Читать полностью »

10 простых советов по оптимизации MySQL. Окончание

Окончание вчерашнего поста – 10 простых советов по оптимизации MySQL…

Читать полностью »

10 простых советов по оптимизации MySQL. Начало.

Большая часть советов на тему оптимизации производительности сервера баз данных MySQL даются в расчете на то что читающий статью является администратором компьютера с правами на редактирование конфига, запуск/остановку сервера и т.п. Но для тех вебмастеров и владельцев сайтов, кто еще не успел обзавестись собственным VPS или даже дедиком и размещают свои сайты на виртуальных хостингах, такие советы имеют нулевую полезность. Поэтому в этой статье я постарался собрать только те советы по поводу увеличения быстродействия MySQL, которые реально выполнить имея доступ только к своему сайту.

Читать полностью »

Создание впечатляющего логотипа

Что такое брендбук, и какую именно роль в наши дни он представляет для современных компаний, сайтов и прочих организаций? В первую очередь – это узнаваемость, фирменный стиль организации и ее продукции и услуг. Сложно сказать, что это понятие является совсем новым, ведь, сейчас оно постоянно применяется в маркетинговых и рекламных целях. Имея яркий и запоминающийся фирменный стиль, компания и ее продукция станет более узнаваемой, а, как вы знаете, покупатель больше доверяет тому, с чем он чаще сталкивается, чем с совершенно новым товаром.

Читать полностью »