Как освоить PHP 8 и MySQL на профессиональном уровне, достаточном для создания абсолютно любых по сложности сайтов. Что такое PHP и зачем он нужен? PHP – это язык для Web-программирования. А Web-программирование – это механизм, без которого немыслим ни один мало-мальски сложный сайт. Даже если взять какой-нибудь простенький сайт, где есть всего лишь одна форма обратной связи, то даже чтобы её обработать, например, просто отправить на e-mail администратора письмо с текстом из формы, уже необходимо Web-программирование. А уж более сложные сайты: Интернет-магазины, социальные сети, порталы с поиском, регистрацией/авторизацией – тут уже без Web-программирования просто никуда.
Почему именно PHP? На это есть несколько причин:
- PHP достаточно простой для новичков. Я знаю около двух десятков различных языков программирования, и мне есть с чем сравнивать. Так вот PHP – один из самых простых языков и его вполне может освоить даже тот, кто никогда не писал никаких программ.
- Гибкость языка. Вы можете его использовать как для написания сайтов, так и для различных прикладных задач. Например, на сервере, на котором находится данный сайт, имеется скрипт, который ежедневно запускается (автоматически через cron) и анализирует лог-файлы, после чего результат этих анализов отправляет мне на e-mail.
- Лучше языка для старта в Web-программировании не найти. Действительно, одним PHP мир Web-программирования не ограничивается, и иногда люди меняют PHP на другой язык, например, ради работы. Но однозначно освоить любой Web-язык после PHP будет в разы проще, чем если сразу осваивать другой язык. Тот же Python так же поддерживает Web-программирование, но освоить его именно в этой области, значительно сложнее, чем PHP. Так как Python – это универсальный язык со всеми вытекающими, а PHP – это строго заточенный инструмент именно под Web.
- PHP – самый популярный язык для Web-программирования. Это очень важный момент, поскольку, во-первых, у Вас никогда не будет проблем с хостингом для сайта, во-вторых, ответ на любой вопрос по PHP будет найти гораздо проще, чем по другому Web-языку. Дополнительно, распространённость PHP привела к созданию множества различных компонентов и скриптов, которые Вы можете использовать в своих задачах, тем самым, сэкономив уйму времени на написание аналогов.
- Высокая безопасность PHP. При правильной настройке самого PHP, а также при грамотном написании кода с использованием уже встроенных возможностей в PHP, вероятность взлома стремится к нулю.
- Очень много вакансий на работу PHP-программистом. Это вытекает из огромной популярности языка.
Содержание курса:
Раздел №1. Введение
1. Вы узнаете более подробно про язык PHP, а также про то, как он работает
2. Вы узнаете, что нового появилось в PHP 8?
3. Вы узнаете, какой пакет для локального сервера лучше использовать и, главное, почему?
4. Вы увидите, как устанавливается и настраивается локальный сервер
5. Вы узнаете, какое ПО лучше использовать для программирования на PHP
Раздел №2. Основы программирования на PHP
1. Вы увидите, как пишутся самые различные скрипты на PHP, именно в 8-й версии
2. Вы узнаете, что такое переменные и какие есть типы переменных в PHP
3. Вы узнаете, что такое ссылочные переменные
4. Вы узнаете, что такое константы и где их можно и нужно применять
5. Вы увидите, какие есть в PHP математические, строковые и логические операции
6. Вы научитесь работать со всеми базовыми конструкциями языка: if-elseif-else, for, while, do-while, foreach, switch-case, match и др.
7. Вы узнаете, что такое списки и ассоциативные массивы, а также научитесь их правильно использовать
8. Вы узнаете, как создаются собственные функции в PHP
9. Вы познакомитесь с областью видимости переменных и будете чётко понимать, что такое локальные и что такое глобальные переменные
10. Вы научитесь использовать рекурсию в функциях
11. Вы узнаете, что такое анонимные функции
12. Вы научитесь создавать собственные генераторы
13. Вы узнаете, что такое отладочные функции и как их использовать
14. Вы узнаете, как получить IP-адрес пользователя, как получить информацию о браузере, о языке пользователя и многом другом
15. Вы познакомитесь с выводом функции phpinfo()
16. Вы познакомитесь с инструкциями include, require, include_once и require_once
Раздел №3. Стандартные функции в PHP
1. Вы узнаете, какие в PHP есть математические функции
2. Вы узнаете, какие имеются важнейшие строковые функции в PHP
3. Вы познакомитесь с функциями для работы со списками и массивами
4. Вы научитесь работать с датой и временем в PHP
5. Вы научитесь работать с файлами: считывать и записывать содержимое файла, создавать и удалять их, копировать – и всё это через функции в PHP
6. Вы научитесь работать с директориями: создавать и удалять их, делать рекурсивный обход содержимого любой директории
7. Вы научитесь парсить INI-файлы, что является крайне острой необходимостью при создании большинства крупных и не очень сайтов
8. Вы научитесь запускать внешние программы через PHP
9. Вы узнаете, что такое регулярные выражения и научитесь их использовать
Раздел №4. Обработка форм и получение данных
1. Вы узнаете, что такое GET-запрос
2. Вы узнаете, что такое POST-запрос
3. Вы научитесь отправлять массивы на сервер
4. Вы узнаете всё необходимое для защиты своего сайта/сервера от опасных запросов
5. Вы научитесь отправлять файлы на сервер
6. Вы сможете защититься от опасных файлов при их загрузке на сервер
Раздел №5. Объектно-ориентированное программирование в PHP
1. Вы узнаете, что такое ООП, для чего оно нужно и как его использовать
2. Вы узнаете про 3 парадигмы ООП, поймёте, что они означают
3. Вы узнаете, что такое классы и как их создавать в PHP
4. Вы узнаете, что такое конструктор, деструктор и методы
5. Вы познакомитесь с 3-мя модификаторами доступа
6. Вы узнаете, что такое статические свойства и методы и как их применять на практике
7. Вы познакомитесь с использованием «магических» методов
8. Вы узнаете, что такое сериализация объектов
9. Вы научитесь правильно клонировать объекты
10. Вы узнаете, что такое типизация данных и как правильно её использовать в PHP 8
11. Вы изучите механизм наследования классов в PHP
12. Вы узнаете, что такое абстрактные классы и почему они так важны
13. Вы узнаете, что такое интерфейсы и как их применять на практике
14. Вы узнаете, что такое трейты и как их можно использовать
15. Вы познакомитесь с пространствами имён и научитесь их использовать в своей практике
16. Вы узнаете, как можно делать автоматическое импортирование и загрузку классов
Раздел №6. Обработка ошибок и исключений
1. Вы узнаете про режимы вывода ошибок в PHP 8, а также про их уровни
2. Вы познакомитесь с оператором @
3. Вы узнаете, как использовать важнейшую конструкцию try-catch-finally
4. Вы познакомитесь с классами Exception и Error
5. Вы научитесь обрабатывать различные «ошибки» с помощью исключений, без чего говорить о качественном программировании точно нельзя
Раздел №7. Сетевые функции в PHP
1. Вы узнаете, что такое заголовки сервера и как с ними работать через PHP
2. Вы узнаете, что такое cookie, как их использовать и где применять
3. Вы узнаете, что такое сессии, которые наравне с cookie являются важнейшими темами в PHP
4. Вы научитесь делать авторизацию пользователей
5. Вы научитесь разбирать и собирать на части URL-строку
6. Вы узнаете, как отправлять e-mail через PHP
Раздел №8. Работа с базой данных и СУБД MySQL
1. Вы узнаете, что такое база данных и какова её структура
2. Вы узнаете, что такой SQL и что такое MySQL
3. Вы научитесь управлять базами данных и их составляющими через phpMyAdmin
4. Вы узнаете, что такое индексы
5. Вы научитесь импортировать и экспортировать базы данных через phpMyAdmin, что, кстати, является важнейшим навыков, даже если Вы далеки от создания сайтов
6. Вы узнаете, как подключаться к базе данных через PHP
7. Вы узнаете, как создавать и удалять базы данных и таблицы через PHP
8. Вы научитесь добавлять, изменять и удалять записи через PHP
9. Вы научитесь делать выборку записей из таблицы через PHP
10. Вы познакомитесь и научитесь использовать расширение PDO
11. В конце концов, Вы уже очень прилично освоите SQL-запросы, в том числе, и JOIN-запросы.
Раздел №9. Компоненты
1. Вы узнаете, что такое Composer и как его использовать
2. Вы узнаете, как находить и устанавливать компоненты с помощью Composer
3. Вы увидите установку и использование библиотеки для удобного парсинга Excel-файлов
4. Вы увидите установку и использование компонента PHPMailer, благодаря которому можно удобно, не заботясь о сложнейших низкоуровневых деталях, отправлять письма по e-mail
5. Вы узнаете, как и благодаря какому компоненту можно поддерживать чистоту и порядок в своём коде и оперативно вносить исправления, если с ним что-то не так
Бонус. Создание сайта библиотеки.
В рамках основного курса мы разбираем всё необходимое для решения абсолютно любых задач, которые встают перед разработчиками на PHP. Однако, мало знать все доступные инструменты и даже мало уметь писать небольшие скрипты. Очень важно научиться применять эти знания при создании относительно сложных проектов. И как раз данный Бонус покажет Вам, как это правильно делать.
В рамках Бонуса «Создание сайта библиотеки» мы реализуем сервис, где будут применяться знания из курса. В результате получится полноценный по функционалу сайт, в котором будут: каталог книг, каталог авторов, персональные страницы авторов, персональные страницы книг с количеством доступных экземпляров в библиотеке, реализованы 2 типа пользователей (обычный пользователь и библиотекарь), разумеется, вместе с механизмом авторизации. Так же будет механизм выдачи книг, вывод информации библиотекарю о должниках с крайними датами, а также вывод информации у конкретных пользователей с информацией о том, какие книги и когда они должны вернуть.
Безусловно, это очень краткое описание функционала, в реальности, будет сделано гораздо больше. Более того, в рамках упражнений к этому Бонусу Вы создадите свой собственный сайт для своего портфолио.
- Вы будете понимать, как работает PHP, зачем нужен локальный сервер и как правильно его настраивать.
- Вы уже сможете создавать несложные скрипты на языке PHP.
- Вы научитесь не только использовать разобранные в курсе функции, но и научитесь пользоваться справочником, благодаря чему уже на данном этапе Вы сможете решать абсолютно любые небольшие задачи из самых разных областей.
- Вы сможете создавать самые разные формы и успешно обрабатывать их в соответствии с Вашими задачами.
- Вы сможете улучшить качество своего кода, правильно выбрасывая исключения, а не просто постоянно возвращая false, как это обычно делают новички.
- Вы научитесь делать механизм авторизации, создавать «корзину» на сайте того же Интернет-магазина, создавать маркетинговые инструменты и много чего ещё.
- Вам хватит уже для решения примерно 98% задач, которые встают перед программистами при работе с базой данных. А при решении оставшихся 2% редких задач Вам легко и быстро сможет помочь справочник, с которым Вы уже будете уметь работать после курса.
- Вы сможете использовать готовые наработки, которые уже протестированы и проверены огромным сообществом разработчиков, и применить их своём проекте, а не изобретать велосипед, как это часто делают начинающие программисты.