Курс по веб-разработке на PHP (уровень 2)практический курс без воды

Освой PHP и backend-разработку: ООП, MVC, базы данных. Разбираем вопросы архитектуры при построении backend и полноценных сайтов. Занятия ведёт Senior PHP Developer.
Вводный урок — бесплатно!
64
ак. часа
до 10
человек в группе
16
занятий
7 октября
старт группы
Запишитесь на курс сейчас –
первое занятие уже 7 октября

Ключевые темы курса

  • PHP 7
  • Объектно-ориентированное программирование (ООП)
  • Архитектура MVC
  • AJAX
  • Git и GitHub
  • Сессии, cookies
  • Работа с файловой системой
  • Работа с базами данных MySQL (через PDO)
  • Язык запросов SQL
  • Уязвимости и безопасность веб-сайтов
  • Регистрация, аутентификация, авторизация
  • Регулярные выражения

Что даст прохождение курса?

Ты сможешь самостоятельно разрабатывать сайты с личными кабинетами и регистрацией, освоишь работу с базами данных MySQL, в том числе со сложными SQL запросами, познакомишься с ООП и концепцией MVC, а также научишься использовать Git и GitHub.

После прохождения курса сможешь:

  • Самостоятельно разработать динамический веб-сайт на PHP.
  • Создать для сайта административную панель с применением базы данных MySQL.
  • Запрограммировать личный кабинет для пользователей с регистрацией и входом по логину и паролю.
  • Разрабатывать калькуляторы, сложные формы заявок c валидацией данных.
  • Настроить веб-сервер Apache (.htaccess).
  • Использовать систему контроля версий Git и хостинг репозиториев GitHub.

Кроме того:

  • Научишься использовать простые регулярные выражения.
  • Познакомишься с объектно-ориентированным программированием.
  • Поймёшь устройство популярных CMS систем (Wordpress, Bitrix и других).
Сертификат
По итогам ты получишь яркий сертификат!
Маленькие группы
В одной группе не больше 10-ти человек (чаще 7-8), преподаватель уделяет внимание каждому!
Спокойный темп занятий
Материал выдаётся дозировано, программа курса позволяет заниматься в комфортном режиме.
Повторное прохождение бесплатно
Не поняли сложную тему или пропустили урок? Не беда, пройдите бесплатно с другой группой!
Отработка материала
На занятиях очень много практики, в том числе самостоятельных работ.
Дополнительные материалы
После каждого занятия вы получите комплект дополнительных материалов для изучения.
Поддержка вне занятий
В онлайн-чате вы всегда можете задать вопрос и получить поддержку даже вне стен учебного центра.

Кому подойдёт этот курс

  • Начинающим Backend разработчикам
  • Frontend разработчикам, которые хотят стать Fullstack developer
  • Выпускникам нашего курса программирования на PHP

Кому этот курс не подходит

Курс не подойдёт, если:

  • Ты опытный разработчик на PHP (от 1.5 лет опыта)
  • Ты не имеешь никакого опыта в веб-разработке
  • Ты ещё не знаком с языком PHP (в таком случае обрати внимание на наш курс по программированию на PHP)
Если уже неплохо знаешь PHP, то обрати внимание на продвинутый курс и на курс по Laravel.

Подробная программа курса

Для каждого урока есть список теоретических тем и практических упражнений, а также итоги занятия.
Модуль 1

Стандартная библиотека PHP

Занятие 1. HTTP

Поговорим подробно о протоколе HTTP, обсудим разные режимы работы интерпретатора PHP

Теория:

  • Протокол HTTP
  • Особенности HTTPS
  • Заголовки и тело запроса
  • Типы запросов: GET, POST, PUT, DELETE
  • Коды ответов сервера
  • CGI
  • Веб-сервер Apache и Nginx
  • Виртуальные хосты
  • Интерпретатор PHP и разные режимы работы (mod_php, fastcgi, php-fpm)

Практика:

  • Настройка веб-сервера и интерпретатора (OpenServer)
  • Создание простой формы калькулятора

