CodeIgniter и Matchbox: проблемы роутинга приложения

9

CodeIgniter и Matchbox: проблемы роутинга приложения

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

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

Тоже не проблема. Есть библиотеки, которые доводят данный фреймворк до нужной кондиции. Одна из таких – Matchbox.

Читать далее »

CodeIgniter, PHP

Профилирование PHP приложения с xDebug

4

Несмотря на то, что мы давно вышли из каменного века, большинство PHP разработчиков одной ногой все еще там. В этом легко убедиться, если обратить внимание, насколько устаревшими средствами осуществляется профилирование (профайлинг) и отладка PHP приложений. Пора бы что-то менять в жизни, поэтому сегодня мы рассмотрим профилирование с помощью хорошо известного xDebug. Тема отладки, как мне кажется, более обширная, оттого оставим ее на потом, для отдельной заметки.

Кстати, все знают, что такой профилирование? К своему стыду, впервые об этом понятии я услышал на одном из собеседований, при устройстве на работу. Благо, это было на заре моей IT карьеры, но, уже тогда, эти знания не стали бы лишними. Даже если вы не можете дать четкое определение профилированию, это не значит, что вы никогда с ним не сталкивались. Я уверен, что хоть раз вам доводилось высчитывать общее время генерации страницы, замерять время работы отдельной функции или алгоритма. В принципе, это и есть профилирование, в самом простейшем своем проявлении. В википедии дается достаточно четкое и лаконичное определение:

Читать далее »

PHP

PHP и Microsoft Access

5

С базой данных Access, которую можно найти в офисном пакете Microsoft Office, последний раз я имел возможность общаться еще в те далекие годы, когда учился на первом курсе университета. Нужно заметить, что после знакомства и поверхностного изучения этой БД, впечатления остались не из приятных. Уже тогда у меня был богатый опыт работы с MySQL и некоторые навыки работы с Oracle. На их фоне Access казался немощным, отсталым в развитии и просто неудобным. А неотъемлемый графический интерфейс и активно навязываемые билдеры и «мастера» просто сводили меня с ума.

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

Читать далее »

PHP

Склонение русских числительных

3

Web 2.0 уже давно среди и нас его тенденции распространяются не только на округлые формы стеклянных кнопочек, но и на способы представления привычных вещей. Совершенно не комильфо, если склонение имени существительного не соответствует количественному числительному. Например, если корзина книжного онлайн магазина отображает счетчик имеющихся в ней книг, то пользователь должен видеть «2 книги», а не «2 книг». Тоже касается счетчиков дней или любых иных представлений даты и времени.

Читать далее »

PHP

«Легкие» счетчики для HighLoad ресурсов

11

На днях, на Хабре была статья о том, как можно уменьшить нагрузку на БД, путем экономии ресурсов на обновлении счетчиков. Действительно, различного рода счетчики, например, счетчик просмотра статей, генерируют массу запросов типа UPDATE, при этом неся очень малое количество пользы для кого бы то ни было. Отказаться от счетчиков совсем тоже неправильно. Многим интересно, насколько читаем тот или иной материал. Для кого-то малое количество просмотров статьи станет поводом для того, чтобы не тратить свое драгоценное время на ее прочтение. Есть и другие считалочки, наличие которых еще более привлекательно. Как же быть?

Читать далее »

HighLoad, PHP

Memcached в действии

4

Я уже публиковал небольшую статью о том, как установить демон Memcached на локальной машине под управлением ОС Windows. Получив несколько благодарственных отзывов (честно говоря, не ожидал, что статья окажется хоть сколько-нибудь полезной), решил написать еще одну заметку. На этот раз я постараюсь рассказать о том, как использовать установленный демон, а еще лучше о том, как использовать его рационально.

Читать далее »

PHP

Memcached + PHP под Windows

42

Вступление

В принципе, вступление тут вовсе не требуется, но так уж получается, что не могу я не налить воды. Зато во вступлении могу заранее предупредить, что мы будем не просто ставить Memcached, но и пытаться подружить его с PHP, и все это под всеми любимой ОС Windows. Именно эти нюансы рождают проблему и решение, описанные ниже.

Читать далее »

PHP

Определение временного промежутка между двумя датами

24

Время от времени приходится вести отсчет от или до какой-нибудь даты. Например, сколько времени осталось до празднования Нового Года или до зарплаты, что более актуально. Как высчитать нужный нам временной промежуток между двумя датами — текущей и прошедшей/будущей? Задача, на самом деле, очень простая, но почему-то нередко вызывает трудности. Почему? Не знаю… давайте уже делом займемся.

Читать далее »

PHP