
64K+
Охват за 30 дней
PHP *
Скриптовый язык общего назначения
61,92
Рейтинг
Сначала показывать
Порог рейтинга
Уровень сложности
php|architect снижает цены на подписку
1 мин
970php|architect снизили цены годовой подписки на одноимённые журналы на 70%. Теперь можно получать журналы целый год за 40$ (и печатный вариант в том числе).
Уже подписавшихся тоже не обделили: их ждут подарки в виде бесплатных номеров из архива.
Подписаться можно тут
Очень надеюсь, что это поможет поднять общий уровень php программистов…
Уже подписавшихся тоже не обделили: их ждут подарки в виде бесплатных номеров из архива.
Подписаться можно тут
Очень надеюсь, что это поможет поднять общий уровень php программистов…
+18
Типизация и PHP
3 мин
2.5KНе знаю как вам, но мне не редко случается в ходе отладки приложения долго ковыряться в ядре и библиотеках, только для того чтобы выяснить что ошибка была на самой поверхности, скажем в неверно переданном параметре. И тогда думаешь «кабы не поленился добавить валидацию на входе функции, столько бы времени своего сэкономил!». Сделать то это не сложно, да не хочется портить прозрачность бизнес-логики кучей второстепенных условий. По сути это сквозная функциональность и здесь бы пригодился АОП-подход, но официально PHP по прежнему не поддерживает АОП. Что делать? Мне ныне видится следующее решение.
-3
Индустрия it-велосипедов
9 мин
4.5KВведение
Я точно не могу сказать, что заставило написать этот пост — может быть мой накопившийся опыт и принадлежность к php-программистам, которые, всемирно известны своим быдлокодом или недавний пост, в котором автор описывает проблему, появившуюся в его велосипеде и связанную с глобальными переменными в различных модулях.
Почитав комментарии к которому, мне стало уж совсем плохо… Я просто не понимал как люди не видят сути проблемы, а видят только лишь ее последствия — проблему в велосипеде. А суть то заключается в том, что у автора напрочь отсутствуют какие-либо познания в «велосипедостроении». И что самое страшное — эти знания отсутствуют не у одного него. А практически у всей массы изобретателей которые сами велосипеды видели только на картинках.
А если взять в расчет то, что они не хотят даже посмотреть на другие велосипеды…
+99
Еще одна реализация многопоточности на PHP
8 мин
7.1KИтак… Приступим.
В последнее время я встретил сразу 2 реализации многопоточности на Хабре. Немного подумав я решил написать и свой вариант.
Но так как у меня нет возможности использовать PCNTL библиотеку, то мне пришлось извратиться…
Задача: реализация многопоточности на PHP (threads)
Издержки: нет модуля PCNTL ( build w/o PCNTL )
Решение: чистый PHP + Unix ( pure PHP + Unix )
В последнее время я встретил сразу 2 реализации многопоточности на Хабре. Немного подумав я решил написать и свой вариант.
Но так как у меня нет возможности использовать PCNTL библиотеку, то мне пришлось извратиться…
Задача: реализация многопоточности на PHP (threads)
Издержки: нет модуля PCNTL ( build w/o PCNTL )
Решение: чистый PHP + Unix ( pure PHP + Unix )
+6
Многопроцессовые демоны на PHP
3 мин
45KЗачем может понадобиться писать демоны на PHP?
- Выполнение трудоемких фоновых задач;
- выполнение задач, которые длятся больше, чем время ожидания при HTTP-запросе (30 секунд);
- выполнение задач на более высоком уровне доступа, чем серверный процесс (читай — под рутом).
+83
Smarty-плагин для Gravatar
2 мин
1.2K+6
Delphi for PHP 2.0 — радость и разочарование.
3 мин
12KС Delphi я очень плотно дружу начиная со второй версии (по-моему 96-й год), но следить за новинками перестал после выхода восьмой версии, которая была ориентирована на .NET и компилировала приложения только под неё, а соответственно не представляла для меня абсолютно никакого интереса.
И вот в прошлом году у CodeGear, нового хозяина Delphi, вышла Delphi 2007 — довольно заметное событие, учитывая тот факт, что основной люд уже после продажи дельфи её похоронили. Изучая новые возможности IDE, случайно наткнулся на странный продукт — Delphi for PHP (d4php), а поскольку Delphi как IDE и как язык программирования я знаю немного хуже русского, решил воспользоваться моментом и посмотреть на PHP с другой стороны.
И вот в прошлом году у CodeGear, нового хозяина Delphi, вышла Delphi 2007 — довольно заметное событие, учитывая тот факт, что основной люд уже после продажи дельфи её похоронили. Изучая новые возможности IDE, случайно наткнулся на странный продукт — Delphi for PHP (d4php), а поскольку Delphi как IDE и как язык программирования я знаю немного хуже русского, решил воспользоваться моментом и посмотреть на PHP с другой стороны.
+4
Эмуляция многопоточности в PHP
10 мин
30KСуть многопоточности (для приложения) состоит в том, что процесс может состоять из нескольких (однотипных) потоков, выполняющихся «параллельно», то есть без упорядочивания по времени — выполнился один, пошел следующий. Использование многопоточности позволяет ускорить выполнение задачи и/или снизить нагрузку, таким образом, улучшая быстродействие самого приложения.
PHP относится к языкам, в которых поддержка многопоточности отсутствует. Но, есть немало задач, в которых она была бы очень полезна. Как правило, это задачи, в которых одно действие нужно выполнить много раз, но с различными параметрами, причем само действие настолько ресурсоемко, а количество итераций настолько велико, что обычный цикл использовать невозможно.
Я рассмотрю простой пример, как можно достичь эмуляции многопоточности в PHP.
PHP относится к языкам, в которых поддержка многопоточности отсутствует. Но, есть немало задач, в которых она была бы очень полезна. Как правило, это задачи, в которых одно действие нужно выполнить много раз, но с различными параметрами, причем само действие настолько ресурсоемко, а количество итераций настолько велико, что обычный цикл использовать невозможно.
Я рассмотрю простой пример, как можно достичь эмуляции многопоточности в PHP.
+26
Строки в PHP
4 мин
4.2KВ последнее время обсуждения языка PHP на хабре сводятся больше к возможностям проектировать сложные системы, что не может не радовать. Однако, просмотрев с десяток самых признаваемых веб-фреймворков (Zend Framework, Adept, CakePHP, CodeIgniter, LIMB, Symfony, MZZ и другие) я с искренним удивлением обнаружил в некоторых существенные недочеты с точки зрения элементарной оптимизации.
Одним из слабых мест является работа со строками (проблема конкатенации уже обсуждалась хабрапрограммистами) и мне решилось вспомнить свою познавательную юность и провести парочку тестов со строками, которыми мне хотелось бы поделиться.
Одним из слабых мест является работа со строками (проблема конкатенации уже обсуждалась хабрапрограммистами) и мне решилось вспомнить свою познавательную юность и провести парочку тестов со строками, которыми мне хотелось бы поделиться.
-2
phpMyAdmin 3
1 мин
1.8K
В общем, вот для тех, кто не вкурсе, вроде как вчера выложили phpMyAdmin 3.0.0-rc2.
Скачиваем и наслаждаемся.
Импрувменты и ликвидированные баги тут.
UPD: онлайн демо .
+31
Один из лучших классов для загрузки файлов на сервер. (PHP)
1 мин
14KХочу познакомить вас с одним из лучших классов, на мой взгляд, для загрузки файлов на сервер.
позволяет делать с изображением все что угодно
Ничего лучше чем пример быть не может, так что сразу к делу…
позволяет делать с изображением все что угодно
Ничего лучше чем пример быть не может, так что сразу к делу…
+11
Ближайшие события
Контроллеры, основанные на механизмах рефлексии.
3 мин
2.1Kконтроллер — это специализированная сущность для управления другими сущностями.
Часто используют функциональные контроллеры, основанные на найменге (naming) примеры всем широко известны, например плагины смарти:
smarty_type_name() как видите из документации, плагин становится доступным если объявлены соответствующие функции.
Часто используют функциональные контроллеры, основанные на найменге (naming) примеры всем широко известны, например плагины смарти:
smarty_type_name() как видите из документации, плагин становится доступным если объявлены соответствующие функции.
+8
Getters/Setters getting real
4 мин
7.4KДостаточно много видел разных вариантов реализации возможностей которые есть в обычных ОО языках (Delphi, Java, ActionScript) — и которых частенько не хватает php. А именно get & set методы.
В данном топике предлагаю очень простую и эффективную реализацию, которая не содержит ничего лишнего и в тоже время прекрасно реализовывает get/set функционал, позволяющий скрыть сами переменные и в тоже время сделать их read only, write only || read-write.
В данном топике предлагаю очень простую и эффективную реализацию, которая не содержит ничего лишнего и в тоже время прекрасно реализовывает get/set функционал, позволяющий скрыть сами переменные и в тоже время сделать их read only, write only || read-write.
-1
Еще немного интересных возможностей.
2 мин
888Навеяно прошлым топиком.
В php, как и в любом языке, есть конструкции, которые по той или иной причине не нашли широкого применения, однако знание таких нестандартных приемов иногда может облегчить вам жизнь. Сегодня я расскажу об одной такой возможности. Статья расчитана для начинающих программистов и просто любопытных людей.
В php, как и в любом языке, есть конструкции, которые по той или иной причине не нашли широкого применения, однако знание таких нестандартных приемов иногда может облегчить вам жизнь. Сегодня я расскажу об одной такой возможности. Статья расчитана для начинающих программистов и просто любопытных людей.
+5
Интересные возможности языка PHP
3 мин
8.1KВ данной статье я хочу рассказать о интересных, но не очень распространенных базовых возможностях языка PHP. Все, что написано далее в том или ином виде присутствует в документации к PHP в разрозненном виде. Автор вполне отдает себе отчет в том, что большинство профессиональных разработчиков все это отлично знает, но новички могут узнать что-то новое.
Содержание статьи имеет мало общего с моей прошлой статьей про использование выражений в PHP. Речь не идет об усложнении кода, скорее наоборот.
Содержание статьи имеет мало общего с моей прошлой статьей про использование выражений в PHP. Речь не идет об усложнении кода, скорее наоборот.
+73
От инфо-окна к БД: сохраняем информацию, введенную пользователем
6 мин
4KПеревод
Отсебятина
Кросс-пост четвертого перевода туториалов по Google Maps из моего блога. В нем рассказывается о добавлении пользователем информации при помощи инфо-окна.
+6
CakePHP 1.2 Containable Behavior
8 мин
1.4KНовый релиз замечательного фреймворка CakePHP принесет еще одну фичу, которая может сильно упростить жизнь разработчикам — Containable Behavior. Особенно эта фича будет полезна при работе с моделями с большим количеством ассоциаций.
+11
Мои плагины для Smarty. Часть 2
7 мин
5.3KУчитывая наличие интереса к этой теме у сообщества, продолжаю знакомить со своими плагинами для Smarty. С первой частью можно ознакомиться здесь.
+7