По итогам занятия:

  • Разберётесь с разными типами HTTP запросов
  • Сможете самостоятельно настраивать веб-сервер (http.conf и .htaccess)
  • Научитесь изменять параметры интерпретатора через php.ini

Занятие 2. Git и GitHub

Научимся использовать Git для контроля версий

Теория:

  • Роль систем контроля версий в современной разработке
  • Основы работы с репозиторием
  • Базовые операции: Commit, Push, pull
  • Принцип атомарности коммитов
  • Хостинг репозиториев GitHub

Практика:

  • Установка и настройка Git
  • Создание Git репозитория через PHPStorm
  • Публикация первого проекта на GitHub
  • Разработка динамического прайс-листа с публикацией на гитхабе
  • Самостоятельная работа

По итогам занятия:

  • Изучите основы CVS Git
  • Научитесь правильно «коммитить» изменения и публиковать их на GitHub

Занятие 3. Функции

Узнаем особенности работы с функциями в PHP

Теория:

  • Понятие функции
  • Аргументы (параметры)
  • Возврат значений и оператор return
  • Области видимости
  • Суперглобальные переменные
  • Передача по ссылке или по значению
  • Функции для работы с массивами: array_sum, isset, array_search и другие

Практика:

  • Написание функции для возведения числа в степень
  • Написание функции для расчета факториала
  • Самостоятельная работа

По итогам занятия:

  • Научитесь программировать собственные функции для повторного использования
  • Познакомитесь со стандартными функциями для работы с массивами

Занятие 4. Обработка строк

Изучим обработку строк в разных кодировках

Теория:

  • Строковый тип данных
  • Особенности мультибайтовых кодировок (на примере utf-8)
  • Функции обработки строк: strpos, implode, explode, strlen, str_repeat, trim, substr
  • Подстановка данных в строку

Практика:

  • Разработка прайс-листа с возможностью поиска и сортировки данных
  • Учебные задачи на поиск данных в строке
  • Самостоятельная работа

По итогам занятия:

  • Освоите работу со строковым типом данных
  • Научитесь использовать строковые функции PHP
  • Реализуете динамический прайс-лист с сортировкой и поиском

Занятие 5. Работа с файлами

Научимся взаимодействовать с файловой системой и создавать формы для загрузки файлов

Теория:

  • Функции для создания, редактирования, удаления файлов
  • Отличие бинарных и текстовых файлов
  • Файлы как хранилище данных
  • Формы multipart/form-data
  • Загрузка файлов на сервер
  • Проверка MIME-типа файла

Практика:

  • Создание динамической галереи изображений
  • Разработка формы с загрузкой файлов на сервер
  • Отображение данных из файла в формате CSV
  • Самостоятельная работа

По итогам занятия:

  • Научитесь программно управлять файлами на диске
  • Освоите основы загрузки файлов на сервере
Модуль 2

ООП и MVC

Занятие 6. Основы ООП

Изучим основы объектно-ориентированного программирования

Теория:

  • Понятие объекта
  • Определение класса
  • Модификаторы доступа: public, private, protected
  • Объектно-ориентированное проектирование
  • Конструктор класса (__construct)

Практика:

  • Разработка класса для работы с файлами
  • Применение готовой библиотеки классов для работы с загрузкой файлов
  • Самостоятельная работа

По итогам занятия:

  • Познакомитесь с понятиями объектов и классов
  • Напишете первые классы
  • Научитесь использовать объекты для решения реальных задач

Занятие 7. Три кита ООП

Обсудим основные концепции ООП

Теория:

  • Наследование, ключевое свойство extends
  • Понятие интерфейса
  • Инкапсуляция
  • Абстрактные классы
  • Полиморфизм

Практика:

  • Разработка иерархии классов для модуля чтения данных из файлов разных форматов
  • Работа с сериализацией данных, форматом CSV и текстовыми файлами в объектно-ориентированном стиле

По итогам занятия:

  • Познакомитесь с основными концепциями ООП
  • Научитесь проектировать универсальные классы

