(24 академических часа, 6 занятий)
Цель данного курса — дать общие представления о программировании на языке PHP. Этот курс будет полезен всем, чьи профессиональные интересы касаются области разработки, создания и поддержки вебресурсов, программирования в сфере СУБД, а также администраторам и программистам в системах Unix. Он поможет научиться создавать программное обеспечение вебстраниц и вебсайтов, разрабатывать форумы, чаты, гостевые книги, программы для соединения с базами данных, аутентификации на сайтах и многое другое, а также даст необходимые навыки для работы по специальности «PHP-программист».
Требования к курсу: желающие обучаться PHP-программированию должны иметь элементарные навыки работы с компьютером. Уметь работать с файлами и папками, создавать и редактировать простой текст, а также иметь опыт работы с компьютерными сетями. То есть у абитуриентов должна быть квалификация начинающего или продвинутого.
Программа обучения
1. Введение. История создания и сфера использования языка PHP в современном мире.
Возможности языка PHP и его применение на практике.
Необходимый минимум аппаратных и программных средств для работы PHP-программиста. Обзор программного обеспечения и методов разработки ПО на PHP.
Понятие скрипта. Классификация скриптов, их различия и области применения.
Использование PHP в сфере WWW.
Обзор технологий программирования в области Web, их различия, особенности и поддержка в различных условиях.
Варианты использования PHP на вебсерверах (встроенные скрипты и технология CGI). Установка подключение и настройка модулей PHP на серверах IIS и Apache. Разновидности, установка и использование пакетов вебразработчика. Запуск сервера и проверка работоспособности технологии PHP. Примеры запуска скриптов на языке PHP.
Синтаксис языка PHP.
Различие версий интерпретаторов языка PHP и их современное использование.
Типы переменных, способы их объявления, создания и присвоения значений. Работа с простыми типами переменных и вывод информации в браузер. Понятие конкатенации.
Массивы, способы их создания и области применения. Примеры создания сложных массивов и работа с ними.
Функции вывода информации и варианты генерации кода вебстраниц.
2. Обзор функций для работы с переменными и массивами. Сортировка, извлечение, заменаэлементов и другие манипуляции с массивами. Удаление переменных и массивов.
Понятие объекта. Создание и использование объектов, их свойств и методов. Примеры создания объектов.
Передача данных скрипту. Понятие и работа с HTML-формами. Примеры передачи скриптам значений переменных и массивов посредством HTML-форм и гиперссылок методами GET и POST (отправка информации на сервер). Работа с переменными окружения сервера. Создание программ логирования, ведения статистики и т.д. Получение и сбор информации о пользователях и посещениях сайта.
3. Условия и циклы, их типы и применение на практике. Примеры создания сложных условий и скриптов аутентификации на сайте. Варианты создания циклов. Примеры генерации кода в циклах (создание выпадающих списков, таблиц по запросу и т.д.). Бесконечные циклы, их особенности и возможность применения на практике.
Работа со строками. Обзор функций для работы со строками. Примеры написания текстовых фильтров и поиск информации в строках. Работа с различными кодировками.
Функции шифрования данных. Примеры обратимого и необратимого шифрования и их применение на практике. Создание скриптов аутентификации на сайте с шифрованием логинов и паролей.
Отправка данных по e-mail. Примеры скриптов для форм обратной связи на сайтах.
Понятие регулярных выражений, их создание и использование. Обзор функций и примеры скриптов для работы с регулярными выражениями.
4. Работа с файлами. Обзор функций для создания, чтения, записи и манипуляций с файлами. Примеры генерации скриптов, а также текстовых и других типов файлов.
Функции для работы с каталогами. Автоматическое создание новых каталогов, установка разрешений и другие манипуляции с ними. Копирование и удаление файлов и каталогов.
Создание гостевых книг, чатов и форумов на базе текстовых файлов. Функции включения содержимого других файлов и генерации кода «на лету».
5. Работа с базами данных. Обзор типов и систем управления базами данных (СУБД), их различия, специфика и области применения. Введение в реляционные системы управления базами данных. Принципы построения и работы реляционных СУБД. Обзор популярных СУБД для работы с вебсерверами. Выбор, установка и настройка СУБД.
Понятие языка SQL и его использование в современных СУБД. Создание SQL-запросов к базам данных на примере СУБД MySQL. Вставка, изменение и удаление данных, а также их извлечение и сортировка по заданным условиям.
Создание связки PHP-MySQL. Обзор функций PHP для работы с системами управления базами данных. Подключение к СУБД с помощью PHP-скриптов. Примеры создание новых баз данных и таблиц, а также обращения к ним через PHP-скрипты.
Примеры создания интерфейса управления базами данных, а также гостевых книг, форумов и чатов с использованием СУБД.
6. Шлюзовые интерфейсы. Понятие шлюзовых интерфейсов (CGI, ASP), их назначение, принципы работы и поддержка вебсерверами. Преимущества и недостатки использования шлюзовых интерфейсов на вебсерверах.
Актуальность, установка и работа CGI. Создание, принципы построения и размещение CGI-скриптов на сервере. Примеры использования CGI-скриптов в работе сайта.
Шлюзовой интерфейс ASP. Актуальность данного интерфейса, его преимущества и недостатки по сравнению с CGI. Установка и использование ASP на различных платформах. Принципы построения, размещение и создание ASP-скриптов. Выбор языка поумолчанию. Обзор особенностей и специфических инструкций технологии ASP.
Примеры создания различных программ на языке PHP с использованием ASP.
Программирование в среде операционной системы (ОС). Варианты использования PHP в качестве языка программирования в различных ОС. Обзор интерпретаторов, их установка и настройка. Примеры создания утилит на языке PHP в среде ОС Unix. Установка разрешений на запуск и чтение скрипта. Защита скриптов от других пользователей.