Большая часть ответа связана с несколькими вещами:
- Эволюция разработки программного обеспечения внутри корпораций.
- Эволюция разработчиков программного обеспечения по сравнению с веб-разработчиками.
- Восприятие в целом.
Во-первых, эволюция разработки программного обеспечения внутри корпораций.Много лет назад произошел сильный переход с Cobol и C на (что было тогда) новейший корпоративный стек Java / J2EE.Для многих средних и крупных компаний эта эволюция стала естественным переходом к архитектуре веб-приложений.Любое «серьезное» приложение должно было быть сделано в Java / J2EE.Конечно, многие магазины на базе Microsoft перешли на .NET (VB или более позднюю форму C #).Эти средние и крупные компании не слишком увлекались «легкой» веб-разработкой, особенно с использованием PHP, поскольку PHP рассматривался как быстрый способ собрать некоторую логику на простом веб-сайте.С тех пор, конечно, PHP превратился в жизнеспособный объектно-ориентированный корпоративный язык, но все же для многих средних и крупных корпораций он не столь жизнеспособен по сравнению с проверенными на предприятии архитектурами J2EE и .NET.
В 80-х и начале 90-х годов большинство людей, занимающихся программированием, были инженерами-программистами (выпускниками с дипломами CS), и они в основном перешли на более «жесткие» языки C / C ++, Java и, в конечном итоге, C #.Эти языки рассматривались как серьезные языки.В конце 90-х пришло множество веб-разработчиков, многие из которых пришли из HTML / дизайна, и они смогли понять концепции программирования и больше толкнуть языки сценариев, такие как PHP.Опять же, изначально PHP использовался многими из этих веб-разработчиков и считался незрелым языком (т. Е. Несерьезным).
Что касается восприятия, многие средние и крупные компании не будут трогать php из-за плохого восприятия безопасности или не «серьезного» языка и будут использовать его только для немного больших, чем статические веб-сайты.
Реальность языков программирования сегодня заключается в том, что для языка гораздо важнее язык, а для разработчика / инженера - их способность использовать правильные принципы и архитектуру программирования для создания масштабируемой и хорошо обслуживаемой системы.Например, я считаю, что rails (ruby on rails) предоставляет отличную модель для создания программного обеспечения, которой можно следовать на php и нескольких других языках.Многие следуют этому примеру.
Старый учитель фотографии однажды сказал мне, что он может взять любую дешевую камеру и при этом сделать лучшую фотографию, чем любой из его учеников, независимо от того, была ли у них лучшая камера на рынке.Я чувствую то же самое по поводу разработки программного обеспечения.Есть много программистов (многие из которых используют этот сайт), которые, вероятно, могут создавать выдающиеся программы (front-end, back-end и т. Д.), Используя любое количество языков программирования, включая PHP, благодаря своей способности следовать лучшим принципам построенияпрограммного обеспечения.Программисты склонны использовать инструмент, с которым они работают лучше всего (и наиболее эффективно).