Занятие 8. MySQL

Изучим ООП-подход для работы с базами данных

Теория:

  • Особенности разных драйверов для работы с БД в PHP
  • Расширение PDO
  • Подготовленные выражения
  • Библиотека SafeMySQL

Практика:

  • Разработка формы заявки с сохранением в базу данных
  • Создание прайс-листа с сортировкой и поиском по нему
  • Самостоятельная работа

По итогам занятия:

  • Узнаете различия драйверов для работы с MySQL
  • Научитесь использовать расширение PDO для взаимодействия с базой данных
  • Сможете применять библиотеку SafeMySQL для более удобной работы с SQL-запросами

Занятие 9. MVC

Изучим шаблон проектирования Model-View-Controller

Теория:

  • Архитектура MVC (модель, вид, контроллер)
  • Front Controller
  • Маршрутизация и класс роутера
  • Проектирование MVC приложения
  • Конфигурация и настройка приложения

Практика:

  • Разработка MVC каркаса веб-приложения
  • Начало работы над проектом «Микроблог»

По итогам занятия:

  • Познакомитесь с архитектурой MVC, которая является основой большинства веб-приложений на PHP
  • Сможете реализовать MVC на основе классов и построить структуру сайта

Занятие 10. Регистрация пользователей

Научимся реализовывать регистрацию и авторизацию пользователей

Теория:

  • Приёмы написания классов в MVC
  • Проектирование системы регистрации пользователей
  • Безопасное хранение паролей: хеширование и соль
  • Функция password_hash
  • Защита сессии: SSL, http only cookies

Практика:

  • Построение системы регистрации для проекта «Микроблог»
  • Применение методик повышения безопасности на практике

По итогам занятия:

  • Научитесь реализовывать безопасную систему регистрации и аутентификации пользователей
  • Узнаете о типовых проблемах безопасности и уязвимости базы пользователей
Модуль 3

Практикум

Занятие 11. SQL

Научимся писать сложные SQL-запросы на выборку данных

Теория:

  • Объединение таблиц с оператором JOIN
  • LEFT JOIN, INNER JOIN, RIGHT JOIN
  • Подзапросы в выражении SELECT
  • Агрегатные функции в подзапросах

Практика:

  • Вывод списка постов в микроблоге с информацией об авторе
  • Реализация подсчёта кол-ва постов у каждого автора
  • Фильтрация списка постов по автору

По итогам занятия:

  • Продолжите работу над проектом «микроблог» и реализуете вывод постов
  • Сможете использовать подзапросы и оператора JOIN в SQL для выборки необходимых данных
  • Узнаете различия разных типов объединения таблиц

Занятие 12. Регулярные выражения

Изучим работу с регулярными выражениями

Теория:

  • Основы регулярных выражений
  • Базовые компоненты: якоря, квантификаторы, символьные классы
  • Применение регулярных выражений для поиска и замены в тексте
  • Функции preg_match, preg_replace

Практика:

  • Разработка системы хеш-тегов для проекта «микроблог»
  • Автоматическая замена хеш-тегов на гиперссылки
  • Применение регулярных выражений для настройки Apache Mod Rewrite

По итогам занятия:

  • Научитесь применять регулярные выражения в PHP для обработки текста
  • Сможете реализовать систему хеш-тегов с поиском по записям
  • Научитесь настраивать ЧПУ (красивые URL адреса) через Apache Mod Rewrite в htaccess

Занятие 13. AJAX

На практике освоим работу с асинхронными запросами на JS

Теория:

  • Отправка HTTP запросов из JavaScript
  • Асинхронные запросы к серверу
  • AJAX с помощью jQuery
  • Формат данных JSON
  • Lazy load

Практика:

  • Создание счетчика лайков для микроблога с отправкой данных по AJAX
  • Реализация бесконечной ленты постов в микроблоге

По итогам занятия:

  • Научитесь использовать подгрузку данных и отправку запросов на сервер с помощью jQuery
  • Сможете реализовать ленивую подгрузку данных и счётчик лайков

