Язык программирования PHP — тест 1
 (1) запустить программу установки, согласиться с лицензией, задать имя домена, имя сервера, e-mail администратора, выбрать тип установки, выбрать папку для установки сервера, запустить процесс инсталляции 
 (2) запустить программу установки, согласиться с лицензией, задать имя домена, имя сервера, выбрать тип установки, выбрать папку для установки сервера, запустить процесс инсталляции 
 (3) запустить программу установки 
Упражнение 3: Номер 1
Как встраивается PHP в HTML-код?
 (1) с помощью тегов ‘ ‘ 
 (2) с помощью тегов ‘ ‘ 
 (3) с помощью тегов ‘ ‘ 
Номер 2
Написать программу, которая выводит "жирными" буквами (тег ) строку "Добро пожаловать!" с использованием языка PHP.
 (1) Добро пожаловать!" ?>  
 (2) Добро пожаловать! "; ?>  
 (3) echo "Добро пожаловать!" ?>  
Номер 3
Чем отличается скрипт на языке PHP от скрипта на языке JavaScript?
 (1) ничем не отличаются 
 (2) способом встраивания в HTML-код 
 (3) скрипт на языке JavaScript обрабатывается клиентом, а PHP-скрипт – сервером 
Упражнение 4: Номер 1
Что такое корень сервера Apache и где он находится по умолчанию (для windows систем)?
 (1) корень сервера это директория, файлы которой обрабатываются сервером. Для windows систем он находится в "C:/Program Files/Apache Group/Apache/htdocs"  
 (2) это директория, в которой находятся все PHP скрипты сервера. Для windows систем он находится в "C:/Program Files/Apache Group/Apache/htdocs"  
 (3) это директория, в которой находятся все документы, которые должен обрабатывать сервер. Для windows систем он находится в "C:/Program Files/Apache Group/Apache/"  
Номер 2
Что такое пользовательская директория сервера и где она находится по умолчанию (для windows систем)?
 (1) это директория, выделенная пользователю для личных нужд, файлы которой обрабатываются сервером, если он получает запрос типа ~user . Находится в "C:/Program Files/Apache Group/Apache/users/"  
 (2) это директория, выделенная пользователю для личных нужд, файлы которой обрабатываются сервером. Находится в "C:/Program Files/Apache Group/Apache/htdocs/users/"  
 (3) это директория, выделенная пользователю для личных нужд, файлы которой никогда не обрабатываются сервером. Находится в "C:/Program Files/Apache Group/Apache/users/"  
 (4) это директория, выделенная пользователю для личных нужд, файлы которой обрабатываются сервером, если он получает запрос типа ~user . Находится в "C:/Program Files/Apache Group/Apache/htdocs/users/"  
Номер 3
Вы создали php файл вида:
PHP работает:Что нужно сделать, чтобы получить в браузере строку:
"PHP работает: привет"
 (1) сохранить файл в корневой директории сервера и отправить серверу запрос на этот файл 
 (2) сохранить файл в директории пользователя и отправить серверу запрос на этот файл 
 (3) ничего, поскольку такая строка не является результатом работы данного скрипта. 
Упражнение 5: Номер 1
Известно, что настройки PHP можно сохранять/изменять не только вphp.ini, но и в самих PHP скриптах, в файлах.htaccessи в файле настроек сервераhttpd.conf. Где можно установить значение опцииuser_dir?
 (1) в скрипте пользователя 
 (2) только в php.ini или httpd.conf  
 (3) в файле .htaccess  
