Мне кажется, критика PHP уже превратилась в самостоятельный жанр. Одной только статьи
PHP: фрактал плохого дизайна достаточно, чтобы задуматься, стоит ли вообще его использовать хотя бы для странички заказа пиццы. А если у вас всё же остались сомнения, зайдите, например, на
PHP Sadness.
Действительно ли PHP настолько плох? Не стану кривить душой — я знаю слишком много его недостатков. В моем личном списке на первом месте находится невменяемая система ссылок на переменные, которая:
а) делает клонирование объектов фактически бесполезным и
б) все равно не позволяет нормально пользоваться функцией call_user_func(_array) без хака,
который описан в документации.
<upd> Хак описан в
комментарии к официальной документациии. Прошу прощения у всех, кого ввёл в заблуждение.
</upd>
Второе место занимает совершенно сумасшедшая система ошибок. В PHP существует 2,5 разновидности ошибок и на момент 7 версии аж 2,5 класса базовых исключений, ни один из которых никак не связан с другими кроме реализации интерфейса Throwable… который есть только в PHP 7 и в более ранних версиях его использование само по себе вызывает ошибку. И это не считая функций
__halt_compiler и
exit.
В общем всё плохо. Но PHP не меньше вредит нецелевое использование языка на всех уровнях разработки — начиная от проектирования систем и заканчивая решением отдельных функциональных задач. И вот о чём я…