- С чего начать учить PHP: особенности, синтаксис и идеи для первых проектов
- Введение
- Преимущества и особенности PHP
- Сообщество
- Низкий порог входа
- Обратная совместимость
- Синтаксис PHP
- Комментарии
- Переменные
- Другие элементы
- Фреймворки для PHP
- Что учить вместе с PHP
- Как выбрать редактор кода или среду для разработки на PHP
- Какие книги и сайты использовать для изучения PHP
- Где тренироваться
- Вместо заключения
- Как научится php программированию
- 1. Синтаксис
- XAMPP
- 14. Собираем страничку
- Литература
- Шпаргалки
- YouTube-каналы и курсы
- PHP в «Библиотеке Программиста»
- Итог
С чего начать учить PHP: особенности, синтаксис и идеи для первых проектов
В этой статье разберемся в перспективах и популярности PHP в 2022 году, рассмотрим плюсы и минусы языка, поговорим про платформы для тренировки навыков на практике и источниках идей для первых проектов.
Введение
PHP — самый популярный язык для веб-разработки. Почти 80% всех сайтов в интернете написаны на этом языке.
Поскольку язык очень широко распространен, работу на нем можно найти практически в любой сфере. Особенно он актуален в компаниях на этапе создания mvp (минимально жизнеспособного продукта) или среди разработчиков CRM-систем.
Код на PHP выглядит, например, так:
function isCorrectPassword($password) $length = strlen($password); return $length > 8 && $length 20; > isCorrectPassword('qwerty'); // false isCorrectPassword('qwerty1234'); // true isCorrectPassword('zxcvbnmasdfghjkqwertyui'); // false
Преимущества и особенности PHP
Сообщество
Сообщество помогает с проблемами, которые не получается решить чтением документации и гуглом. У PHP оно большое и дружелюбное к новичкам — причем как в англоязычном мире, так и в России.
Крупнейший глобальный форум по языку программирования — PHP Community, в России — PHP Club. Существует несколько десятков крупных телеграм-чатов для разработчиков разного уровня (самые популярные: раз, два, три), а также отдельные чаты для джунов, где можно задавать любые вопросы и не бояться осуждения.
Низкий порог входа
Это и плюс, и минус языка. С одной стороны, начать программировать на PHP относительно просто, с другой — некоторые разработчики не выходят за рамки с CMS, работают на уровне конструкторов и редко касаются кода. От этого страдает сообщество, а поиск PHP-разработчика, который понимает теорию и умеет кодить, превращается в действительно сложную задачу.
Составьте свое первое резюме: Вы можете бесплатно опубликовать свое резюме в нашем сервисе «Хекслет-CV» и получить советы по его улучшению от разработчиков и HR-менеджеров
Обратная совместимость
Обратная совместимость — термин, которым обозначают легкость обновления кода под новую версию. Разработчики PHP стараются поддерживать ее на высоком уровне: к моменту выхода восьмой версии обратная совместимость у языка почти полная (за исключением некоторых моментов).
Это и преимущество, и недостаток языка программирования: с одной стороны, разработчики могут не бояться переезда и всегда использовать новую версию. С другой — в PHP до сих пор остались некоторые функции стандартных библиотек, которые работают странно и несогласованно. Яркий пример — функции array map и array reduce, у которых положение входного массива и функции отличаются. Это не очевидно и к этому надо привыкать.
Синтаксис PHP
Начнем с азов: строку Hello, world! можно вывести на экран двумя способами.
echo 'Hello, World!'; // => Hello, World!
print_r('Hello, World!'); // => Hello, World!
Любой код на PHP должен быть обёрнут в конструкцию , где — закрывающий. Это особенность языка программирования.
Комментарии
Комментарии в коде бывают двух видов: однострочные (//) и многострочные (/* */).
/* * The night is dark and * full of terrors. */ print_r('I am the King');
Переменные
Перед объявлением переменной не нужно указывать ее тип — достаточно поставить значок $. Кроме того, одно значение можно присвоить нескольким переменным.
Другие элементы
Фреймворки для PHP
У PHP множество фреймворков, но в этой статье кратко рассмотрим три самых популярных: Laravel, Yii и Symfony.
- Laravel — фреймворк с самым низким порогом входа, с него можно начинать знакомство с возможностями языка. Если возникнут трудности, по фреймворку есть несколько чатов: для базовых вопросов и для кейсов посложнее.
- Yii — еще один фреймворк с низким порогом входа: для начала работы с ним достаточно знать PHP на уровне новичка. Русскоязычные чаты разбиты по версиям: первая, вторая и третья.
- Symfony — самая масштабная библиотека-фреймворк на PHP. Возможностей больше, но и порог входа выше.
Что учить вместе с PHP
PHP — язык для веб-разработки, поэтому знать HTML и CSS хотя бы на базовом уровне нужно обязательно. То же касается протокола HTTP на уровне понимания процесса работы запросов клиент-сервер.
Остальные технологии можно разделить на две категории:
- Полезно знать. Git (нужен всем программистам, которые собираются заниматься коммерческой разработкой), SQL (подавляющее число веб-приложений имеют базу данных), Nginx и Apache (для настройки окружения);
- Дополнительные навыки. Linux/Unix, JavaScript, Docker.
Как выбрать редактор кода или среду для разработки на PHP
На первом этапе сложная среда разработки вроде PHPStorm не нужна — новичку IDE покажется монстром с множеством функций, который к тому же медленно открывается.
Sublime и VSCode, напротив, быстро открываются, настраиваются и позволяют относительно просто подключать дополнительные фичи. Например, инструменты для взаимодействия с базой данных или с кэшем.
Когда понадобятся инструменты для работы с Git, шаблонизаторами, окружением, тестами и другими технологиями, можно переходить на IDE — например, на PHPStorm, Netbeans и Aptana Studio.
Какие книги и сайты использовать для изучения PHP
Выше уже говорилось, что при изучении PHP важно уделять много внимания теории, а не только учиться писать код. Этот язык программирования дает очень размытое представление о том, как его компоненты работают на базовом уровне. Понимание теории поможет освоить и PHP, и любой другой язык программирования.
На русском языке есть несколько подходящих книг:
- «Грокаем алгоритмы. Иллюстрированное пособие для программистов и любопытствующих», Адитья Бхаргава;
- «Код: тайный язык информатики», Чарльз Петцольд;
- «Чистый код», «Идеальный программист», «Чистая архитектура», Роберт Мартин.
Важно уточнить, что читать эти книги лучше через полгода после начала обучения. С одной стороны, за это время появится представление о PHP, с другой — желание применить новые знания и переписать весь проект возникнет не сразу.
Если говорить о сайтах, то на PHP: The Right Way собрана обширная база материалов для разработчиков разных уровней, а CodeBasics подходит для изучения синтаксиса.
Где тренироваться
Соревнования помогают развивать навыки кодирования и учат видеть неочевидные пути решения задач. Вот три самых популярных платформы:
- Codewars. Платформа с соревнованиями для разработчиков разных уровней подготовки. Все решения участников публикуются в открытом доступе после завершения раунда. Это важный элемент обучения: можно решать задачу несколько дней в 100 строк кода, а можно сделать то же самое за несколько часов и пять строк. Например, с помощью готовых функций.
- Hackerrank. Кроме соревнований на платформе есть раздел подготовки к интервью с самыми популярными и актуальными вопросами. Например, есть блоки по массивам, объектам и другим сущностям — с объяснением, как это работает, и с задачами на закрепление знаний.
- Leetcode. Раздел Learn с теорией и практикой для ее закрепления помогает понять логику программистских задач и научиться решать их практически с нуля.
Вместо заключения
Главный итог обучения — смена профессии. Вот несколько советов, с чего начать переход от задач и тренировки к реальным проектам в портфолио.
Лучшее, с чего можно начать — найти в своей жизни момент, который можно автоматизировать. Например, если вы хотите выработать привычку читать каждый день по 10 страниц. Можно сделать приложение для учета количества страниц книги, прочитанной в определенный день. Утилитарность приложения почти гарантирует, что проект будет доведен до конца.
Можно попробовать реализовать функции, которые встречаются в реальных проектах — например, форму для сайта. В ней можно сделать HTML и CSS, добавить JS и прописать логику. Например, реализовать сохранение в базу данных или отправлять сообщение на почту. На таком проекте можно учиться разделять логику. Например, сделать так, чтобы один отвечал за отображение, другой — за саму форму, третий — за сохранение данных в базе.
Никогда не останавливайтесь: В программировании говорят, что нужно постоянно учиться даже для того, чтобы просто находиться на месте. Развивайтесь с нами — на Хекслете есть сотни курсов по разработке на разных языках и технологиях
Как научится php программированию
1. Синтаксис
Код в PHP заключается в открывающий теги. Согласно стандарту кодирования PSR-12, закрывающий тег должен быть опущен в файлах, содержащих только код PHP . В конце строки ставят разделитель строк – точку с запятой ; . Если забыть поставить разделитель, то следующая строка кода соединится с предыдущей и интерпретатор PHP выдаст ошибку.
Выведем на экран строку Hello World (заключена в кавычки) с помощью команды echo :
Оператор if выполняет код, если выполняется условие. В противном случае выполняется код после else, который переводится, как «иначе», «в другом случае».
Оператор while выполняет код до тех пор, пока значение условия не станет ложным.
Когда нам известно количество итераций, вместо цикла while лучше использовать цикл for .
Массивы – упорядоченная коллекция элементов с доступом по индексу или ключу. Индексный массив создается двумя способами:
Если мы получили ошибку 404, значит сервер запущен.
XAMPP
Скачаем и установим XAMPP . В папке C:\xampp\htdocs\ создадим папку нашей странички page . Запустим веб-сервер Apache, кликнув по кнопке Start . Узнаем версию PHP, введя в консоли (Shell) команду php -v .
Проверим, запущен ли сервер, перейдя по адресу http://localhost/ . Если появилось приветственное сообщение, значит сервер запущен.
14. Собираем страничку
Теперь создадим несколько PHP-файлов, из которых соберем страничку. Перейдем в папку page и создадим четыре файла: index.php , header.php , body.php , footer.php .
Структура простого HTML-документа выглядит следующим образом:
Литература
- Робин Никсон. Создаем динамические веб-сайты с помощью PHP, MySQL, JavaScript, CSS и HTML5;
- Котеров, Симдянов. PHP 7;
- Веллинг, Томсон. Разработка веб-приложений с помощью PHP и MySQL;
Шпаргалки
YouTube-каналы и курсы
Бесплатные курсы на русском языке:
- Основы php с нуля. Новейший курс 2020 – двадцать четыре урока от основ до регулярных выражений и функций;
- Базовый курс по PHP 7 – узнаете про базовые понятия, GET-параметры, методы, функции и ООП;
- Учим PHP за 1 Час – основы за полтора часа;
- Изучение PHP для начинающих – научитесь работать с массивами, подключать файлы, обрабатывать формы, работать с куки и базой данных MySQL;
- Уроки PHP 7 – много уроков по ООП;
- PHP для начинающих – курс на Stepik для начинающих разработчиков, не требует специальных знаний;
- PHP – первое знакомство – азы программирования на PHP (Stepik).
PHP в «Библиотеке Программиста»
- подписывайтесь на тег PHP , чтобы получать уведомления о новых статьях;
- телеграм-канал «Библиотека пхпшника»;
- книги по программированию в нашем телеграм-канале «Книги для программистов».
Итог
- вы познакомились с синтаксисом PHP и типами данных;
- узнали, как работают условные операторы и циклы;
- запустили веб-сервер в Ubuntu и Windows;
- собрали страничку HTML из файлов PHP.