Архив на месяц Декабрь, 2008

Novice

Вот и прошел 2008 год, а вместе с ним и все хорошие и плохие события.

Лично у меня плохих событий было немало. В високосные года я не верю, но этот красивый по цифрам 2008 год заставляет задуматься. Но было, конечно, в жизни и не мало хороших моментов :)

Так вот в этот замечательный праздник я хочу поздравить всех читателей и посетителей нашего блога с Новым 2009-ым годом! И желаю всем хорошо отметить этот праздник, а потом не грустить целый год :) В общем, здоровья, счастья, успехов и процветания в Новом году!

С Новым Годом!

А в качестве подарка я приготовил для всех посетителей и читателей полезную книжку в формате DjVU, посвященную программированию на PHP – «Разработка Web-приложений с помощью PHP и MySQL», которую можно скачать здесь (7,5 Мб). Помню когда-то именно с нее я начинал свои программерские исследования на PHP, да и сейчас иногда заглядываю.

Novice

Сегодня мы рассмотрим технику рефакторинга, противоположную встраиванию класса. Рассматриваемая техника нужна, чтобы поделить работу, которую выполняет один класс, между двумя классами. Для чего это делать? Ну вообще-то класс должен представлять собой четкую абстракцию, которая выполняет лишь определенные операции и ничего более. Т.е. ничего лишнего в классе быть не должно. Со временем, когда добавляются новые функции в класс, он растет. И он может разрастить до таких размеров, что станет слишком сложным для понимания. В этом случае и приходит на помощь техника выделения класса.

Порядок применения техники: Читать далее »

Novice

Сегодня рассмотрю один интересный антипаттерн под названием… в оригинале это звучит как “Vendor Lock-in”, но если перевести на русский, то получится что-то вроде “Запертый производителем” или “Зависимость от производителя”.
Суть этого антипаттерна заключается в том, что разрабатываемое ПО использует некоторые функционал ПО другого производителя.

Рассмотрим на явном примере – допустим, что мы разрабатываем программу – почтовый клиент с веб-интерфейсом. Если это ПО пишется на php, то наиболее вероятно, что в нем будет использована библиотека для работы с электронной почтой – phpmailer.
Читать далее »

Novice

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

Сразу сделаю замечание: эта статья посвящена версиям PHP 4 и 5. В 6-ой версии PHP magic_quotes были убраны и считаются устаревшими (deprecated).

Итак, что такое Magic Quotes. Читать далее »

Novice

Фабричный метод, фабрика или виртуальный конструктор – это все шаблон проектирования, который предоставляет интерфейс для создания объектов имеющих схожие свойства своим подклассам.

Грубо говоря, фабричный метод – это обычный метод класса, который возвращает объекты при обращении к нему (создавая их при этом). Такой прием, в основном, используется для унификации архитектуры системы. Как следствие этого – объекты, порожденные фабричным методом, имеют одинаковые интерфейсы.
Читать далее »

Novice

Сегодня мы поговорим о том, как работать с FTP из нашего PHP-скрипта, а кроме этого попытаемся что-нибудь автоматизировать с помощью функций для работы с FTP.

Для начала рассмотрим примеры взаимодействия нашего PHP-скрипта с FTP-сервером. А в качестве задачи выполним следующую – установим для определенной директории и всех вложенных в нее поддиректорий определенные права (например, права на запись), что было бы довольно рутинно, если бы мы ставили эти права вручную через какой-нибудь FTP-менеджер (например, через FAR).

Иногда возникает такая проблема, что нам нужны права на запись для определенной директории, но мы не можем воспользоваться функцией chmod, если скрипт, который ее использует, не был создан под юзером, в котором работает PHP. Проще говоря, если мы заливаем PHP-скрипт на FTP, а затем пытаемся с его помощью установить права 777 на какую-нибудь папку или файл, то PHP говорит нам нечто вроде «Access Denied». Но если бы мы создали этот PHP-скрипт из другого PHP-скрипта, который находится на этом же сервере, то мы могли бы воспользоваться функцией chmod. Но зачастую возникает именно первая ситуация, когда мы скрипты заливаем на FTP вручную, а потом ставим сами необходимые права на определенные папки и файлы (через тот же самый FTP или зайдя на сервер под SSH).

А если нам нужно установить права на все папки в определенной директории, а их там сотни? Причем уровень вложенности = 10, допустим. Тогда руками тут не обойдешься. Придется писать свой скрипт, который рекурсивно будет ставить права. Этим мы и займемся далее.
Читать далее »

Novice

Давно хотел поработать с Zend Framework, да все руки не доходили. А тут несколько дней назад услышал, что вышла новая версия 1.7.1. Ну я и решил восполнить пробел, так сказать.

Сразу скажу, что этот пост не о том, как сделать свой первый сайт на Zend Framework за 10 минут. И даже не о том, как в Zend Framework все круто сделано. Сразу после того как я скачал 20 Мб архив с исходниками и всем остальным – я полез в инет за поиском документации с примерами вроде “Быстрого старта”.

Документации по этой теме достаточно даже на русском языке. Тем не менее, на второй день изучения этого фреймворка у меня уже накопилось несколько вопросов, поиск ответов на которые порядком затянулся.
Читать далее »


Страница 1 из 212»


© 2008 - 2010 i-novice.net | Все права защищены.