Занятие 14. Практика

Отработаем на практике полученные знания

Теория:

  • Повторение базовых концепций ООП
  • Разбор тонкостей применения сложных SQL запросов
  • Кеширование данных для повышения производительности
  • Профилировка приложения
  • Библиотека gd2

Практика:

  • Разработка личного профиля пользователя с возможностью загрузки аватарки
  • Подключение визуального редактора текстов

По итогам занятия:

  • Отработаете на практике изученный ранее материал
  • Сможете реализовать загрузку изображений с автоматическим созданием миниатюр
  • Научитесь кешировать тяжёлые запросы к базе данных

Занятие 15. Безопасность веб-приложений и сайтов

Узнаем об основных проблемах безопасности, научимся их предотвращать

Теория:

  • Виды угроз сайту
  • Защита от XSS (межсайтовый скриптинг)
  • SQL инъекции
  • XSRF
  • Брутфорс
  • MITM

Практика:

  • Реализация защиты форм от XSS и SQL инъекций
  • Внедрение защиты форм и AJAX-запросов от XSRF

По итогам занятия:

  • Узнаете об основных видах угроз для сайта
  • Сможете реализовать защиту от популярных уязвимостей

Занятие 16. Выпускной

Обсудим все оставшиеся вопросы и повторим материал

Теория:

  • Deployment
  • Повторение ключевых принципов архитектуры MVC
  • Закрепление изученного на курсе материала
  • Разбор оставшихся вопросов

Практика:

  • Доработка проекта «микроблог»
  • Развёртывание (deploy) проекта на сервере средствами PHPStorm
  • Настройка синхронизации dev и production версии приложения

По итогам занятия:

  • Завершите работу над проектом, опубликуете его на production сервере
  • Повторите все основные темы курса
  • Узнаете, куда двигаться дальше и что ещё нужно изучать
  • Подведёте итоги курса и получите комплект дополнительных учебных материалов
Подробный план занятия
/home/student/module_1/lesson_1>

Теория:

  • Протокол HTTP
  • Особенности HTTPS
  • Заголовки и тело запроса
  • Типы запросов: GET, POST, PUT, DELETE
  • Коды ответов сервера
  • CGI
  • Веб-сервер Apache и Nginx
  • Виртуальные хосты
  • Интерпретатор PHP и разные режимы работы (mod_php, fastcgi, php-fpm)

Практика:

  • Настройка веб-сервера и интерпретатора (OpenServer)
  • Создание простой формы калькулятора

По итогам занятия:

  • Разберётесь с разными типами HTTP запросов
  • Сможете самостоятельно настраивать веб-сервер (http.conf и .htaccess)
  • Научитесь изменять параметры интерпретатора через php.ini

Сколько стоит прохождение курса?

Максимальный
  • Очное прохождение курса
  • Рабочее место за нашим ноутбуком (по желанию)
  • Учебные материалы
  • Онлайн-чат с преподавателем
  • Лицензионная копия программ JetBrains
  • Проверка домашних заданий и code-review
  • Help-day по средам
  • Гарантия трудоустройства (при освоении профессии)
  • 2 индивидуальных занятия с преподавателем
  • Дополнительные индивидуально подобранные задания
  • Возможность работать над личным проектом с помощью преподавателя
39 900 руб.
27 900 руб.
Скидка 30% действует до 15 сентября
Оптимальный
  • Очное прохождение курса
  • Рабочее место за нашим ноутбуком (по желанию)
  • Учебные материалы
  • Онлайн-чат с преподавателем
  • Лицензионная копия программ JetBrains
  • Проверка домашних заданий и code-review
  • Help-day по средам
  • Гарантия трудоустройства (при освоении профессии)
  • 2 индивидуальных занятия с преподавателем
  • Дополнительные индивидуально подобранные задания
  • Возможность работать над личным проектом с помощью преподавателя
