PHP продолжает оставаться одним из самых популярных языков для веб-разработки благодаря своей простоте и широким возможностям. PHP сохраняет высокие позицию в веб-разработке, особенно при создании динамических веб-сайтов и приложений. С появлением новых версий и инструментов, PHP останется актуальным и в 2024 году, продолжая занимать свою нишу. Сегодня существует множество ресурсов, которые помогут вам начать изучение PHP с нуля и быстро продвинуться до уровня профессионала. В этой статье мы рассмотрим лучшие вводные курсы и книги, которые помогут вам освоить PHP.
Не будем долго тянуть и рассказывать, что такое PHP, перейдем к списку курсов)
Начнем с базы.
? Документация
Руководство по PHP. ПО классике, нет ничего лучше, чем подробная документация. Здесь есть все, что поможет Вам в изучении языка и что приятнее всего, на русском языке.
? Ссылка – https://www.php.net/manual/ru/index.php
? PHP. Дорожная карта
Огромная дорожная карта PHP разработчика. Здесь есть все, что нужно знать, чтобы стать backend-разработчиком, от самых азов до продвинутых тем.
? Ссылка на Roadmap – https://github.com/MaksimDzhangirov/PHP-roadmap
? PHP BOOK
Целый учебник PHP, который погрузит вас во все нужные темы, начиная от знакомства с языком до объектов и использования библиотек. Материал учебника регулярно обновляется.
? Ссылка на учебник – https://github.com/it-for-free/php-book
Вот список лучших бесплатных курсов для изучения PHP на Stepik:
? PHP – первое знакомство – Этот курс покрывает базовые концепции и синтаксис PHP, идеально подходит для новичков. Вас ждут:
44 урока
110 тестов
59 интерактивных задач
? Ссылка на курс – https://stepik.org/course/87314/promo
PHP Академия – полезный PHP канал, где публикуются уроки и советы, библиотеки примеры с кодом, свежие новости, популярный канал для разработчиков.
? PHP для начинающих
На этом курсе вы изучите основы языка программирования PHP. PHP используется для разработки веб-приложений. На сегодняшний день PHP лидирует в сфере веб-технологий, более 80% сайтов написаны на PHP.
Мы начнем с основ, включая синтаксис PHP и объявление переменных. Курс переходит к работе с арифметическими операторами, условными операторами, циклами, функциями и массивами.
В курс входят:
10 уроков
13 тестов
42 интерактивные задачи
? Ссылка на курс – https://stepik.org/course/62383/promo
? Создание MVC фреймворка PHP
Курс представляет из себя серию лекций с практическими заданиями, которые позволят освоить основы ООП PHP и написать свой фреймворк.
? Ссылка на курс – https://stepik.org/course/64206/
Создание веб-приложений на PHP – Курс фокусируется на разработке полноценных веб-приложений с использованием PHP.
? Курс PHP: онлайн обучение с нуля, бесплатно
Хороший курс с парктикой для новичков от Сode-basics. Этот курс посвящен азам написания программ на PHP. Он готовит плацдарм для написания осмысленных программ.
Внутри 18 часов уроков и 75 уроков с практикой в браузере.
? Ссылка на курс – https://code-basics.com/ru/languages/php
Вот список лучших репозиториев GitHub с курсами и книгами для изучения PHP:
? Awesome PHP – Это репозиторий, содержащий обширный список ресурсов для изучения PHP, включая книги, статьи, курсы и инструменты.
? Ссылка на репозиторий – https://github.com/ziadoz/awesome-php
? PHP The Right Way – Руководство, которое охватывает лучшие практики разработки на PHP, включая книги и обучающие материалы.
? Ссылка на репозиторий – https://github.com/ziadoz/awesome-php
? Learn modern PHP – Коллекция полезных ресурсов и учебных материалов для изучения PHP, включая бесплатные книги и курсы.
? Ссылка на репозиторий – https://github.com/odan/learn-php
? PHP группа
Одна из самых крупных и интересных групп в вк, посвященная PHP.
? Ссылка - https://vk.com/phpyii
? Free-programming-books – Крутейшая подборка бесплатных книг по программированию (не только по PHP): — Подборка крутых бесплатных книг по программированию, в том числе и на русском.
? Ссылка на репозиторий – https://github.com/EbookFoundation/free-programming-books/tree/main
? PHP course – Репозиторий с учебной программой по PHP, включая книги и курсы для разных уровней подготовки.
? Ссылка на репозиторий – https://github.com/jagaad-academy/php-course
Эти репозитории помогут вам найти полезные ресурсы для изучения PHP и улучшения своих навыков программирования.
Полезные Блоги
? Блог Никиты Попова – отличный блог о внутреннем устройстве языка, много крутых и полезных заметок для PHP разработчиков.
? Блог – https://www.npopov.com/
? PHP The Right Way — полезное руководство для быстрого погружение в работу на PHP, здесь есть стандарты по написания кода и множество полезных гайдов.
? Ссылка – https://phptherightway.com/
? Видео курс PHP WebDev с нуля от Алекса Лущенко – На ютубе можно найти множество достойных PHP курсов, в нем упор сделан на новичков, много внимания уделено функциям, процедурам и массивам. Более 150 задач в этом курсе для прокачки навыков с обратной связью и разбором ошибок.
? Ссылка на курс – https://www.youtube.com/playlist?list=PLM7wFzahDYnH54EJiByIfqFq1RkN-xDnQ
Заключение
Изучение PHP в 2024 году открывает множество возможностей для тех, кто хочет стать профессиональным веб-разработчиком. Бесплатные курсы и книги, рассмотренные в этой статье, предоставляют отличные ресурсы для освоения PHP с нуля.
Курсы на таких платформах, как Stepik, Coursera и Hexlet, предлагают структурированные и практические занятия, которые помогут вам не только понять основы языка, но и научиться применять их на практике. Эти курсы охватывают широкий спектр тем, от базовых концепций до продвинутых техник работы с базами данных и безопасностью.
Книги, такие как “PHP and MySQL Web Development” и “Learning PHP, MySQL & JavaScript”, предоставляют глубокое понимание языка и помогают закрепить знания через примеры и практические упражнения.
Инвестируя время в изучение PHP с помощью этих ресурсов, вы получите крепкую основу для дальнейшего профессионального роста в веб-разработке. Выбирайте подходящие курсы и книги, и начните свой путь к мастерству в PHP уже сегодня!
Комментарии (27)
arheops
20.07.2024 10:34PHP сдал по всем наличным индексам позиции аж до уровня кобола.
Не стоит учить php первым языков в 2024м, определенно.
FanatPHP
20.07.2024 10:34Не по "всем", а только по TIOBE. То есть рейтингу идиотов, которые идут искать в гугл буквально фразу "язык programming". И естественно питон там с огромным отрывом впереди планеты всей. А, скажем, SQL и Яваскрипт в той же категории "рядом с коболом", единицы процентов.
arheops
20.07.2024 10:34А по какому он не упал, может вы знаете?По TIOBE он вообще на 10+ пунктов упал.
FanatPHP
20.07.2024 10:34+1Да, с 2 процентов до одного.
Если вас интересуют другие рейтинги, потрудитесь поискать самостоятельно.
arheops
20.07.2024 10:34https://pypl.github.io/PYPL.html
-1
https://spectrum.ieee.org/the-top-programming-languages-2023
11% от питона, четверть от JS
PYPL -> 4% в 2024 с 20 в 2008м.
тут есть PYPL по странам - https://statisticstimes.com/tech/top-computer-languages.php
Тут последний(ну хотя бы есть)
https://www.geeksforgeeks.org/best-programming-languages/
https://www.linkedin.com/posts/codeup_10-coding-languages-that-dominate-job-market-activity-7117567822079172608-QDQg/?trk=public_profile_like_view
Тут его уже нету.
Это просто первые страницы из гугла.
Stack overflow - рядом с повершел(но это 2023)
https://survey.stackoverflow.co/2023/#section-admired-and-desired-programming-scripting-and-markup-languages
Офигенный выбор для первого языка.
Лично у меня на фрилансе в районе 2012го на PHP был чуть ли не каждый первый проект, в прошлом году - три, в этом году - один и ни одного за два года начатого с нуля. В среднем у меня гдето 50 фриланс проектов в год.
Единственный индекс где он в 4ке - https://redmonk.com/sogrady/2024/03/08/language-rankings-1-24/
Но это индекс легаси кода по большому счету.
FanatPHP
20.07.2024 10:34Определяемся, про что конкретно хотим прокудахтать.
"Сдал позиции" - однозначно. Если ты занимаешь 90% в своей нише, то дальше только вниз.
"Аж до уровня кобола" - заведомый идиотизм.
"Не годится как первый язык" - depends. Если пойти туда не знаю куда, учить фиг знает зачем - то однозначно питон, это новый бейсик. Если же войти вайти, то питон сразу нафиг с пляжа, таких же энтузиастов стада бегают, а вакансий с гулькин нос. Айти для войти это веб, а тут фактически только два варианта, пых и яваскрипт. Вот между ними можно выбирать, исходя из эстетических предпочтений.
arheops
20.07.2024 10:34Так есть же рейтинг по вакансиям. И там питон как раз вверху, а не php
Я понимаю, что вы адепт PHP
Но обьективно учить сейчаc php - тупик. Как бы вам он не нравился.
Даже классический С сейчас имеет больше переспектив.
Я писал на PHP еще в 2002. Сейчас - ну в чате США ни один специалист по PHP в этом году работу не нашел. Вообще ни один. По крайней мере не отписался ни один.
FanatPHP
20.07.2024 10:34Ну кстати да, как ни странно, питон на хаха для Москвы действительно опережает пых процентов на 20. Еще год назад было наоборот. При этом яваскрипт почему-то в полтора раза меньше пыха.
Мои предпочтения здесь не при чем, я просто не люблю заведомый идиотизм и кликушество. При сохранении нынешних тенденций на уровень кобола пхп откатится лет через 10.
arheops
20.07.2024 10:34Два года назад был смысл искать работу на php.
Год назад уже не особо.
Сейчас определенно нет.
Если бы обьектные моды для PHP вышли на 5 лет раньше - ситация, вероятно, была бы другой. А так имеем, что имеем.
FanatPHP
20.07.2024 10:34Вот опять вы кликушествуете. По вашей же методе, по вакансиям в Москве пых на втором месте, опережая и шарпы и яваскрипт. Тогда уж это про них надо говорить "определённо нет".
И что такое "объектные моды"?
nkl
20.07.2024 10:34+1Ой да не рассказывайте. 1800+ вакансий на мое резюме в hh с зп от 200 т.р. говорят об обратном. Говорите у вас 50+ проектов на фрилансе в год? Это что же за проекты такие? Светофор на ардуине? REST API калькулятора на Go? Кнопочку в зеленый перекрасить в тильдо-шаблоне? Как можно называть проектом что-то, что делается менее чем за неделю? Я на PHP работаю над проектами, где только выявление требований и аналитика сайд-эффектов новой фичи может занимать неделю, а то и месяц. Теперь ясно понимаю ваш кругозор.
FanatPHP
20.07.2024 10:34До списка лучших этой подборке как до луны. Очередной пост из серии "Накидаю десяток первых попавшихся ссылок и засуну между ними свой телеграм канал".
A3a3eJLJLo
20.07.2024 10:34Можете предложить свой список, хотя бы из трёх пунктов?)
FanatPHP
20.07.2024 10:34Зачем? Я же не продаю телеграм каналы. Плюс я не занимаюсь подбором курсов. Это довольно трудоемкая работа (если делать нормально, а не гнать фуфло для массовки). То есть для каждого должно быть написано, почему выбран именно он, и чем он лучше десятка таких же от конкурентов.
Если говорить про англоязычные источники, то курс от Laracasts на голову выше всего, что здесь надергано (и особенно phptherightway, который не учебник вообще ни разу, а просто набор рекомендаций надерганных в случайном порядке, и который скорее полезен как раз тем, кто вот учил говнокодить на 5.2 и хочет посмотреть, как правильно).
Русскоязычные надо искать. И проверять. Как например автор должен был проверить ссылку на "бесплатный учебник", который написан как раз на материале 5.2 (нет именованных параметров, нет распаковки переменных, нет замыканий, и т.д.) и к тому же написана идиотом: записав в переменную имя функции он заявляет, что записал саму функцию. А обработкой ошибок называет дебильное or die().
Из того что я лично смотрел и могу рекомендовать - это книга Джона Дакетта. Стоит не таких уж больших денег и плюс давно спирачена и лежит по торрентам.
Sollita
20.07.2024 10:34Поддерживаю: Дакетт, Никсон и Каллум Хопкинс.
FanatPHP
20.07.2024 10:34Извините, если вы ставите на одну доску Дакетта и Никсона, то вы либо их не читали, либо вообще ничего не поняли у Дакетта. Никсон мало того что написан глубоко в нулевые (даже тогда можно было писать нормально), но его подход олицетворяет всё то плохое, от которого РНР активно избавляется последние 10 лет.
У Дакетта красной нитью проходит мысль, что данные надо обрабатывать перед использованием. И слово не расходится с кодом. А у Никсона, который отчаянно делал фейслифтинг своим древним писаниям, получается шизофрения: сначала он к входящим данным применяет идиотскую функцию
function sanitizeString($var) { if (get_magic_quotes_gpc()) $var = stripslashes($var); $var = strip_tags($var); $var = htmlentities($var); return $var; }
а потом при выводе опять вызывает htmlspecialchars.
А в финальном примере и вовсе получает франкенштейна, при взгляде на которого станешь заикой
function sanitizeString($var) { global $pdo; $var = strip_tags($var); $var = htmlentities($var); if (get_magic_quotes_gpc()) $var = stripslashes($var); $result = $pdo->quote($var); // This adds single quotes return str_replace("'", "", $result); // So now remove them }
Каллум от Никсона тоже недалеко ушёл.
gun_dose
20.07.2024 10:34Я начинал писать на php ещё в 2012. Спросил на каком-то форуме, как выучить php, а мне сказали, что там ничего не надо учить, просто берёшь и пишешь. Ну я так и сделал - получилось. Потом правда пришлось отдельно подтянуть ООП, но благо в php реализация ООП мало отличается от общепринятой. К слову, именно поэтому php в качестве первого языка значительно лучше, чем javascript, потому что если знаешь php, то легко сможешь разобраться и с Java, Kotlin, Си и прочими.
rqdkmndh
А если не с нуля? Я забросил PHP примерно когда вышла версия 5.2. Тяжело будет вернуться на 7 или 8 версию?
InfluxOW
Проще начать учить заново, т.к. к 8 версии эволюционировал не только сам язык, но и его экосистема. Если ты на 8.3 пишешь так же, как на 5.2, то это уже моветон.
TooBigBigs
Странно, я 16 лет пишу + / - одинаково и практически не замечаю, что версии меняются. Наверное, я пишу дико примитивный, простой, прямолинейный код, который, однако, работает. Честно, даже никогда не читал и не знаю, что нового в PHP 7 или 8, и чем он отличается от версии 5, и куда, кстати, девалась 6-ая версия. И уж тем более даже не задумывался о том, моветон мой код или не моветон.
Ещё более странно, как можно начать "учить заново" версию 8.3. Мне кажется, это также странно, как начать учиться заново ездить на велосипеде, если у него появился задний амортизатор.
У каждого свой опыт, вот я к чему.
FanatPHP
Судя по вашему профилю, вы не пишете на РНР в общепринятом смысле, а используете время от времени для решения каких-то мелких сервисных задач и/или поддерживаете сайт, написанный в глубокой древности . Это абсолютно нормально, но просто надо четче выражать свои мысли. И оценивать контекст заданного вопроса. Человек собирается учить явно не для того, чтобы склепать скриптик по поиску картинок раз в год.
TooBigBigs
В том то и дело, что это не совсем так. Серверы, которые я создал и поддерживаю уже много лет, круглосуточно выполняют работу, плодами которой опосредованно пользуется каждый россиянин в реальной жизни. Да, я действительно пишу далеко не постоянно, скорее наскоками; но общий объём сервисов, которые работают на моем коде прямо сейчас, оказывает достаточно существенное влияние на экономику, чтобы позволить мне заниматься тем, что написано в профиле.
Таким образом, можно создавать полезные вещи влияющие на реальный мир, используя лишь около 5% возможностей языка и совершенно не обязательно знать его настолько глубоко, чтобы вообще замечать разницу между версиями.
FanatPHP
В том-то и дело что все так и есть. Вы не *пишете* на РНР. Для человека же, который хочет именно писать, то есть делать это основную часть времени, знание языка и сопутствующих технологий, а не 5% от этого скорее всего обязательно.
А то что можно подсесть на хайп и написать сайт, который выводит hello world и он будет довольно популярен в своей нише - с этим никто не спорит. Просто вопрос был не об этом.
bondeg
Если ты принимаешь и понимаешь что такое строгая типизация, то в целом легко. Но надо будет естественно подтянуться.)
FanatPHP
И легко и сложно.
Легко потому, что сам язык не поменялся, основные конструкции всё те же.
Сложно потому, что поменялся подход. Вместо "фигак-фигак и в продакшен" на РНР теперь пишут в стиле "а потом ведь это всё десять лет поддерживать надо будет". Многим такое изменение не по зубам, их прямо корёжит от необходимости думать хотя бы на один ход вперёд.
Плюс при мало-мальски промышленном производстве сейчас на чистом РНР не пишут, а используют фреймворки.
С фреймворками тоже и легко и сложно.
Легко потому, что они берут на себя львиную долю рутинной работы.
Сложно потому, что фреймворк это отдельный язык, и его надо учить.
Исключением является Уордпресс. Вот он так и остался на уровне РНР 5.2
rqdkmndh
Примерно, такое же ощущение сложилось и у меня.
powernic
Хочу сказать по поводу вордпреса, так как много ресурсов на нем мне приходиться поддерживать. Само ядро действительно осталось на уровне PHP 5.2, но ничего не мешает использовать его с современным PHP 8.3. Например, можно весь проект на wordpress и все нужные плагины поднять и управлять через composer (wpackagist) также можно прикрутить к нему symfony компоненты, например использовать тот же dependency injection и разрабатывать все нужные плагины уже как в полноценном symfony фреймворке через папочку src. Можно использовать phpunit. Надеюсь в WordPress комьюнити смогут ядро доработать таким образом, чтобы оно из коробки могло все это делать