Обновить
64K+

PHP *

Скриптовый язык общего назначения

61,92
Рейтинг
Сначала показывать
Порог рейтинга
Уровень сложности

Cakephp Sphinx behavior

Время на прочтение8 мин
Охват и читатели1.9K
По долгу службы мне приходится работать с Cake и Sphinx. Однажды мне надоело делать поиск к сфинксу ручками, и я решил написать небольшой behavior.
Код и примеры

php|architect снижает цены на подписку

Время на прочтение1 мин
Охват и читатели970
php|architect снизили цены годовой подписки на одноимённые журналы на 70%. Теперь можно получать журналы целый год за 40$ (и печатный вариант в том числе).

Уже подписавшихся тоже не обделили: их ждут подарки в виде бесплатных номеров из архива.

Подписаться можно тут

Очень надеюсь, что это поможет поднять общий уровень php программистов…

Типизация и PHP

Время на прочтение3 мин
Охват и читатели2.5K
Не знаю как вам, но мне не редко случается в ходе отладки приложения долго ковыряться в ядре и библиотеках, только для того чтобы выяснить что ошибка была на самой поверхности, скажем в неверно переданном параметре. И тогда думаешь «кабы не поленился добавить валидацию на входе функции, столько бы времени своего сэкономил!». Сделать то это не сложно, да не хочется портить прозрачность бизнес-логики кучей второстепенных условий. По сути это сквозная функциональность и здесь бы пригодился АОП-подход, но официально PHP по прежнему не поддерживает АОП. Что делать? Мне ныне видится следующее решение.

Читать дальше →

Индустрия it-велосипедов

Время на прочтение9 мин
Охват и читатели4.5K

Введение


Я точно не могу сказать, что заставило написать этот пост — может быть мой накопившийся опыт и принадлежность к php-программистам, которые, всемирно известны своим быдлокодом или недавний пост, в котором автор описывает проблему, появившуюся в его велосипеде и связанную с глобальными переменными в различных модулях. 

Почитав комментарии к которому, мне стало уж совсем плохо… Я просто не понимал как люди не видят сути проблемы, а видят только лишь ее последствия — проблему в велосипеде. А суть то заключается в том, что у автора напрочь отсутствуют какие-либо познания в «велосипедостроении». И что самое страшное — эти знания отсутствуют не у одного него. А практически у всей массы изобретателей которые сами велосипеды видели только на картинках. 

А если взять в расчет то, что они не хотят даже посмотреть на другие велосипеды…
 
Читать дальше →

Еще одна реализация многопоточности на PHP

Время на прочтение8 мин
Охват и читатели7.1K
Итак… Приступим.
В последнее время я встретил сразу 2 реализации многопоточности на Хабре. Немного подумав я решил написать и свой вариант.
Но так как у меня нет возможности использовать PCNTL библиотеку, то мне пришлось извратиться…

Задача: реализация многопоточности на PHP (threads)

Издержки: нет модуля PCNTL ( build w/o PCNTL )

Решение: чистый PHP + Unix ( pure PHP + Unix )

Читать дальше →

Многопроцессовые демоны на PHP

Время на прочтение3 мин
Охват и читатели45K
Зачем может понадобиться писать демоны на PHP?
  • Выполнение трудоемких фоновых задач;
  • выполнение задач, которые длятся больше, чем время ожидания при HTTP-запросе (30 секунд);
  • выполнение задач на более высоком уровне доступа, чем серверный процесс (читай — под рутом).

Читать дальше →

Smarty-плагин для Gravatar

Время на прочтение2 мин
Охват и читатели1.2K
Многим известно про популярный сервис — Gravatar. Кратко напомню его суть — любой пользователь может зарегистрироваться там, загрузить свой аватар и связать его со своим e-mail адресом. Сервис Gravatar предоставляет возможность получить аватар любого зарегистрированного пользователя. Данный плагин позволяет построить адрес для аватара пользователя в Smarty шаблонах.
Подробнее о плагине...

Delphi for PHP 2.0 — радость и разочарование.

Время на прочтение3 мин
Охват и читатели12K
С Delphi я очень плотно дружу начиная со второй версии (по-моему 96-й год), но следить за новинками перестал после выхода восьмой версии, которая была ориентирована на .NET и компилировала приложения только под неё, а соответственно не представляла для меня абсолютно никакого интереса.

И вот в прошлом году у CodeGear, нового хозяина Delphi, вышла Delphi 2007 — довольно заметное событие, учитывая тот факт, что основной люд уже после продажи дельфи её похоронили. Изучая новые возможности IDE, случайно наткнулся на странный продукт — Delphi for PHP (d4php), а поскольку Delphi как IDE и как язык программирования я знаю немного хуже русского, решил воспользоваться моментом и посмотреть на PHP с другой стороны.
Читать дальше →

Эмуляция многопоточности в PHP