Номер 3
Известно, что настройки PHP можно сохранять/изменять не только вphp.ini, но и в самих PHP скриптах, в файлах.htaccessи в файле настроек сервераhttpd.conf. Где можно установить значение опцииsession.auto_start?
Для чего может использоваться php
-
Указание конкретного файла для запуска.
$ php my_script.php $ php -f my_script.php
$ php -r 'print_r(get_defined_constants());'
Необходимо быть особо осторожным при использовании этого способа, т.к. может произойти подстановка переменных оболочки при использовании двойных кавычек.
Замечание: Внимательно прочтите пример: в нем нет открывающих и закрывающих тегов! Опция -r просто в них не нуждается, и их использование приведёт к ошибке разбора.
$ some_application | some_filter | php | sort -u > final_output.txt
Как и любое другое консольное приложение, бинарный файл PHP принимает аргументы, но PHP-скрипт также может получать аргументы. PHP не ограничивает количество аргументов, передаваемых в скрипт (оболочка консоли устанавливает некоторый порог количества символов, которые могут быть переданы; обычно этого лимита хватает). Переданные аргументы доступны в глобальном массиве $argv . Первый индекс (ноль) всегда содержит имя вызываемого скрипта из командной строки. Учтите, что если код вызывается на лету из командной строки с помощью опции -r, значением $argv[0] будет "Стандартный поток" ("Standard input code"); до PHP 7.2.0 это был дефис ( "-" ). То же самое верно и для кода, переданного через конвейер из STDIN .
Вторая зарегистрированная глобальная переменная - это $argc , содержащая количество элементов в массиве $argv (а не количество аргументов, переданных скрипту).
Если передаваемые аргументы не начинаются с символа - , то особых проблем быть не должно. Передаваемый в скрипт аргумент, который начинается с - создаст проблемы, т.к. PHP решит, что он сам должен его обработать. Для предотвращения подобного поведения используйте разделитель списка аргументов -- . После того, как этот разделитель будет проанализирован PHP, все последующие аргументы будут переданы в скрипт нетронутыми.
# Эта команда не запустит данный код, но покажет информацию об использовании PHP $ php -r 'var_dump($argv);' -h Usage: php [options] [-f] [args. ] [. ] # Эта команда передаст аргумент '-h' в скрипт, предотвратив показ справки PHP $ php -r 'var_dump($argv);' -- -h array(2) < [0]=>string(1) "-" [1]=> string(2) "-h" >
Однако, в Unix-системах есть ещё один способ использования PHP для консольных скриптов. Можно написать скрипт, первая строка которого будет начинаться с #!/usr/bin/php (или же другой корректный путь к бинарному файлу PHP CLI ). После этой строки можно поместить обычный PHP-код, заключённый в открывающие и закрывающие теги PHP. Как только будут установлены корректные атрибуты запуска на файл (например, chmod +x test), скрипт может быть запущен как обычный консольный или perl-скрипт:
Пример #1 Запуск PHP-скрипта как консольного
#!/usr/bin/php
var_dump ( $argv );
?>
Предполагая, что этот файл назван test и находится в текущей директории, можно сделать следующее:
$ chmod +x test $ ./test -h -- foo array(4) < [0]=>string(6) "./test" [1]=> string(2) "-h" [2]=> string(2) "--" [3]=> string(3) "foo" >
Как можно увидеть, в этом случае не нужно заботиться о передаче параметров, которые начинаются с - .
Исполняемый PHP-файл может использоваться для запуска PHP-скриптов независимо от веб-сервера. В случае работы в Unix-подобной системе, необходимо добавить в первую строку файла #! (называемый также "shebang") чтобы указать, какая из программ должна запускать скрипт. На Windows-платформах можно назначить обработчик php.exe для файлов с расширениями .php или создать пакетный (.bat) файл для запуска скриптов посредством PHP. Строка, добавляемая в начале скрипта для Unix-систем, не влияет на их работу в ОС Windows, таким образом можно создавать кроссплатформенные скрипты. Ниже приведён простой пример скрипта, выполняемого из командной строки:
Пример #2 Скрипт, предназначенный для запуска из командной строки (script.php)
if ( $argc != 2 || in_array ( $argv [ 1 ], array( '--help' , '-help' , '-h' , '-?' ))) ?>
Это консольный PHP-скрипт, принимающий один аргумент.
Любое слово, которое вы хотели бы
напечатать. Опции --help, -help, -h,
или -? покажут текущую справочную информацию.
В приведённом выше скрипте в первой строке содержится shebang, указывающий что этот файл должен запускаться PHP. Работа ведётся с CLI -версией, поэтому не будет выведено ни одного HTTP -заголовка.
Скрипт сначала проверяет наличие обязательного одного аргумента (в дополнение к имени скрипта, который также подсчитывается). Если их нет, или если переданный аргумент был --help, -help, -h или -?, выводится справочное сообщение с использованием $argv[0] , которое содержит имя выполняемого скрипта. В противном случае просто выводится полученный аргумент.
Для запуска приведённого примера в Unix-системе, нужно сделать его исполняемым и просто выполнить в консоли script.php echothis или script.php -h. В Windows-системе можно создать пакетный файл:
Пример #3 Пакетный файл для запуска PHP-скрипта из командной строки (script.bat)
@echo OFF "C:\php\php.exe" script.php %*
Предполагая, что вышеприведённый скрипт называется script.php , а полный путь к CLI php.exe находится в C:\php\php.exe , этот пакетный файл запустит его с переданными параметрами: script.bat echothis или script.bat -h.
Также можно ознакомиться с модулем Readline для получения дополнительных функций, которые можно использовать для улучшения консольного PHP-скрипта.
В Windows запуск PHP можно настроить без необходимости указывать C:\php\php.exe или расширение .php . Подробнее эта тема описана в разделе Запуск PHP из командной строки в Microsoft Windows.
Замечание:
В Windows рекомендуется запускать PHP под актуальной учётной записью пользователя. При работе в сетевой службе некоторые операции не будут выполнены, поскольку "сопоставление имён учётных записей и идентификаторов безопасности не выполнено".
User Contributed Notes 7 notes
10 years ago
On Linux, the shebang (#!) line is parsed by the kernel into at most two parts.
For example:
1: #!/usr/bin/php
2: #!/usr/bin/env php
3: #!/usr/bin/php -n
4: #!/usr/bin/php -ddisplay_errors=E_ALL
5: #!/usr/bin/php -n -ddisplay_errors=E_ALL
1. is the standard way to start a script. (compare "#!/bin/bash".)
2. uses "env" to find where PHP is installed: it might be elsewhere in the $PATH, such as /usr/local/bin.
3. if you don't need to use env, you can pass ONE parameter here. For example, to ignore the system's PHP.ini, and go with the defaults, use "-n". (See "man php".)
4. or, you can set exactly one configuration variable. I recommend this one, because display_errors actually takes effect if it is set here. Otherwise, the only place you can enable it is system-wide in php.ini. If you try to use ini_set() in your script itself, it's too late: if your script has a parse error, it will silently die.
5. This will not (as of 2013) work on Linux. It acts as if the whole string, "-n -ddisplay_errors=E_ALL" were a single argument. But in BSD, the shebang line can take more than 2 arguments, and so it may work as intended.
Summary: use (2) for maximum portability, and (4) for maximum debugging.
Зачем изучать PHP

PHP — язык бэкенд-разработки. С его помощью девелоперы создают динамические и интерактивные веб-сайты, генерируют HTML-страницы на стороне сервера. Для языка регулярно выходят обновления, проекты выбирают РHP для разработки, а программисты — для работы.
Рассказываем о PHP вместе с лекторами курса «PHP-разработчик с нуля до PRO» — Вячеславом Епанчей, Senior PHP Developer в Laba, и Юрием Пересыпко, PHP Developer в Rozetka.ua.
С чего началась история PHP
В 1995 году датский программист Расмус Лердорф создал приложение на Perl для анализа просмотров резюме на сайте. Приложение заинтересовало пользователей, автор дал ему название Personal Home Page Tools и выложил в свободный доступ. С этого момента началось развитие PHP: Лердорф дорабатывал язык, выпускал обновления, а позже подключил к работе других разработчиков, которые помогли ему усовершенствовать язык.
PHP — один из первых серверных языков, который дал возможность встроить синтаксис в HTML без необходимости обращаться к внешним файлам для получения данных.

«В основном PHP используют в вебе. Не только для сайтов-визиток, блогов и прочего (спасибо WordPress за такую славу), но и для крупных проектов. Также он применяется как язык backend-части для мобильных игр и приложений».
Сейчас PHP — проект открытого программного обеспечения. Последнее мажорное обновление, PHP 8, вышло 26 ноября 2020 года.
Популярность PHP
По данным StackOverFlow Developer Survey 2021, на PHP пишут почти 22% опрошенных.

Ресурс W3Techs в результатах своего исследования показал, что PHP используют почти 80% веб-сайтов из выборки, серверный язык которых было возможно определить. Среди них — сайты Википедии, Zoom, Facebook, Instagram, WordPress.
«Язык "умирает", когда на нем перестают писать. И хоть на PHP действительно сейчас не так много новых проектов, как раньше, но они есть, да и многие старые требуют поддержки. Я считаю, что PHP за последние годы возродился: вышли 7 и 8 версии, есть активное комьюнити, проходит много конференций».
PHP применяют в:
- CMS (Content Management System);
- разработке веб-приложений и сайтов;
- аналитике данных;
- обработке изображений;
- приложениях, основанных на графическом интерфейсе.
Как работает PHP
PHP — язык сценариев. Сценарий — это последовательность инструкций, которые должны выполняться в других программах или приложениях. Существует два типа языков сценариев:
- 1. Для серверной (внутренней) части.
- 2. Для клиентской (внешней).
Кроме того, PHP — еще и серверный язык, то есть сервер превращает инструкции в сценарии. Затем сервер предоставляет данные по запросу, направляет их и организует информацию в базе данных.
Сервер получает сценарий, обрабатывает запрос и отправляет вывод в формате HTML в браузер.
Среди возможностей PHP:
- обрабатывает динамический контент, базу данных, отслеживает сеансы сайта;
- устанавливает файлы cookie;
- получает доступ к переменной cookie;
- шифрует и валидирует данные;
- поддерживает несколько протоколов — HTTP, POP3, SNMP, LDAP, IMAP и другие;
- собирает данные, сохраняет их в базе данных и возвращает информацию пользователю (это применяется, например, в регистрационных формах).

курс по теме: PHP-РАЗРАБОТЧИК С НУЛЯ ДО PRO
ВЯЧЕСЛАВ ЕПАНЧА SENIOR PHP DEVELOPER В LABA С 6-ЛЕТНИМ ОПЫТОМ РАЗРАБОТКИ

Почему PHP критикуют
Падение популярности. Раньше у PHP было большое сообщество, которое активно поддерживало и развивало язык. С появлением новых языков программирования разработчики стали отдавать предпочтение им, а значит, PHP-специалистов становится все меньше и поддержка продуктов на PHP дорожает.
Ограничения в использовании языка для новых технологий. Например, PHP во многом уступает Python в сфере Data Science и Machine Learning. Фреймворков, библиотек и других инструментов для этих сфер практически нет, поскольку язык используется, в большей мере, для поддержания существующих продуктов, а не разработки новинок.

«Когда говорят, что язык “умирает”, то это скорее дань истории. До пятой версии PHP был языком разметки без элегантного OOП. С выходом версии 7 прирост производительности увеличился практически вдвое. Количество приложений на PHP неизменно растет. Последние лет пять язык входит в топ по количеству вакансий.
PHP развивается и начинает использоваться в сферах, которые несвойственны для него, — например, в машинном обучении. Очень радует, что разработчики языка постоянно ведут дискуссии и вносят улучшения: например, добавили типизацию и многопоточность. Я уверен, что в будущем язык будет так же востребован, а хейтеров будет все меньше».
Сильные стороны
Вопреки критике, язык имеет много преимуществ, которые компенсируют недостатки. У любой технологии есть минусы, но важно понимать, насколько они критичны и влияют на разработку в целом.
«Главная особенность PHP — это его простота. Он использует понятный синтаксис. Что важно для бизнеса, приложения на PHP очень быстро проходят путь от разработки до использования конечным юзером».
Также среди преимуществ:
Легкость освоения и использования. Синтаксис понятен и логичен, а командные функции легко понять, поскольку они сообщают разработчику, какую функцию выполняют. Выучить PHP может каждый.
Скорость загрузки. PHP ускоряет работу сайта, потому что сценарии на этом языке работают быстрее, чем, например, Python. Эта метрика важна для бизнеса, которому нужно удержать пользователя на сайте, чего не достичь, если страницы будут загружаться медленно.
Работа со многими базами данных. PHP совместим почти со всеми известными типами баз данных: например, с реляционными MySQL, mSQL, MS-SQL, SQLite, PostgreSQL. Кроме того, PHP можно использовать и с нереляционными базами данных вроде ElasticSearch, Redis, MongoDB.
Бесплатная работа с дополнительными инструментами. Использование PHP сокращает бюджет разработки, ведь это язык с открытым исходным кодом.
Множество инструментов, облегчающих разработку. Десятки фреймворков, самые известные из которых — Laravel и CodeIgniter, CMS вроде WordPress и Drupal — расширяют функциональность PHP.
Недорогой хостинг сайтов. Один из популярных стеков для работы PHP-сайта — LAMP: сервер Apache HTTP, система Linux, база данных — MySQL. Все они бесплатны.
Совместимость с HTML. PHP-скрипт не вмешивается в HTML-код, а завершает его и остается внутри границ, определенных тегами . Это работает и в обратном порядке: если страница написана на PHP, HTML-код получится интегрировать с помощью скрипта.
статьи по теме:
Как выбрать библиотеку для парсинга на PHP.
Стоит ли учить PHP в 2022 году
IT-индустрия – динамичная сфера, где новые технологии и решения могут кардинально изменять структуру рынка, что влияет на популярность того или иного стека. Также IT-рынок подвержен субъективному хайпу, когда на какие-то технологии и языки программирования обращают чрезмерное внимание без объективных предпосылок к этому. Все это по итогу влияет на востребованность специалистов по конкретному языку, работающих на конкретной технологии, на определенной зарплатной вилке.
В этой статье я поделюсь своим мнением насчет востребованности PHP, как современного языка программирования – актуален ли он на 2022 год или нет.

Что из себя представляет PHP
Обычно при обсуждении языка программирования приводят его сильные стороны, поэтому я буду следовать традиции и расскажу, почему PHP – это клевый и современный язык программирования.
Отличная производительность. Команда CORE PHP разработчиков выполнила гигантскую работу по оптимизации PHP и сделала его более производительным. Так, например, в своей статье Дмитрий Стогов приводит бенчмарк для версии PHP 7.0, где демонстрируется, что PHP обходит по производительности своих конкурентов, таких как Python и Ruby, и даже не сильно отстает от Java с выключенным JIT.

В версии PHP 8.0 завезли нативный JIT, что вывело его производительность на уровень лучших языков программирования. Поэтому я уже давно с недоумением смотрю на людей, которые говорят, что PHP медленный. Когда-то это было так, но сейчас он обходит своих конкурентов по производительности.

Эффективный синтаксис языка. Хотя PHP часто критикуют за то, что он сделан академически неправильно, у него есть одно безусловное преимущество: его универсальные конструкции достаточно эффективны, чтобы на них решать большую часть задач и не тратить время на выбор подходящей структуры данных. В итоге достигается большая скорость разработки, а это именно тот фактор, который решает, будет ли проект успешен или нет. Как бы программисты не рассуждали о том, что на определенном языке невозможно сделать хороший проект, а на другом можно, все же ключевой показатель – это Time-To-Market. И вот тут PHP – король!
Разумеется, в PHP работа со строками сделана не так круто, как в Python, а конструкция switch/case не насколько богата, как в том же Swift, но, во-первых, работа в эту сторону ведется, а во-вторых, возможностей современного PHP уже достаточно для решения большинства задач в элегантной манере. Как говорится, CodeWars вам в помощь!
При этом, если нужно оптимизировать какой-то участок кода, можно воспользоваться SPL, где уже сосредоточиться на том, что именно вы хотите сделать.
Современные фреймворки. Хаос в мире PHP, когда каждый школьник писал своей велосипед непонятного качества, подходит к концу. На рынке определился устойчивый стек технологий, знание которого ожидают от разработчика. В данном случае для разработки малых и средних проектов принято использовать Laravel, а если вам нужно сделать полноценную корпоративную систему, то лучше выбрать Symfony. Для работы с базой принято использовать Doctrine, который является фактически реализацией Hibernate из экосистемы Java. Это все – современные решения, которые впитывают в себя лучшие практики и активно развиваются большим комьюнити разработчиков. Работа с этими инструментами ведется удобно и эффективно.
Конечно, на рынке есть множество CMS систем, которые также эволюционируют и развиваются. И более того, как раз на поддержку таких систем можно найти первую работу и начать строить свою карьеру в IT. Но нужно понимать, что эпоха, когда у каждой компании есть сайт , заканчивается. Теперь принято использовать либо социальные сети, либо сайты построенные на конструкторах (wix/shopify/bigcommerce/tilda и так далее). Кстати, все эти конструкторы написаны на PHP и оцениваются в миллиарды долларов. Неплохо так для синего слоника!
Удобный туллинг. Разработка проекта – это не только написание бизнес логики, но и поддержание кода проекта в надлежащим виде. Для этого в мире PHP есть отличные инструменты: дебага (xdebug), оптимизация кода (blackFire),написание тестов (phpUnit), автоматический формат кода под стандарты (code_sniffer), а также статические анализаторы кода (PHPStan) и миграции на новые версии PHP и популярных фреймворков (rector).
Есть весь туллинг, который нужен современному разработчику, чтобы писать максимально надежный код надлежащего качества с минимальными тратами времени. Поэтому качество современных проектов на PHP становится гораздо выше, чем оно было раньше. И более того, я дам смелое замечание, что качество проектов на PHP становится выше, чем проектов на Python и Ruby в силу эволюции языка в условную Java с батарейками.
Направленная специализация. Все внимание CORE PHP разработчиков и PHP-комьюнити сосредоточено на том, чтобы сделать PHP максимально удобным и эффективным инструментом написания бекенда. Именно поэтому современные PHP-фреймворки и библиотеки оказываются лучше, чем аналоги на других языках программирования. Когда есть фокус и понятный вектор развития, можно сэкономить много времени и сил на второстепенные вещи.
Конечно, именно поэтому PHP нельзя назвать в полной мере языком общего назначения, ибо для других целей, кроме бека его редко используют. Но вы уже должны для себя решить: вам нужна призрачная универсальность или максимальная эффективность? Тем более специализация первична для разработчика, язык вторичен.
Учебные материалы и профессиональная литература. С релизом PHP 7.0 язык перешел в категорию клевых языков программирования, поэтому для него стали писать книги и записывать курсы настоящие профессионалы своего дела. Поэтому сейчас можно найти множество хороших онлайн-курсов на PHP, бесплатных туториалов на YouTube и книг по PHP с Laravel и Symfony.
Определенная часть материалов все еще доступна только на английском языке, но уже лишь вопрос времени, когда это все издадут на русском. Я сделал краткие обзоры современных книг по PHP, вы можете найти их в моем профиле.
Развитое сообщество разработчиков. PHP развивает и продвигает сплоченная группа людей, верящих в светлое будущее PHP и делающих каждый день его лучше и популярней. Значительная часть этих ребят – русскоязычные ребята, которые открыты к диалогу и обмену мнениями.
Более того, у PHP есть THE PHP FOUNDATION, который готов спонсировать работу талантливых разработчиков, уверенных в своих силах и желающих сделать PHP еще более лучшим языком, чем он есть сейчас.
Поэтому если есть желание сделать работу, от которой будет зависеть работа тысяч PHP-разработчиков – never give up on your dreams. Это возможно независимо от возраста!

Что по ситуации на рынке с PHP
После того, как мы определились с тем, что PHP – клевый и производительный язык программирования, поговорим о ситуации на рынке: на что может рассчитывать человек, который посвятит свое время работе на PHP. Ведь именно от того, на каких проектах будет работать человек, зависит его карьера и финансовые возможности.
Достаточно быстрый старт карьеры на PHP. Если мы посмотрим на Python или Ruby, то обнаружим, что начальные позиции требуют достаточно высокого уровня компетенции разработчиков. И причина заключается в том, что на Ruby и Python не пишут "стандартные" проекты. Каждый проект на Python (Ruby) представляет собой кастом. Без коммерческого опыта, если вы не являетесь выпускником топового вуза, попасть на такой проект достаточно сложно.
На PHP ситуация совершенно другая. Тут большое количество стандартных проектов, на которых можно начинать свою карьеру и набивать руку, печатая значок доллара в PhpStorm. Да, это будут не самые передовые и интересные проекты, но вы начнете свою карьеру, пока на другом стеке вам нужно было бы все еще бежать за поездом it-индустрии. А дальше нужно лишь добрать знания и опыт и можно переходить на кастом (Symfony или Laravel).
Гораздо лучше уже работать в индустрии, получать коммерческий опыт и учиться на живых проектах, чем сидеть дома и пытаться самостоятельно вытянуть себя на позицию крепкого джуна. Сделать это достаточно сложно, гораздо лучше развиваться в рабочем коллективе.
Огромное количество досягаемых компаний. Когда идет обсуждение вакансий, многие приводят цифры, что условно на Django 60к вакансий, а на Laravel только 11к. Но если посмотреть географию этих вакансий и прикинуть ваши шансы устроиться на них без серьезного опыта и хорошего английского языка, окажется, что в СНГ на Laravel вакансий больше,чем на Django. Ну и естественно ваши шансы также выше!
Вам же нужно устроиться на работу, начать получать опыт, зарабатывать деньги, а не считать потенциальные вакансии где-нибудь в Сиэтле, на которые вы сможете претендовать лет через 5 минимум. Поэтому с PHP все очень хорошо в плане вакансий, гораздо лучше, чем на многих других стеках.
Компании с хорошим продуктом. На PHP уже давно делают не только сайты визитки и форумы, но и качественные продукты, которыми каждый день пользуется огромная аудитория людей. Более того, эти компании представлены в различных сферах, поэтому PHP-разработчики могут поработать с разными продуктами.
Совсем недавно, я привел характеристики топовых компаний и предложил список компаний на PHP-стеке, которые считаю отличными. Ознакомиться со статьей вы можете по ссылке - "Tier-1 компании на рынке PHP в РФ".
Работа с возражениями по PHP
Выше мы обсудили, почему стоит выбрать PHP в качестве своего стека, и я привел аргументы в пользу старта карьеры на PHP. Теперь я постараюсь ответить на самые популярные возражения против того, чтобы учить PHP, которые приводят его оппоненты.
Низкие зарплаты на PHP. Да, действительно, разработчики на PHP в целом получают на 15-25% меньше, чем получают разработчики на Java, Go или тот же Swift. Но такая разница достигается за счет того, что на PHP много дешевых вакансий на поддержку не самых сложных CMS систем, а на том же Java топовые вакансии уходят куда-то в космос по деньгам и по сложности.
Если мы берем в целом middle разработчика на PHP (Symfony) и middle Java (Spring) разработчика, то разница в зарплате будет незначительной. При этом дорасти до middle уровня на PHP можно гораздо быстрее и приятнее, чем это делать на Java.
Поэтому если вы выбираете сложные и интересные проекты на PHP, а не ограничиваете себя поддержкой CMS систем, зарплаты на PHP показывают хороший уровень. Да и на CMS системах можно зарабатывать очень хорошие деньги, если работать на зарубежный рынок с условной Magento.
Если мы посмотрим обзор зарплат на хабре, то можно достаточно быстро заметить, что в общем-то различия между стеками не такие уж и большие. На php можно зарабатывать хорошие деньги в хорошей компании.

Разработчики на PHP уходят на GO. Да, действительно, в больших компаниях определенную часть логики монолитов на PHP переводят на GO. Поэтому некоторые PHP-разработчики учат GO, чтобы реализовать этот переход. Однако, это не говорит о том, что компании полностью отказываются от PHP, они лишь переносят определенную часть логики на более подходящую технологию для высоконагруженных микросервисов. Так, например, на PHP-конференции разработчики шутили, что хотя на GO получается хорошо, все же основную часть логики они пишут на PHP, так как это банально быстрее и эффективнее, чем делать на GO.
Поэтому нет никакого массового бегства PHP-разработчиков на GO. Есть разумное понимание, что нужно писать на PHP, а что писать на GO. От PHP никто не отказывается.
Плохие проекты на PHP. Да, действительно, на PHP, в силу наличия огромного числа различных CMS, есть множество проектов сомнительного качества. Но это не говорит о том, что все проекты на PHP плохие! Просто на том же Python или Java нет способа легко и быстро поднять несложные сайты, а на PHP эта возможность есть.
Если бы кто-то создал на Python удобную CMS систему (Django CMS не считаем, ибо она просто не может тягаться по удобству с CMS на PHP), то на Python также было много проектов низкого уровня.
Поэтому, если выбирать хорошие проекты на PHP, то сложность проекта и его качество будут сопоставимы с проектами на других языках.
PHP никому не нужен. Не нужно путать маркетинговый мусор и реальную ситуацию на рынке. То, что из каждого утюга говорят про Python и рекламируют его курсы, а про PHP никто ничего не говорит, никак не отражает реальную ситуацию на рынке востребованности той или иной технологии. Так, например, в своей статье "Сколько на самом деле вакансий на Python в веб-разработке (на примере Москвы)" я показал, что у нас чисто веб-вакансий на Symfony и Laravel больше, чем веб-вакансий на Python.
У PHP хорошая востребованность на рынке, можно достаточно легко найти хорошие вакансии. То, что язык не считается хайповым, не говорит о том, что он никому не нужен, он просто не хайповый и ничего больше.
Презрение к PHP в IT-индустрии. Мнение, что на PHP пишут плохие проекты плохие программисты появились в IT-индустрии тогда, когда действительно на PHP писалось много плохих проектов не самыми опытные программистами. И это происходило по той причине, что PHP был настолько прост и удобен, что многое прощал молодым разработчикам. И в этом в не было ничего плохого!
С тех пор прошло уже много времени, PHP развился в мощный и эффективный язык, который позволяет писать код надлежащего качества с правильной архитектурой. И это делается уже гораздо проще и лучше, чем на других стеках.
Однако, многие, кто продолжает критиковать PHP, застряли в прошлом и воспроизводят свой далекий опыт по работе с PHP. Это уже не имеет никакого отношения к реальности, но люди редко просто так отказываются от своих предубеждений. Поэтому просто нужно продолжать работать и своими проектами показывать, что PHP стал лучше!

PHP скоро умрет. Этому не суждено сбыться в ближайшем будущем. PHP занимает уникальную нишу на рынке, которую в свое время пытались отобрать Python, Ruby, Node.js и .Net Core, но все потерпели крах. Поэтому, пока язык развивается, пока на нем стартуют новые проекты, пока бизнес выбирает PHP, с ним все будет хорошо.
В своей статье "Потрясающее будущее PHP-стека для карьеры" я описал причину, по которым PHP – перспективный и актуальный стек. И у меня нет причин считать, что я ошибаюсь.
Почему не стоит учить PHP
После того, как я высказал свои аргументы против основных возражений против PHP, я хотел бы рассказать о реальных причинах, когда PHP не является оптимальным выбором. Нужно хорошо осознавать, что у всех технологий есть свои особенности и слабости.
Миграция в Северную Америку в топовую IT-компанию. PHP имеет хорошую популярность в СНГ и Европе. PHP также широко востребован для написания проектов средней сложности в США и Канаде. Также иногда в Северной Америке на нем пишут топовые проекты (тот же Facebook). Однако, если мы берем топовые компании Кремниевой Долины, то в большинстве из них не будет PHP. Это особенности рынка США и их нужно учитывать, если у вас была мечта переехать в США и устроиться в Microsoft или Google.
Исключительно backend. PHP имеет четкую специализацию по написанию backend для проектов разной сложности. Поэтому если вы хотите делать игры, писать мобильные приложения, заниматься computer vision, ML или какими-то другими сферами, то PHP вам не подойдет по той причине, что вы просто не сможете это сделать.
Максимальный доход, как разработчик. Если у вас есть цель получать максимальный доход, работая разработчиком (не свой бизнес, не свои проекты, не руководящая позиция, а вот именно как разработчик), то пока PHP не может предложить топовые зарплаты. На рынке существует множество вакансий с хорошим уровнем оплаты (максимально приближенным к топовым), но если вот прямо нужен топ, то это скорее Java, GO или Swift в определенных компаниях. Но тут уже каждый для себя выбирает, что подходит конкретно ему.
Стоит ли учить PHP: Итоги
PHP – это современный и эффективный язык программирования, который имеет уникальную нишу на рынке. Возможностей языка и экосистемы PHP достаточно для написания проектов самого разного уровня. На PHP много вакансий на рынке, и он востребован для написания новых проектов, что говорит о хороших перспективах для языка в будущем. PHP поддерживается большим числом людей, поэтому нет повода считать, что с ним будет что-то не так.
PHP – это отличный язык для старта своей карьеры в IT-индустрии и развития себя как востребованный и высокопрофессиональный разработчик. Праздник жизни будет продолжаться вместе с PHP, и 2022 год не станет исключением.
