Рубрика «php» - 187

Полгода назад написал бандл ClosureTable для фреймворка Laravel 3. Поводом для написания стала вот эта замечательная презентация Билла Карвина о способах хранения и обработки иерархических данных в MySQL с использованием PHP.

Итак. Существует несколько шаблонов проектирования баз данных для хранения и обработки иерархических структур:

  • Adjacency List («список смежности»)
  • Materialized Path («материализованный путь»)
  • Nested Sets («вложенные множества»)
  • Closure Table («таблица связей»)

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

Дайджест интересных новостей и материалов из мира PHP за последние две недели №25 (25.08.2013 — 08.09.2013)

Предлагаем вашему вниманию очередную подборку с ссылками на новости и материалы.

Приятного чтения!
Читать полностью »

Это вторая из трех частей статьи, посвященной разработке простого приложения при помощи Zend Framework 2. В первой части я рассмотрел структуру ZendSkeletonApplication, а в этой части приведу пример разработки простого модуля. Третья часть будет посвящена работе с пользователями и шаблонизатором Twig.

Установка и настройка дополнительных модулей

Первым делом хочу отметить, что установка стороннего модуля в Zend Framework обычно состоит из примерно таких четырех шагов:

  1. добавляем соответствующую строчку в composer.json, чтобы сообщить Композеру о новом модуле,
  2. выполняем команду php composer.phar update, чтобы Композер загрузил новый модуль и при необходимости перегенерировал автолоад файлы,
  3. добавляем новый модуль в список modules в файле config/application.config.php,
  4. при необходимости, размещаем конфигурационный файл модуля (обычно пример такого файла находится в папке config модуля) в config/autoload и делаем в нем необходимые правки.

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

Давайте начнем с установки простого, но полезного модуля Zend Developer Tools.
Читать полностью »

Предисловие

Создание форм — один из самых ответственных процессов при создании любого сайта. Эта часть сайта, как правило, в большей степени требует пристального внимание, чтобы предотвратить различные неприятные ситуаций. Для пользователей — это самый главный способ передачи информации на сервер, при котором нужно контролировать передаваемые значения. Наверное, 99% всех сайтов содержат формы, поэтому надеюсь, что статья сможет облегчить жизнь, как минимум, начинающим web-программистам.
Топик не является руководством к действию и не призывает всегда использовать данную технологию создания форм и работы с ними. Статья рассчитана главным образом на программистов, которые до сих пор пишут формы и код валидации для каждого поля вручную.
Читать полностью »

Онлайн редактор музыки

Повествование пойдёт про ненастоящий стартап. Ненастоящий — в основном из-за того, что на создание ушло 7 лет (с перерывами и творческими кризисами). И, прежде чем уйти в ностальгию, сразу ссылка на демо песню.
Читать полностью »

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

Работаю в западном… не, всё же северном университете, и приходится читать немало статей из своей области исследований. Благо, тут университетская библиотека подписана на множество электронных библиотек (интересно, сколько это удовольствие стоит… не, не так – сколько буржуи наживаются на наших статьях?). По моей тематике таких библиотек три – ACM, IEEE и Springer. А в них – львиная доля того, что мне нужно. И всё бы здорово, но есть одно НО.
Читать полностью »

Добрый день!

Уважаемый читатель: данная статья не является примером идеального программирования на языке php и предоставленный инструмент может содержать в себе множество недоработок. Phalcon S сырой и выкладывается для поддержки, или осуждения разработки.

Сегодня я хочу показать сообществу Phalcon System (Система Ястреб).

Описание и предыстория

Phalcon S — это зачаток мульти-модульной системы, для построения вэб-приложения. Phalcon S изначально был задуман для персонального использования 1-2 разработчиками. Phalcon S написан с использованием Phalconphp и представляет из себя мульти-модульное приложение. На данный момент содержится модуль панели администратора, который откровенно говоря не доделан. Все началось с того, что мне была нужна система микроблоггинга. Поиски того что нужно, не дали успехов. Так как я обладаю некими знаниями языка php, было задумано писать самому. Систему для блогов я поднял за 3 дня и в качестве админки к ней начал писать Phalcon S (в свободное от работы время). К сожалению модуль микроблоггинга в общий доступ выложить не могу. Читать полностью »

Как и многие россияне, в последнее время я каждый день захожу проголосовать на сайт 10russia.ru. Если кто не в курсе, Россия 10 — всероссийский проект, в рамках которого каждый может проголосовать за свой любимый географический или архитектурный объект в России. Задача проекта – выбор десяти новых визуальных символов России.
Мне показались странными цифры в ТОП2 в голосовании, и я решил посмотреть, как они меняются. Читать полностью »

Продолжаю совмещать приятное с полезным и переводить. Сегодня речь зайдет о кучах (heaps) и графах. Как обычно, материал скорее подойдет новичкам — большая часть информации, если не вся, уже где-то так или иначе освещалась.

В конце прошлой статьи затрагивались деревья, поэтому начнем с кучи, поскольку между кучей и деревьями есть общие корни. Затем перейдем к графам и реализуем алгоритм Дейкстры.

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

Привет, %username%! Несколько лет назад я познакомился с замечательным фреймворком Yii и с тех пор как только у меня появляется возможность вести проект на нем — я дерусь берусь за нее.

Одной из крутых фич которую я очень люблю, это инструмент Gii, который начиная с версии 1.1.2 входит в состав фреймворка. Сейчас я хочу поговорить сторонних модулях основанных на нем.

Gii «Из коробки» генерирует достаточно функциональный код, часто когда нужно создать мелкую фичу приходится очень мало менять. Но что если нам нужно больше возможностей? К примеру добавить поддержку нескольких языков, или изменит стиль генерируемого кода?
Есть 2 способа расширения: Изменять существующие шаблоны и создавать свои генераторы (ну или использовать уже готовые соответственно). На базе этих возможностей были созданы достаточно интересные продукты для комфортной работы с авто генерацией кода.
Читать полностью »


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js