PHP большой. Тролли могут сколько угодно заявлять о его «смерти» до тех пор, пока рак на горе не свистнет, но факт в том, что в Интернет работает на PHP. Доказательства ошеломляющие. Далее следует слабо организованная коллекция именно этих доказательств.
Статистика
PHP как язык программирования по выбору
Из анализа языка, проведенного W3 Techs на 10 миллионах лучших веб-сайтов по всему миру:
PHP 77.2%.
ASP 6.9%.
Ruby 5.4%.
Управление контентом
Большинство общедоступных сайтов построены на PHP через CMS. По доле рынка 8 из 12 крупнейших программ CMS написаны на PHP. Ниже приведены данные об использовании CMS компанией W3 Techs, где каждый процент представляет 100 000 из 10 миллионов лучших сайтов. Существует аналогичный отчет CMS от BuildingWith, в котором анализируется более широкий набор из 78 миллионов веб-сайтов.
[PHP] WordPress ecosystem (63%)
[Ruby] Shopify
Wix
Squarespace
[PHP] Joomla ecosystem (3%)
[PHP] Drupal ecosystem (2%)
[PHP] Adobe Magento (2%)
[PHP] PrestaShop (1%)
[Python] Google Blogger
[PHP] Bitrix (1%)
[PHP] OpenCart (1%)
[PHP] TYPO3 (1%)
Электронная коммерция
Из отчета BuildingWith об интернет-магазинах по состоянию на август 2023 г.:
WooCommerce для WordPress (24% мировой доли рынка)
Adobe Magento (7% мировой доли рынка)
OpenCart (2% доля мирового рынка, 24% доля рынка в России)
PrestaShop (2% мирового рынка, 14% рынка Франции)
Shopware (1% мирового рынка, 12% рынка Германии)
Анекдоты
Kinsta опубликовал ответ, демонстрирующий, что PHP — быстрый, живой и популярный:
Что ж, во-первых, важно отметить, что существует большая разница между «хотеть» и «быть». Люди призывали к смерти PHP […] ещё в 2011 году.
PHP 7.3 увеличил количество запросов в секунду в 2-3 раза по сравнению с PHP 5.6. А PHP 8.1 еще быстрее.
[…] Из-за популярности PHP найти разработчиков PHP легко. И не просто PHP-разработчиков, а PHP-разработчиков с опытом.
Мэтт Браун из Vimeo Engineering, это не устаревший код — это PHP:
PHP не прекратил инновации […]. Новая волна серверных инженеров планировала, как мы могли бы разделить 500 000 строк PHP на группу [сервисов]. […] В конечном итоге ни одно из предложений не было реализовано.
Vimeo вырос во много раз за десять лет, прошедших с 2004 года, и наша кодовая база PHP вместе с ней […]
Ars Technica сообщает нам: PHP сохраняет огромное лидерство. Ars опубликовал версию отчета W3 Techs, включающую исторические данные.
Несмотря на множество печально известных особенностей, серверный язык, похоже, никуда не денется. […]
В этом наборе данных история рассказана ясна. […] В 2010 году доля PHP составляла 72,5 процента, а на сегодняшний день — 78,9 процента. […] Похоже, у PHP нет явного соперника, о котором стоит беспокоиться.
Лекс Фридман выразил это следующим образом в интервью создателю Python Гвидо ван Россуму на его подкасте (эпизод, временная метка):
Лекс: «PHP, вероятно, до сих пор управляет большей частью серверной части Интернета».
Гвидо: «О да, да. […]»
В ежегодном опросе пользователей Curl, проведенном Дэниелом Стенбергом (стр. 18), задается вопрос, где люди используют Curl. После собственного интерфейса Curl (78,4%) наиболее известной привязкой Curl является PHP. Так было с начала опроса в 2015 году. В 2023 году 19,6% респондентов опроса Curl сообщили, что используют Curl через PHP.
curl (CLI) 78.4%, php-curl 19.6%, pycurl 13%, […], node-libcurl 4.1%.
Ember.js, как известно, возник в сообществе Ruby. Но как интерфейсная платформа Ember может работать в паре с любым серверным интерфейсом. По данным опроса сообщества Ember, PHP занимает третье место по популярности среди участников опроса после Ruby и Java.
В исследовании Ember также задавались общие отраслевые вопросы. Например, 24% описали инфраструктуру своего работодателя как «self-hosted», а не у крупного облачного провайдера. Это не репрезентативный опрос сам по себе, но все же может стать сюрпризом. Особенно для людей, которые полагаются на социальные сети и выступления на конференциях, чтобы понять, чем занимается бизнес в реальном мире. Для компаний как никогда важно иметь готовую стратегию выхода из облака (пример Национальной службы здравоохранения). Вы можете прочитать, как выход Basecamp из облака экономит им миллионы долларов в год.
Масштабируемость
Приведенная выше статистика измеряет количество отдельных сайтов и компаний. Подавляющее большинство из них построено на PHP. Но все, что говорит об их масштабе, это то, что они находятся где-то в числе 10 миллионов лучших. Вас это беспокоит? Что входит в топ-500?
Джек Эллис из Fanthom Analytics, в своей публикации Масштабируется ли Laravel? доказывает, что не следует делать выбор, основываясь на обработке миллионов запросов в секунду. Вы вряд ли достигнете этого и столкнетесь со многими другими узкими местами. Но оказывается, что PHP — один из языков, который масштабируется до этого уровня.
Когда мы начали наблюдать невероятный рост нашего программного обеспечения Fathom Analytics (построенного на Laravel), […] никогда не было вопросов «выполняет ли фреймворк достаточно запросов в секунду?». […]
Я работал с корпоративными компаниями, использующими Laravel для обеспечения всего своего бизнеса, а такие компании, как Twitch, Disney, New York Times, WWE и Warner Bros, используют Laravel для различных проектов, которые они реализуют. Laravel может обрабатывать ваше приложение в любом масштабе.
Снова Мэтт Браун из Vimeo Engineering, это не устаревший код:
Я здесь, чтобы сказать вам, что это возможно, и продолжающийся успех Vimeo с PHP является доказательством того, что это отличный инструмент для быстро развивающихся компаний в 2020 году.
Vimeo также известен как разработчик Psalm, популярного инструмента статического анализа PHP с открытым исходным кодом.
От Кита Адамса, главного архитектора Slack Engineering, о серьезном отношении к PHP:
Slack использует PHP для большей части логики своих серверных приложений […].
преимущества среды PHP (снижение стоимости ошибок за счет изоляции ошибок, безопасный параллелизм и высокая производительность разработчиков) более ценны, чем проблемы […]
Давайте еще раз взглянем на отчет W3 Techs и на этот раз сосредоточимся на размерах некоторых отдельных предприятий. Наверху у нас есть WordPress, который, конечно же, поддерживает WordPress.com от Automattic. Это 20 миллиардов просмотров страниц каждый месяц (55-е место Alexa в мире).
Если мы продвинемся дальше по отчету, к позициям с долей рынка 0,1%, мы обнаружим системы PHP, которые поддерживают огромные веб-сайты. Тем не менее, они также являются предпочтительной платформой для более чем 100 000 небольших веб-сайтов.
#23 CMS: Moodle
#25 CMS: phpBB, например. Сообщество Google Waze, форум ApacheFriends, форумы VideoLAN.
#31 CMS: форумы XenForo, например. ArsTechnica.com, MacRumors.com.
#33 CMS: Roundcube
#45 CMS: MediaWiki
#49 CMS: форумы vBulletin
#53 CMS: Сообщество IPS, например. Форумы MalwareBytes.com, BleepingComputer и Squarespace.com
MediaWiki — это платформа Wikipedia.org с 25 миллиардами просмотров страниц в месяц (Alexa #12). MediaWiki также обеспечивает Fandom 2 миллиардами просмотров страниц в месяц (Similarweb #44) и WikiHow со 100 миллионами посетителей в месяц (Alexa #215).
Другие основные интернет-ресурсы, работающие на PHP, включают Facebook (Alexa #7), Etsy (Alexa #66), Vimeo (Alexa #165) и Slack (Similarweb #362).
Etsy интересен высокой долей активных сессий и динамическим контентом. В отличие от Википедии или WordPress, которые могут обслуживать большинство просмотров страниц из статического кеша. Это означает, что, несмотря на аналогичный масштаб, PHP-приложение Etsy гораздо более подвержено их высокому трафику.
На Etsy также работает создатель PHP Расмус Лердорф. Иногда в своих технических докладах он использует фрагменты кодовой базы Etsy. (Примечание для компьютерных фанатов: в его докладе о современном PHP в 2021 году объясняется, как Etsy развертывается с помощью rsync
, точно так же, как Википедия последнее десятилетие делала со Scap). В инженерном блоге Etsy время от времени освещаются работы над их модульным монолитом PHP, например. Множественная локализация или их подробные отчеты о производительности сайта Etsy:
К счастью, в этом квартале мы увидели улучшение производительности всего сайта благодаря обновлению до PHP7.
[…] мы увидели значительный прирост производительности на всех наших страницах.
Что с моим пузырём?
Можно критиковать сообщество PHP за то, что оно не занимает много места в публичном обсуждении. Будь то разработчики ядра PHP, авторы пакетов PHP (таких как Laravel, Symfony, WordPress, Composer и PHPUnit) или средний инженер, использующий его в своей повседневной работе… мы не видим особых споров в социальных сетях.
Вы также не увидите, чтобы мы часто выступали на конференциях, предписывая формулы для стека, который «определенно будет лучше» для вашей компании. Если верить разговорам фанатов определенных фреймворков JavaScript, мы должны верить, что большинство компаний сегодня используют их стек, и что вам следует пожалеть, если вы до сих пор этого не делаете. Я говорю это не для того, чтобы судить о JavaScript. Что меня беспокоит, так это предписывающие сообщения без учета технических или деловых потребностей, без оценки того, что означает «лучше» — лучше по сравнению с чем? Трудно сравнивать то, что вы знаете.
Вышесказанное не означает, что JavaScript не имеет своего места. Поделитесь своим опытом! Поделитесь своими результатами (и критериями, лежащими в их основе), что сработало, а что нет. Продолжайте искать, продолжайте внедрять инновации, продолжайте делиться и, прежде всего, продолжайте продвигать человечество вперед. Это бесплатное программное обеспечение!
Можно было бы подвергнуть сомнению заслуги потерянного десятилетия и критиковать React, но… React занимает 3% рынка. Добавьте к этому меньшие фреймворки (Vue, Angular, Svelte), и мы получим сумму 5%. Аналогично, Node.js в качестве веб-сервера занимает 3% рынка. Означает ли это, что более 90% людей упустили этот трюк, который улучшит ваш бизнес?
Не будем забывать, что эти 5% представляют собой 500 000 крупных веб-сайтов. Это много. У Node.js есть свое место и свои сильные стороны (потоки сообщений в реальном времени). Но у Node.js есть и свои слабые стороны (блокировка основного потока). И помните, доля рынка мало что говорит о масштабе. Это может быть источником энергии для нескольких организаций, входящих в 1% лучших (например, MediaWiki) или 1% нижних. Или станьте, как WordPress и управляйте как 1% лучших, так и более чем 40 миллионами других сайтов.
Заключение
Компании молодые и старые, маленькие и большие, возможно, не используют стеки программного обеспечения, о которых мы чаще всего говорим в общественных местах. Это особенно верно за пределами сферы личных проектов и стартапов, сжигающих деньги.
Является ли PHP сегодня наиболее экономичным выбором для растущего и устойчивого бизнеса? Входит ли он в тройку лидеров? Имеет ли вообще значение время выполнения языка при расширении бизнеса и команды людей вокруг него? Мы не знаем.
Что мы действительно знаем, так это то, что сегодня очень многие компании используют PHP, и PHP оказался устойчивым вариантом. Он выдержал испытание временем. Сюда входят и новые компании, такие как Fathom, которые стали прибыльными всего за три года. Как сказано в статье Fathom, большинство из нас никогда не достигнет такого масштаба. Но приятно осознавать, что PHP — это устойчивый и экономичный вариант даже в больших масштабах. Это единственный вариант? Нет, конечно нет.
Есть языки, которые еще быстрее (Rust), имеют еще большее сообщество (Node.js) или имеют более зрелые компиляторы (Java); но это имеет тенденцию торговли другими ценностями.
PHP попадает прямо в золотую середину. Он довольно быстрый, имеет большое сообщество по повышению производительности, имеет современный синтаксис, активно развивается, прост в освоении, легко масштабируется и имеет большую стандартную библиотеку. Он предлагает высокий и безопасный параллелизм в любом масштабе, пока без асинхронной сложности и блокировки основного потока. Он также имеет тенденцию нести низкие затраты на обслуживание благодаря стабильной платформе и сообществу, которое ценит совместимость и небольшое количество зависимостей. Конечно, время от времени у вас будут разные потребности, но в этом конкретном случае PHP стоит среди очень немногих других. Какие другие? Расскажи мне ты!
Материалы для дальнейшего чтения
Выбирайте скучные технологии, Дэн МакКинли 2015.
Простые радости масштабирования, Джордан Тигани, 2023.
Как защитить себя от npm, Тимо Тайхов, 2019.
Мы тонем в программных зависимостях, Раян Барретт, 2022.
“Выход из программного кризиса": Зависимости, Бальдур Бьярнасон.
Выжмите к черту всю систему, которая у вас есть, Дэн Слиммон, 2023.
О выборе языка и нагрузке на обслуживание Викимедиа, Тим Старлинг, 2018.
Комментарии (62)
FanatPHP
09.09.2023 18:06+6Ну если говорить начистоту, то текст немного манипулятивный. Автор умело выпячивает достоинства, ловко запихивая ногой под стол неудобные подробности. Если из баснословных 77 процентных пунктов вычесть 63 приходящихся на чумазого отпрыска, которого вся остальная семья стыдится, то останется не так уж много.
Большие мальчики типа Etsy или Vimeo — это, конечно, хорошо, но на их перечисление хватило пальцев одной руки.
Но вот одна мысль здесь просто замечательная — есть языки, которые рекомендуют, и те, на которых пишут.
ЗЫ: немного ресерча все-таки не помешало бы. "попадает в определенную точку Златовласки" навевает ассоциации с еще одним известным сайтом, написанным на РНР. Я вот не поленился, и оказалось что это не цитата из немецкого фильма из жизни сантехников, а всего лишь "РНР — это тот язык, который понравился Машеньке после всех, которые она перепробовала в доме у Трех медведей" :)
bel1k0v Автор
09.09.2023 18:06+1Наверное в этом и есть суть таких статей. Всем не угодишь, а цели как-то надо достигать.
Есть программы (в т.ч. и языки) на которые все ругаются, и те, которыми никто не пользуется. Вроде так было. База.
P.S. Заменил на золотую середину.
FanatPHP
09.09.2023 18:06+2Я кстати посмотрел повнимательнее, ближе к концу видно, что вы совсем устали, и без словаря уже нельзя разобрать, о чем идет речь. Давайте я вас попрошу перед публикацией присылать мне переводы на вычитку? Я по себе знаю как свой глаз замыливается, и нужна свежая пара. Ну или хотя бы пробуйте прочесть сами, не бросаются ли в глаза несуразности. Про богатый внутренний мир, например.
bel1k0v Автор
09.09.2023 18:06+1Да, это было бы замечательно. "What about my bubble?" - тут я надолго застрял. Решил, что так. А вы как считаете, это должно быть переведено?
FanatPHP
09.09.2023 18:06Ну честно говоря, текст довольно сложный, я и сам не везде понимаю, что он имеет в виду. Но я правда, в этом случае и не берусь за перевод, писать "от балды" не могу. под пузырем, мне кажется, он имеет в виду замыкание в своем мирке, "информационном пузыре", когда человек из всей входящей информации пропускает только то, с чем он согласен, ограничивая свой круг общения единомышленниками.
bel1k0v Автор
09.09.2023 18:06+1Да, именно по этой логике я и решил, что он имеет ввиду свой внутренний мир, где он "соревнуется" с JavaScript. С другой стороны он отдельно выделил это, давая своё видение происходящего, и скорее всего, понимая, что это его личное мнение, имеющее право на жизнь. Человек в футляре, если вам угодно, что особенно иронично с моей фамилией.
FanatPHP
09.09.2023 18:06+3Ну, в русском языке "внутренний мир" это все-таки немного другое :)
Он про уже имеющееся содержимое, а не про про процесс наполнения.
Тем более что автор как раз яваскрипту и предъявляет эту же самую глухоту, когда адепты этого языка разливаются глухарями на токовище, и ничего не желают знать об остальном окружающем мире.bel1k0v Автор
09.09.2023 18:06+1Он просто процент реального использования jQuery не посчитал. Я лично вообще эти 2 языка бок о бок использую уже лет 20, без каких-либо конфликтов, душа в душу. Но всё-таки, как правильно перевести bubble в этом контексте на русский язык, я так и не додумал. Слово футляр, конечно подходит, но сильно устаревшее. Очередной англицизм получается? ;)
BaBL
09.09.2023 18:06+2Так и перевести - "пузырь", оно вполне применимо по контексту. Можно еще "зашоренность" прицепить и дополнить в первых строках, чтобы сконцентрировать человека.
Пузырь - термин более чем понятный. Мы все постоянно слышим про надувание пузырей на фондовом рынке, инфляции, а с развитием нейронных сетей "google/youtube держат человека в информационном пузыре" и т.д.
LeoSv
09.09.2023 18:06ChatGPT:
Фраза "What about my bubble?" на английском языке означает "Что с моим пузырем?" или "А как насчет моего пузыря?" в контексте обсуждения или вопроса о чьей-то личной зоне комфорта, приватности или ощущениях безопасности. Например, это может быть использовано в разговоре о том, какие меры безопасности или ограничения нужны, чтобы человек чувствовал себя комфортно и защищенно.
forthuse
09.09.2023 18:06Как вариант ещё, спросить у автора оригинального текста.
P.S. А, можно дать автору как возможность ознакомится и с переведённым текстом даже с использованием сервиса автоперевода и на каких то моментах, при этом, может выявится не авторский смысл заложенный изначально в статье.
Firz
09.09.2023 18:06+10Уровень оригинальной статьи: Не отличать веб от интернета, но писать про то что интернет работает на PHP.
bel1k0v Автор
09.09.2023 18:06+1Вам настолько принципиально найти за что зацепиться, чем найти что-то хорошее? Ясно, понятно, хоть вы и
правы(зануда обыкновенный).
NooneAtAll3
09.09.2023 18:06Уровень оригинальной статьи: Не отличать веб от интернета
Я уверен, что кроме людей _напрямую_ работающих с настройкой сети, никто это и не различает.
"Интернет — это сайтики что мне браузер показывает."
VladimirFarshatov
09.09.2023 18:06Ну .. кмк, стоить признать, что PHP начиная с 7-й версии начал развиваться в сторону полноценного ООП ЯВУ и заметно прибавил в скорости. Насколько понимаю, на 2020-й это самый быстрый интерпретатор. До полноценного ЯВУ осталось, кмк совсем не много: построить и выложить строгое синтаксическое описание языка, скажем как у Ада или Го.. ;)
olku
09.09.2023 18:06+1Дженерики же. Единственная фича, вышедшая в топ опроса на PHP International Conference 2023. Даже многопоточность народу не интересна.
VladimirFarshatov
09.09.2023 18:06+1В 7-й версии появилось много чего, в направлении к ЯВУ из "набора правил". Мне больше импонирует "типизация", которая стала не в пример ширше.. Дженерики, кмк, вообще "не о программировании", т.к. слишком часто ведут к копи-паст росту кода в компилируемых языках "на автомате" (компилятором).
Да и нужно ли оно интерпретатору вообще? Он жеж позволяет даже напрямую генерить код на PHP и тут же исполнять его.. зачем там "дженерики"? ;) Можно даже накатать самообучающийся ИИ, который будет перестраивать сетку на лету, а не только подправлять чиселки в узлах..
bel1k0v Автор
09.09.2023 18:06+4ИМХО это как раз самая бесполезная фича, которая реализуется одним классом implements Iterator, ArrayAccess
inetstar
09.09.2023 18:06Php компилирует в байт-код с 4 версии.
VladimirFarshatov
09.09.2023 18:06Тем не менее, это нисколько не мешает ему оставаться интерпретатором.. ;)
isden
09.09.2023 18:06+1заявлять о его «смерти»
Так PHP же "создан чтобы умирать".
BaBL
09.09.2023 18:06+5Уже нет, с распространением app-серверов и приведением в нормальный вид PSR это перестало быть аксиомой.
У меня есть проект, который выполняет функцию бэкенда довольно плотного мессенджера с дополнительными всякими функциями под международный специализированный проект. Работает с связке с centrifugo и обслуживает десятки тысяч клиентов в секунду (потолка не знаю, на наших объемах еще проблем не достигли, но он обслужил последнее крупное мероприятие не загрузив и пары ядер E5-2643v3 - уже говорит о многом). Написан на PHP8.2 Yii3, yii-cycle (Cycle ORM) и запускается под RoadRunner (в Yii3 через PSR Bridge это реализовано стандартным маленьким пакетом).
FanatPHP
09.09.2023 18:06+3Написан на PHP8.2 Yii3, yii-cycle (Cycle ORM) и запускается под RoadRunner (в Yii3 через PSR Bridge это реализовано стандартным маленьким пакетом).
Послушайте, это звучит как музыка!
Вы не планируете делать доклад о вашей архитектуре? Или, может, статью на Хабр?
zahnah
09.09.2023 18:06Вот это была последняя капля в смене ЯП. Когда, актуализируя знания по Laravel, увидел, что ПО, которое помогает ускорять его работу(RoadRunner), написано на Go, я финально решил, что что-то реально производительное на php никогда не написать. Все попытки будут какими-то Франкенштейнами. Да, круто-просто сделать сайт с элементарной логикой на какой CMS, потом может какой фрэймворк присобачить и делать какую-то сложную бизнес логику, но как только пойдёт нагрузка, надо переписывать на что-то типа Java, C#, Go что собственно топовые компании и подтверждают, где вакансий php нет почти.
А так то да, на php на хлебушек с маслом ещё лет 10-15 то точно без проблем заработаешь, но в чём-то реально крутом поучаствовать скорее всего не получится
bel1k0v Автор
09.09.2023 18:06Посмотрите в сторону Workerman, Swoole (2я опция для Octane) например. Я уже ниже писал, но думаю, китайцам есть чем вас удивить. Нагрузка это не только про ваш код - это про инфраструктуру, железо, суровых одменов, знающих конфиги всего и вся, правильно спроектированной и настроенными БД, сетью, фаерволами, балансировщиками, системами очередей и может ещё что-то забыл. В этом огромном зоопарке, под названием современное веб-приложение, последний на кого будут смотреть - это ваш фреймворк, если конечно квалификации достаточно.
p.s. статью всё-таки лучше повнимательнее изучить на предмет "хайлоад" сервисов, они там есть
BaBL
09.09.2023 18:06+1Вы путаете теплое с мягким.
Давайте немного ваш пример утрируем: чтобы запускать приложения на Go, вам нужен Linux, написанный на Си. Ничего не смущает? RoadRunner - это аппликейшн сервер, а не ускорялка для PHP, это альтернатива Nginx (хотя у него Nginx-unit) и есть PHP-PPM, просто в моем случае RR под рукой был.
PHP8.2 очень быстрый и способен обрабатывать вполне конкурентное количество запросов по сравнению с другими ЯП.
ivvi
09.09.2023 18:06Так это же не о том, что PHP должен умереть как язык, а о том, что php-код, будучи обработанным интерпретатором и отданным веб-серверу, должен не остаться в серверной памяти, то есть "умереть" без следов своего пребывания там.
Ionenice
09.09.2023 18:06+3Когда-то в минусы php записывали смесь html/php и смотрели на язык с презрением, немного иронично, что современный фронтенд буквально пришёл к той же «концепции»
isden
09.09.2023 18:06Не "пришел", а "откопал стюардессу" :)
Ну и все еще есть мнение, что такой подход несколько не по феншую.
dom1n1k
09.09.2023 18:06А что там за история была, что у PHP бус-фактор вроде бы 2, причем один из этих двух таки собирался куда-то уходить. Как сейчас дела обстоят?
FanatPHP
09.09.2023 18:06Не слишком хорошо, надо признать.
Насколько я знаю, участие обоих сейчас довольно пассивное, скорее совещательное.
У Никиты совсем другая работа, а Дмитрий, мне кажется, все свои задумки уже реализовал. И прорывных идей, таких которые стояли за семеркой и восьмеркой, пока не наблюдается.С другой стороны, есть фонд, который оплачивает работу нескольких фуллтайм разработчиков, а сейчас как раз сейчас нанимает ещё, так что есть шанс, что появится свежая кровь.
web1nick
09.09.2023 18:06+2Как человек, который начинал программировать ещё со школы, с Turbo Pascal-я, Delphi и Perl, а потом, и по сей день уже более 14и лет работая на PHP, мне забавно смотреть за этим говносрачем по поводу "этот язык самый крутой, а вот этот ваш отстой".
Всё хорошо в своё время, у всего есть свои плюсы и минусы. И Delphi и Perl живы и по сей день, - проекты на них есть, свою нишу они занимают, но много ли о них вспоминают? И даже Turbo Pascal сейчас можно использовать например как начальное обучение программированию для школьников.
Я так же уже около года программирую и на Python, но не из-за хайпа, - мне на него мягко говоря пофиг, а из-за простой причины: хайп приводит к деньгам, а деньги к вакансиям/проектам.
PHP популярен для web по простой причине, которая и остаётся по сей день, - он прост и удобен. Причём именно для web. Он официально поддерживает установку себя как модуля Apache, и благодаря возможности встраивать свой код непосредственно в HTML - это отличный шаблонизатор из коробки. Итого, всё что надо для старта, это создать обычный html-файл с расширением "php" и добавлять в него php-код по мере необходимости.
Теперь взять типа его прямого конкурента Python. Это язык общего назначения, а не для web. Поэтому, чтобы даже начать в нём разрабатывать под web надо поплясать с дудкой. mod_python для Apache это что-то уже давно мёртвое. Сейчас тут стандарт в реализации это WSGI, и уже его можно поставить модулем на Apache. И далее вам надо будет делать ответы этому серверу в определённом формате под WSGI. Конечно все современные Python-фреймворки для web это делают в автоматическом режиме, но тут сразу возникает вопрос, мне что, чтобы написать простое web-приложение надо получается тянуть с собой и этот web-фреймворк? Короткий ответ: да.
Далее, чтобы просто вывести в браузер обычный html вам надо будет написать например print('<div>Привет</div>'), т.е. смешивать Python-код и html. Что является тем ещё извращением. Что делать? Подключать html-шаблонизатор. И тут сразу возникает вопрос: мне что, чтобы написать простое web-приложение надо получается тянуть с собой этот шаблонизатор. Короткий ответ: да (или тянуть тот же фреймворк, в котором они уже есть).
PHP всё это может делать из коробки, just Plug and Play.
Ну это так, - обычное необязательное сравнение. Основная популярность PHP естественно из-за времени. Он был практически безальтернативным для web, начиная с середины ещё 2000х. Соответственно огромная кодовая база. А Python хоть и старый язык программирования, но хайп по нём пошел по сути только с начала хайпа по машинному обучению (что естественно тоже крутая тема, в своей нише).
Как будет дальше никто не знает. Человечество, а соответственно и программисты, очень иррациональное стадо и куда его поведут никто не знает. Но я надеюсь переживу и PHP и Python и вот тот следующий "мега-крутой" язык программирования :)FanatPHP
09.09.2023 18:06Всё так, только строго говоря, "установка себя как модуля Apache" — это тоже "что-то уже давно мёртвое" :)
0Bannon
09.09.2023 18:06+1Не знаю за что пинают РНР, мне он нравится. И еще по производительности в топе и никакому питону не снилось такое).
https://www.techempower.com/benchmarks/#section=data-r21&l=ziijr1-6bj
NIKEtoS1989
09.09.2023 18:06С одной стороны, смотря на то, как много всего построено на PHP, можно вспомнить пословицу про то, что миллионы мух не могут ошибаться...
А с другой, 3 года назад, когда я пришёл в It мне говорили, что он всё, а он по ходу непотопляемый, а уж почему он таков - потому что так крут, или потому что говно не тонет - тут пусть каждый для себя ответит сам))
isden
09.09.2023 18:06+1Мне приходится работать с PHP еще со времен перехода с 3 на 4 версию. И еще в те времена это все говорили, и еще в те времена писались все эти тонны говнокода, все как и сейчас :)
NIKEtoS1989
09.09.2023 18:06Ну количество говнокода на мой взгяд - сильно зависит от популярности и лёгкости использования языка.
Я так понимаю, что Python и PHP остаются самими лёгкими для входа ЯП и оттого много новичков, соответственно допоускающих ошибки и плодящих говнокод)
FanatPHP
09.09.2023 18:06Ну количество говнокода на мой взгяд — сильно зависит от популярности и лёгкости использования языка.
Exactly!
Я так понимаю, что Python и PHP остаются самими лёгкими для входа ЯП и оттого много новичков, соответственно допускающих ошибки и плодящих говнокод)
Плодящих-то ладно. Но они же ведь тут же начинают учить других! К примеру, есть такой шустрый геймер на ютубе, Дани Кроссинг. Который в какой-то момент решил вместо игр стримить туториалы по пхп. Будучи вообще полным нулем в программировании, но обладая хорошо поставленным голосом. У него миллионы просмотров, при том что там сплошной кринж.
Или курсы на юдеми. Там чудовищный стыд!
Отсюда и репутация.
потому что так крут, или потому что говно не тонет
В статье как раз хорошо сказано, что ни то ни другое — а золотая середина. Пых за последние 7-8 лет проделал очень значительную работу над ошибками. По сути, сейчас это язык Никиты Попова в той же мере, что и Расмуса Лердорфа — куда более логичный и непротиворечивый, чем был раньше. Но при этом с сохранивший свои достоинства — простоту, доступность (в смысле availability), заточенность под веб с одной стороны и универсальность с другой.
NIKEtoS1989
09.09.2023 18:06Ну вот - вы подтвердили мои слова)
А про золотую середину - это про большинство языков можно сказать, ведь если бы какой-то язык, который всех бы устраивал - был бы создан, то прогресс бы остановился))
tommyangelo27
09.09.2023 18:06Я когда только начинал в 2009-2010 годах, на всех phpшных форумах писали, что php — всё, и надо с него на другие языки переходить.
leha_gorbunov
А еще я на PHP пишу служебные скрипты вместо bash или python. Есть доступ к файлам, базам данных, инструменты работы с сетью, великолепная работа со строками и форматами (например JSON).
forthuse
В списке популярности представленных решений на языке с площадки rosettacode.org
PHP расположился на 67-ом месте (где то c ~30% решений)
(не в первой или второй 10-ке языков)
P.S. Это не плохо или хорошо, а возможно просто решение каких то задач на нём "сложнее" выразить и показать в силу своих особенностей присущим любому языку, вне привязке к PHP.
tzlom
а на первых трех местах Phix, Wren и Julia, о первых 2х я услышал впервые, так что репрезентативность этого списка под вопросом
bel1k0v Автор
В статье предоставлена статистика по бекенду, не по всем языкам программирования.
Причём rosetta основывает свою статистику на своих задачах, судя по всему большей части - теоретических.
FanatPHP
Ой, перестаньте. Это сайт вообще про другое :)
Он про языки, на которых никто не пишет.
А РНР его просто не замечает.
FanatPHP
Зато Phix, Wren, Julia, Raku и Nim уверенно держат первую пятерку :))))
forthuse
Raku — это ветка Perl языка с пересмотренным дизайном,
Julia, вроде целевая аудитория — математики,
про другие не скажу, но вероятно они тоже не так "безнадёжны" при их сторонней субъективной оценке основыая свои выводы на незнании их.
FanatPHP
Я искренне не понимаю, что именно вы так отчаянно и многословно пытаетесь здесь доказать.
forthuse
A, нужно что то обязательно доказать своим высказыванием?
FanatPHP
Не надо на ходу додумывать сложных объяснений очевидным явлениям :)
Этот сервис отчаянно нужен языкам, на которых никто не пишет. Чтобы те полтора студента, которые изучают их на факультативе, могли найти хоть какие-то примеры кода. А язык, на котором написаны офигиллиарды строк кода на все случаи жизни, в этом сайте просто не нуждается.
Решения какой задачи на РНР на этом розеттском коде вам не хватает? Нарисовать таблицу умножения, серьёзно? :)
forthuse
Есть и более "интересные" задачи и в соревновательном аспекте :)
как с code.golf с PHP
P.S. Одна из задач вывести ASCII таблицу, что более практично в ~100 символов программного кода. Можете добавить себя в топ PHP экспертов прорешав предложенные задачи.
BaBL
Вы приводите примеры всевозможных "соревновательных" сайтов, далее мы можем запустить страничку "Реши задачку без использования тега <?php" и там PHP окажется вообще не удел.
Статья о том, что PHP широко применяется и развивается в РЕАЛЬНЫХ проектах, а не выдуманных извращениях, интересных узкому кругу математиков/гиков/соревнователей. Никто в здравом уме не полезет с PHP строить демо сцены в 8кб, он для другого придуман, а вы подменяете понятия и именно в такие примеры уводите обсуждение.
inetstar
Каждый создатель нового языка первым делом целенаправленно лезет в RosettaCode. Так что это ни о чём не говорит.