Время на прочтение10 мин
Охват и читатели30K
Суть многопоточности (для приложения) состоит в том, что процесс может состоять из нескольких (однотипных) потоков, выполняющихся «параллельно», то есть без упорядочивания по времени — выполнился один, пошел следующий. Использование многопоточности позволяет ускорить выполнение задачи и/или снизить нагрузку, таким образом, улучшая быстродействие самого приложения.

PHP относится к языкам, в которых поддержка многопоточности отсутствует. Но, есть немало задач, в которых она была бы очень полезна. Как правило, это задачи, в которых одно действие нужно выполнить много раз, но с различными параметрами, причем само действие настолько ресурсоемко, а количество итераций настолько велико, что обычный цикл использовать невозможно.

Я рассмотрю простой пример, как можно достичь эмуляции многопоточности в PHP.
Читать дальше →

Строки в PHP

Время на прочтение4 мин
Охват и читатели4.2K
В последнее время обсуждения языка PHP на хабре сводятся больше к возможностям проектировать сложные системы, что не может не радовать. Однако, просмотрев с десяток самых признаваемых веб-фреймворков (Zend Framework, Adept, CakePHP, CodeIgniter, LIMB, Symfony, MZZ и другие) я с искренним удивлением обнаружил в некоторых существенные недочеты с точки зрения элементарной оптимизации.

Одним из слабых мест является работа со строками (проблема конкатенации уже обсуждалась хабрапрограммистами) и мне решилось вспомнить свою познавательную юность и провести парочку тестов со строками, которыми мне хотелось бы поделиться.

читать о результатах теста

phpMyAdmin 3

Время на прочтение1 мин
Охват и читатели1.8K

В общем, вот для тех, кто не вкурсе, вроде как вчера выложили phpMyAdmin 3.0.0-rc2.
Скачиваем и наслаждаемся.
Импрувменты и ликвидированные баги тут.
UPD: онлайн демо .

Один из лучших классов для загрузки файлов на сервер. (PHP)

Время на прочтение1 мин
Охват и читатели14K
Хочу познакомить вас с одним из лучших классов, на мой взгляд, для загрузки файлов на сервер.
позволяет делать с изображением все что угодно
Ничего лучше чем пример быть не может, так что сразу к делу…
Читать дальше →

Ближайшие события

Контроллеры, основанные на механизмах рефлексии.

Время на прочтение3 мин
Охват и читатели2.1K
контроллер — это специализированная сущность для управления другими сущностями.
Часто используют функциональные контроллеры, основанные на найменге (naming) примеры всем широко известны, например плагины смарти:
smarty_type_name() как видите из документации, плагин становится доступным если объявлены соответствующие функции.
чиатать далее...

Getters/Setters getting real

Время на прочтение4 мин
Охват и читатели7.4K
Достаточно много видел разных вариантов реализации возможностей которые есть в обычных ОО языках (Delphi, Java, ActionScript) — и которых частенько не хватает php. А именно get & set методы.

В данном топике предлагаю очень простую и эффективную реализацию, которая не содержит ничего лишнего и в тоже время прекрасно реализовывает get/set функционал, позволяющий скрыть сами переменные и в тоже время сделать их read only, write only || read-write.

Читать дальше →

Еще немного интересных возможностей.

Время на прочтение2 мин
Охват и читатели888
Навеяно прошлым топиком.

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

Интересные возможности языка PHP

Время на прочтение3 мин
Охват и читатели8.1K
В данной статье я хочу рассказать о интересных, но не очень распространенных базовых возможностях языка PHP. Все, что написано далее в том или ином виде присутствует в документации к PHP в разрозненном виде. Автор вполне отдает себе отчет в том, что большинство профессиональных разработчиков все это отлично знает, но новички могут узнать что-то новое.

Содержание статьи имеет мало общего с моей прошлой статьей про использование выражений в PHP. Речь не идет об усложнении кода, скорее наоборот.

Читать дальше →

От инфо-окна к БД: сохраняем информацию, введенную пользователем

Время на прочтение6 мин
Охват и читатели4K

Отсебятина


Кросс-пост четвертого перевода туториалов по Google Maps из моего блога. В нем рассказывается о добавлении пользователем информации при помощи инфо-окна.

Читать дальше →

CakePHP 1.2 Containable Behavior

Время на прочтение8 мин
Охват и читатели1.4K
Новый релиз замечательного фреймворка CakePHP принесет еще одну фичу, которая может сильно упростить жизнь разработчикам — Containable Behavior. Особенно эта фича будет полезна при работе с моделями с большим количеством ассоциаций.
Подробнее

Мои плагины для Smarty. Часть 2

Время на прочтение7 мин
Охват и читатели5.3K
Учитывая наличие интереса к этой теме у сообщества, продолжаю знакомить со своими плагинами для Smarty. С первой частью можно ознакомиться здесь.
Читать дальше →