33 900 руб.
23 700 руб.
Скидка 30% действует до 15 сентября
Стартовый
  • Очное прохождение курса
  • Рабочее место за нашим ноутбуком (по желанию)
  • Учебные материалы
  • Онлайн-чат с преподавателем
  • Лицензионная копия программ JetBrains
  • Проверка домашних заданий и code-review
  • Help-day по средам
  • Гарантия трудоустройства (при освоении профессии)
  • 2 индивидуальных занятия с преподавателем
  • Дополнительные индивидуально подобранные задания
  • Возможность работать над личным проектом с помощью преподавателя
25 900 руб.
18 100 руб.
Скидка 30% действует до 15 сентября

* Во все тарифы включена услуга «помощь с трудоустройством выпускников»:
  • Помощь с написанием резюме
  • Тестовое собеседование
  • Помощь в поиске вакансии
Мы помогаем с поиском работы
Организуем стажировки
Делимся лайфхаками по прохождению собеседований

Получи персональную скидку!

Узнай окончательную стоимость с учётом персональных скидок

Запишись на курс заранее

Забронируй место в группе за месяц до начала занятий и получи скидку.

Поделись информацией о курсе в соц.сетях

Сделай пост в ВК или в Instagram о том, что идёшь к нам на курсы.

Вместе дешевле! Приходи с друзьями

Приходи на курс с другом или родственником — каждый получит скидку.

Оплати весь курс целиком

Оплати стоимость курса целиком. Это дешевле.

Забронируй несколько курсов

На каждый последующий курс предоставляется накопительная скидка!
Оставь заявку, чтобы получить персональную скидку на курс.
Узнай окончательную стоимость с учётом персональной скидки

Преподаватели

Мы трепетно относимся к нашим преподавателям, приглашаем вести занятия только опытных специалистов-практиков, тренируем и обучаем их, чтобы гарантировать высокое и стабильное качество подачи материала.
Юрий Горин
Юрий Горин
Fullstack Web Developer с 10-летним опытом по профессии, преподаватель с 5-летним стажем, методист

Уже 5 лет мне удаётся совмещать работу программистом с успешной преподавательской деятельностью. За эти годы я обучил и выпустил более 400 человек, многие из которых успешно смогли реализовать себя в IT-индустрии.

В учебном центре «Дверь в АйТи» я занимаюсь разработкой учебных программ, подготовкой преподавателей, а также сам веду занятия, при этом продолжаю работать по специальности.

Основной стек технологий:

  • Node.js / express.js
  • PHP 7+ / Laravel / MySQL
  • JavaScript / ES6+ / Vue.js
  • CSS / SCSS / BEM

На занятиях я всегда стараюсь донести актуальные технологии и знания, но при этом сделать материал простым, понятным и доступным.

https://vk.com/id2005521

Спросите преподавателя!

Задайте вопрос преподавателю совершенно бесплатно

Консультация может быть вам полезна, если:

  • Вы уже знаете часть материала и не уверены, подходит ли вам курс
  • Вы не уверены, что у вас хватит базовых знаний для прохождения курса
  • Вы уже изучали что-то самостоятельно, но у вас возникли сложности
Заявка на консультацию
Оставьте заявку на консультацию с преподавателем по телефону или лично в учебном центре

Отзывы наших учеников

Хочу отметить доступность, с которой подается материал
Содержательно, а что самое главное, так это актуальность информации. Также хочу отметить доступность, с которой подается материал — каждый пункт объясняется и резюмируется, поэтому если что-то было не понятно — будет вкратце обговорено еще раз.

Скажу честно, было сложновато учиться из-за работы и тотальной нехватки времени. Много практических заданий, помогающих закрепить и понять материал.
Общение в онлайн-чате и дополнительный материал сильно помогают. В общем — всё отлично!
Клим Бочарников
Хочу поблагодарить за грамотную и последовательную подачу информации
Курс действительно очень полезный, поскольку рассматриваются актуальные и наиболее широко используемые в данный момент приемы верстки, принципы работы с макетами, а также возможные проблемы и способы и решения.

