Программа курса:
Модуль 1. PHP Best practicies
-
Соглашение об именах PEAR
-
PhpDoc - синтаксис, преимущества использования
-
Установка и настройка отладчика и профилировщика xdebug
-
Профилирование php приложений с помощью xdebug
Практическая часть: установка и настройка необходимого инструментария + xdebug. Профилирование тестового скрипта.
Модуль 2. Регулярные выражения
-
Понятие регулярного выражения
-
Литералы и метасимволы
-
Квантификаторы
-
Ленивая, жадная и ревнивая квантификация
-
Группы символов
-
Поддержка регулярных выражений в PHP.
Практическая часть: Парсинг сохраненной странички выдачи яндекс-картинок и вывод найденных картинок на экран.
Модуль 3. Пользовательская информация: Cookies и сессии
-
Cookies
-
Сессии
-
Best practicies
Практическая часть: Создание формы авторизации для пользователя.
Модуль 4. Ошибки и исключения
-
Ошибки и исключения.
-
Логгирование ошибок (error_reporting)
-
Использование исключений для повышения надежности приложения
-
Использование исключений для повышения безопасности приложения
-
Java-style использование исключений (если у исключения есть шанс появления, то оно должно быть перехвачено)
Практическая часть: Добавление прав доступа для пользователя на сайте. Генерация исключения в случае если прав недостаточно. Перехват исключения и выполнение нужных действий (вывод сообщения об ошибке)
Модуль 5. Поддержка строковых форматов
-
PHP и XML (SimpleXML)
-
JSON
-
Сериализация средствами php
-
Сравнение строковых форматов
-
Best Practicies
Практическая часть: создание групп доступа для пользователей на сайте. Хранение принадлежности пользователя к группе в выбранном строковом формате. Форма для управления группами.
Модуль 6. Сетевые возможности PHP
-
Понятие сокета
-
Применение сокетов
-
CURL
Практическая часть: получение данных для парсинга напрямую с яндекса.
Модуль 7. PHP+AJAX
-
Что такое Ajax?
-
AJAJ, AJAH
-
Цели и задачи Ajax
-
Объект XMLHttpRequest
-
Пример использования XMLHttpRequest
-
Библиотеки для работы с Ajax (jQuery)
-
Best practicies
Практическая часть: AJAX форма выбора картинки для аватары пользователя (через парсинг яндекса)
Модуль 8. Безопасность и настройка интерпретатора.
-
Основные методики нарушения безопасности
-
Настройки интерпретатора, влияющие на безопасность
-
Настройки mySQL, влияющие на безопасность
-
Как избежать SQL/HTML injections, XSS.
Практическая часть: анализ созданного приложения на безопасность.