Ничем не хуже - это языки, никак между собой не пересекающиеся. Те задачи, которые эффективно решать на PHP, очень неэффективно делать на Node.JS и наоборот.
Проблема PHP - крайне низкий порог входа. И огромное кол-во неучей-говнокодеров, наивно считающих себя программистами. Именно масса порождаемого ими плохого кода поддерживает миф о том, что плох сам PHP.
Обрати внимание, кто именно и как именно ругает PHP.
Категория 1: те, кто PHP не знают, и оценивают язык не по собственному опыту, а по тем примерам говнокода, которые предлагают курсы Хауди Хо, Евгения Попова и прочих неучей, корчащих из себя гуру программирования.
Категория 2: те, кто последний раз использовал PHP лет 15 назад и с тех пор перешёл на другие языки. И критикуют они не современный PHP, а свои воспоминания о том PHP, который был 15 лет назад.
Категория 3: адепты Node.JS или Python - проповедующие превосходство единственно правильного языка.
Категория 4: неучи, умеющие кодить на Node.JS или Python и которые веруют в то, что PHP - плохой язык. Ведь им это адепт их языка проповедует.
А вот тех, кто понимает современные принципы написания кода на современном PHP и умеет их применять, среди критиков PHP почему-то не наблюдается.
PHP
В чем php хуже js, почему его так ругают?
Кактус, ну ты же не новичок в данной категории... Наверняка прошарен для чего JS и для чего PHP и чем они отличаются друг от друга
Хуже только тем, что JS можно использовать и на фронте, и в бэке, и на десктопе (боже упаси, для "электронщиков" отдельный котёл в аду), а PHP - только в бэке. Это единственный недостаток, если можно назвать недостатком. Микроскоп тоже плох тем, что им тяжело забивать гвозди.
Как правило, хороший инструмент, заточенный под конкретную цель, гораздо качественнее универсального, который может делать многое, но хреново.
Как правило, хороший инструмент, заточенный под конкретную цель, гораздо качественнее универсального, который может делать многое, но хреново.
язык реально дырявый с косяками и странностями но во первых все они такие а во вторых он единственный заточенный на веб разработку (не считая Node.js, ASP. NET, Java Servlet и прочий изврат) и на нем написано 80% сайтов на текущий момент нормально бегают и работают сейчас , и скорее всего будут работать в ближайшем будущем потому как на их создание потрачены внушительные суммы
У них разная область применения, чтоб сравнивать. На PHP пишут серверную часть, а на JS клиентскую.
Эти языки работают по разному из за различной истории их развития и их различного назначения.
PHP - это тридцать лет развивающийся шаблонизатор с интерпретатором основанный на концепции процедурного и модульного программирования т.е. берется простой текстовый шаблон в нем размечаются участки в которых выполняются описанные в них процедуры (все просто понятно и удобно). Сам интерпретатор легко изменяется включением и отключением необходимых модулей для работы с графикой, видео или необходимой базой данных и прочими нужностями и полезностями.
Слабость или сила PHP в том что он не является отдельно работающий программой а является обработчиком шаблонов. т.е. если запустить скрипт на nodeJS то он запускается как отдельная программа ожидающая запросов в случае PHP идет запуск и интерпретация указанного шаблона после чего PHP завершает свою работу.
В случае возникновения ошибки в JS все сломается и остановиться в случае PHP один запрос будет ошибочным а последующие будут работать если конечного же не повторяются ошибочные условия.
Символом PHP очень и очень не зря является слон.
В современном PHP пытаются использовать концепцию ООП но ее реализация вызывает большие вопросы из за очень своеобразной реализации типов и механизма разрешения имен переменных в общем если образно слона одели в костюм белочки и говорят всем что это белочка. ООП в php это просто синтаксический сахар для тех же самых процедур с более запутанным разрешением обращения к именованным субъектам языка. Но тем не менее это сильно помогает с тем что в глобальной области видимости (а другой в PHP нету) находится 20 000 - 50 000 именованных субъекта к которым можно обратиться(вызвать).
PHP - это тридцать лет развивающийся шаблонизатор с интерпретатором основанный на концепции процедурного и модульного программирования т.е. берется простой текстовый шаблон в нем размечаются участки в которых выполняются описанные в них процедуры (все просто понятно и удобно). Сам интерпретатор легко изменяется включением и отключением необходимых модулей для работы с графикой, видео или необходимой базой данных и прочими нужностями и полезностями.
Слабость или сила PHP в том что он не является отдельно работающий программой а является обработчиком шаблонов. т.е. если запустить скрипт на nodeJS то он запускается как отдельная программа ожидающая запросов в случае PHP идет запуск и интерпретация указанного шаблона после чего PHP завершает свою работу.
В случае возникновения ошибки в JS все сломается и остановиться в случае PHP один запрос будет ошибочным а последующие будут работать если конечного же не повторяются ошибочные условия.
Символом PHP очень и очень не зря является слон.
В современном PHP пытаются использовать концепцию ООП но ее реализация вызывает большие вопросы из за очень своеобразной реализации типов и механизма разрешения имен переменных в общем если образно слона одели в костюм белочки и говорят всем что это белочка. ООП в php это просто синтаксический сахар для тех же самых процедур с более запутанным разрешением обращения к именованным субъектам языка. Но тем не менее это сильно помогает с тем что в глобальной области видимости (а другой в PHP нету) находится 20 000 - 50 000 именованных субъекта к которым можно обратиться(вызвать).
Похожие вопросы
- Передача json строки php to js
- Какая разница между Node.js и PHP
- Web- программирование. Php (JS, HTML, CSS)
- Хочу работать php программистом. Но как узнать - готов я или нет? На php же можно очень много написать, в отличие от JS.
- Можно ли сделать браузернаю игру зная только HTML, CSS, PHP, MySQL(без JS), ненавижу язык JS
- Чем node.js лучше php + js (по классике) ?
- (JS, PHP) Что такое скрипт и чем отличается от других языков?? СПС
- Знаю html и что учить следующим js или php?
- Зачем нужен PHP если есть JS???
- Назовите команды, которые используются для передачи данных с программы на сервере на php в программу в браузере на js.
PHP давно уже используется в режиме непрерывно работающей программы - от демонов, работающих 24/7, до https://github.com/spiral/framework .
"Вызывающая большие вопросы" концепция ООП в PHP практически идентична концепции ООП в Java или C# - с учётом динамической природы PHP. ООП в Python или JavaScript вызывает куда больше вопросов.
Глобальная область видимости - сказка. Каждая подпрограмма, каждый класс, каждое пространство имён - отдельная область видимости.
Это работает только на уровне грамматик языка при выполнении все свалено в одну кучу. это как с типами в TypeScript они как бы есть но в реальности их нету. т.е. это слой абстракции для удобства пользователя и поиска логических ошибок.
У PHP нет динамической природы он просто мимикрирует под использование динамических типов данных.
Переменные/данные в PHP всегда являются всеми типами сразу т.е. представленные таблицой где хранятся значения для строкового числового и ссылочного типа данных и никакой динамической типизации не происходит.
Это не верное утверждение. Исполнение PHP это всегда отдельный поток порожденный родительским процессом (веб сервером или демоном или встроенным потоковым сервером PHP).
C 7,8 версий пхп работает со специальным менеджером который занимается управлением ресурсов и кешированием шаблонов синхронными-асинхронными запросами в операционной системе.
"Непрерывно работающие демоны" - это и есть этот менеджер.
Не интерпретатор а только парсер и синтаксический анализатор при исполнении кода контроль не осуществляется.