Phing — система сборки PHP-проектов, созданная по аналогии с Apache Ant. Система сборки, т.е. Phing читает конфигурационный файл build.xml и выполняет все действия по созданию проекта: выборка и копирование необходимых файлов проекта в новую папку сборки, архивирование файлов проекта (для создания резервной копии), загрузка файлов проекта по FTP, обработка PHP-файлов (удаление комментариев, пробелов, символов табуляции и др.), запуск тестирования, работу с GIT. Использование Phing, автоматизирует рутинную работу по базовым перечисленным операциям. Читать далее Phing для сборки проекта
Рубрика: Курсы PHP
Установка Zend Framework на сервисе Cloud9
Знакомство с Zend Framework 2 интересный, насыщенный процесс 🙂 Для упрощения этого процесса, а также облегчением первой установки известного фрейворка было решено записать видео по установке Zend Framework на сервисе Cloud9 (Спасибо Сергею Позднякову за ценные советы во время экспериментов). С9 — облачный сервис, в котором есть возможность работать с HTML, JS, PHP и MySQL. При желании можно даже забраться в конфигурационный файл веб-сервера для внесения необходимых изменений. Сервис полезен и начинающим веб-разработчикам («я хочу сделать сайт на HTML, на бесплатном хостинге»), и бывалым (есть консоль, доступ к конфигам и другие плюшки). Читать далее Установка Zend Framework на сервисе Cloud9
Фрактальные ландшафты на PHP (Алгоритм Diamond-Square)
Когда попались на глаза первые упоминания об этом алгоритме (Diamond-Square), заинтересовало. Алгоритм начинает работу с двумерного массива, затем, из четырех начальных значений, случайным образом генерирует карту высот, упорядоченную в виде сетки из точек так, чтобы весь массив (массив описывает условную карту поверхности) была покрыта квадратами. Строить «бесконечные» ландшафты островов, гор, рек и морей — ценная возможность при создании игрушек. В рунете одна из самых первых заметок, которая находится по запросу, это заметка Дениса Ольшина на хабре —
Алгоритм «diamond-square» для построения фрактальных ландшафтов (автору спасибо!). Поскольку итоговая демка не доступна, нашел отличную джаваскритовую реализацию Diamond-Square на jsfiddle. Не знакомясь с самим алгоритмом, поменяйте в фидле параметр smooth c 0.9 на 0.4 и нажмите «Run» в верхней левой части страницы сервиса: Diamond-Square превратит пустыню в островной ландшафт! Теперь вы точно чувствуете что хотите реализовать этот алгоритм на PHP? Тогда вперед!
П.с. разобраться в нём все же придётся до построения, потому найдите время — может пригодится. Читать далее Фрактальные ландшафты на PHP (Алгоритм Diamond-Square)
Постраничное разбиение на PHP
В заметке о постраничном разбиении в Bootstrap мы говорили о внешнем виде ссылок на наборы материалов. Поговорим о том, как создавать разбиение в PHP, когда у нас количество материалов не превышает 100 штук (можно и больше, но тогда придётся подумать о том, как прятать часть ссылок). Это первое видео на канале, где музыка добавлена в середину ролика, надеюсь всем понравится. Если нет, пишите, иначе есть риск все последующие видео снабжать записями 🙂 . Читать далее Постраничное разбиение на PHP
ООП PHP
Вики: Объектно-ориентированное программирование (ООП. Мы будем говорить об ООП PHP) — методология программирования, основанная на представлении скрипта или программы в виде совокупности объектов, каждый из которых является экземпляром определенного класса, а классы образуют иерархию наследования. В PHP5 была полностью переписана ОО модель и теперь мы можем пользоваться полноценным ООП PHP. Каждое определение класса начинается с ключевого слова class, затем следует имя класса, и далее пара фигурных скобок, которые заключают в себе определение свойств и методов этого класса. Среди добавленных возможностей в PHP 5 можно найти видимость, абстрактные и ненаследуемые (final) классы и методы, а также магические методы, интерфейсы, клонирование и контроль типов (typehinting). Читать далее ООП PHP
Пространства имён PHP Namespace
Пространства имён PHP (документация) — способ группировки логически связанных классов, функций, констант. Появились в PHP5.3. Упрощают построение крупных приложений, решают проблему одинаковых названий классов и функций от разных разработчиков. При подготовке к сдаче ZCE — обязательная для подготовки тема. Ключевое слово namespace
, которое ставится первой строкой внутри операторных скобок. Пример создания пространства имён из документации: Читать далее Пространства имён PHP Namespace
Шаблоны проектирования в PHP
Погружение в шаблоны проектирования даёт понимание того, как правильно применять лучшие практики для моделирования предметной области в компоненты языка программирования. Также оно (изучение) помогает разобраться почему реализованы те или иные части популярных фреймворков. Читать далее Шаблоны проектирования в PHP
Задачи по PHP: MySQL
Задания на работу PHP с MySQL затрагивают: задачи создания базы данных MySQL и работы с ней, задачу выбора базы, задачу составления и выполнения SQL-запросов; задачи использования полезных PHP-функций по работе с MySQL, работу с подготовленными запросами и защиту от SQL-инъекций. Опыт выполнения задач по работе с MySQL из PHP пригодится на практике и при работе с другими реляционными СУБД. Читать далее Задачи по PHP: MySQL
Задачи по PHP: mail
Задания по отправке электронных сообщений из PHP включают в себя: задачи настройки для работы с почтой, параметры PHP-функции для отправки email и контекстные заданий для отправки электронной почты. Примечание: задания этого блока выполнять и проверять на локальном сервере, для избежания рассылки сообщений, которая может быть расценена как спам. Читать далее Задачи по PHP: mail
Задачи по PHP: файлы
Задачи по PHP: функции для работы с файловой системой, проверка существования файла, режимы работы с файлом, чтение файла из PHP, запись файла из PHP. Функции PHP для работы с директориями (папками). Загрузка файлов на сервер по HTTP и обработка загруженных файлов. Хотя в этом блоке задач не предусмотрены задания по парсингу, но одно задание посвящено получению информации со стороннего сайта через функцию работы с файлом. Читать далее Задачи по PHP: файлы