Gentoo PHP-FPM: установка и настройка

Устанавливаем php. Смотрите USE флаги. Обязательно указываем USE=»fpm». Остальное по необходимости. Я предпочитаю ставить на development сервере все заранее, т.к. никогда не знаешь, что и когда может пригодиться. Читать дальше проGentoo PHP-FPM: установка и настройка

Компрессия CSS с помощью PHP

Столкнулся только что с задачей довольно интересной для меня. Ковыряясь в конфигурации CakePHP, наткнулся я на один интересный момент: /** * Compress CSS output by removing comments, whitespace, repeating tags, etc. * This requires a/var/cache directory to be writable by the web server for caching. * and /vendors/csspp/csspp.php * * To use, prefix the CSS […]

FCK (fckeditor) & CakePhp

В статье коротко описывается установка редактора FCK (fckeditor) как хелпера (helper) на cakephp v1.2. Шаг 1. Подготовка. Скачать cakephp с оф. сайта. Скачать FCKeditor с оф. сайта. Распаковать cakephp и FCKeditor.Дерево каталогов (расположение каталога fckeditor в cake) app-| webroot -| js -| fckeditor Шаг 2. FCK Helper. /** * /app/views/helpers/fck.php */ class FckHelper extends Helper […]

Древовидная навигация по сайту

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

Ранее я делал нечто подобное на SQL. Это была хранимая процедура на сервере MySQL, при вызове которой мы получали HTML код навигации. Но в коде были свои недостатки, которые я от проекта к проекту решал путем прямого вмешательства.

В этом же коде, написанном на php очень легко реализовано дерево объектов.

В таблице данные я храню в виде:

  • id int auto_increment,
  • parent int,
  • title varchar

Первым делом я загоняю в массив id активного объекта и всех родительских уровней. Делаю это функцией array_unshift($id, $parents_array) для того, чтобы нулевой уровень (родитель объектов первого уровня всегда равен нулю, т.к. у объектов первого уровня нет родителя) был внесен в $parents_array[0], а $id активного элемента был последним в списке ($id активного элемента я вношу в данный массив, потому, что у данного объекта тоже могут оказаться элементы-потомки, которые тоже необходимо выводить).

Читать дальше проДревовидная навигация по сайту