Лично от себя хочу поблагодарить Юрия за грамотную и последовательную подачу информации, умение передать суть того или иного приема или метода, а также за постоянную обратную связь и грамотно подобранные домашние задания, позволяющие на практике самостоятельно отработать и закрепить полученные знания.
Артем Прокопенко
Курс у меня совпал со стажировкой-работой на должности frontend разработчика в своей компании
Впечатления от курса самые прекрасные) Очень важно, когда преподаватель, по-настоящему, хочет научить, всегда готов помочь, делится теоретическими знаниями и практическим опытом, проверенными в собственной работе.

Так как данный курс у меня совпал со стажировкой-работой на должности frontend разработчика в своей компании, кое что сразу смотрела и применяла в работе на практике, кое-что сравнивала, домашние, к сожалению, делать не успевала…((
С нетерпением жду углубленных курсов по JS и PHP, надеюсь будет и по Seo.
Юлия Ичетовкина
Проба реальных проектов создает в голове целостную картину всей разработки
Проходя этот курс я уже работал в этой сфере и могу с уверенностью сказать, конкретно этот курс оказался очень информативным и полезным, он поднимает уровень на новую ступень именно профессиональной верстки. А проба реальных проектов (пусть и учебных, но всё же реальных) создает в голове целостную картину всей разработки. Каждое занятие новый интересный материал, курс пролетел очень быстро!!!
Я обязательно продолжу обучение!
Юрий, огромное спасибо!
Любомир Долгополов

Ответы на частые вопросы

Кто ведёт занятия? Что у вас за преподаватели?

Все наши преподаватели — практикующие специалисты: программисты, веб-разработчики, дизайнеры. Они — профессионалы своего дела, которые готовы поделиться своим опытом и знаниями с начинающими специалистами.

Мы обучаем наших преподавателей тонкостям образовательного процесса, а за качеством их работы всегда следит методист.

Возможны ли индивидуальные занятия по курсу?

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

Ты можешь пройти индивидуально как весь курс целиком, так и отдельные интересующие темы.

Узнать подробности об индивидуальных занятиях можно у наших администраторов по телефону 8 (812) 914-88-40.

Что делать, если мне не понравилось у вас?

Если вам что-то не понравилось, обязательно сообщите нашему администратору. Мы будем очень расстроены, но постараемся решить возникшие разногласия. В крайнем случае — вернём деньги согласно условиям договора.

Хватит ли заявленного времени в программе для освоения материала?

Да, программы курсов спланированы и отработаны, поэтому вы точно успеете освоить весь заявленный план курса. Главное: слушайте преподавателя, старайтесь выполнять все домашние работы и изучать дополнительный материал.

Ну, а если что-то вдруг пойдёт не так — мы предлагаем бесплатное повторное прохождение курса.

У вас нет нужного мне курса...

Если нужного вам курса сейчас нет в нашем каталоге, это ещё не означает, что мы не можем вам дать нужные навыки и знания.

Свяжитесь с нашим администратором — мы вместе что-нибудь придумаем.

Мне попадалась реклама более дешевых курсов...

Возможно где-то и дешевле, но у нас вы получите гораздо больше:

  • Занятия ведут опытные преподаватели-практики;
  • Программы курсов всё время обновляются, чтобы соответствовать требованиям работодателей;
  • Вы получаете финансовую гарантию трудоустройства, которая прописана в договоре;
  • Мы помогаем с трудоустройством не на словах, а на деле: с поиском вакансий, с написанием резюме, с подготовкой к собеседованиям;
  • У вас есть возможность безлимитно пожизненно пользоваться консультациями преподавателей в рамках help day (на тарифах Максимальный и Оптимальный).
А можно скидку?

Можно, выбирайте из действующих акций и специальных предложений.

Какой график работы в учебном центре?

Мы работаем семь дней в неделю. По будням — с 13:15 до 22:15, а по выходным с 9:30 до 22:30. Приходите! :)

Будет ли сертификат по окончании курса?

Разумеется, каждый ученик, освоивший всю программу курса, получит красивый сертификат, который с гордостью можно приложить к своему резюме :)