У PHP очень необычная история в сравнении с другими языками. PHP изначально не был языком программирования и не собирался им становиться. В этом уроке мы обсудим эту тему подробнее.
В 1995 году Расмус Лердорф создал набор скриптов на Perl. Эти скрипты обрабатывали шаблоны HTML-документов, выводили и учитывали посетителей его онлайн-резюме. Лердорф назвал набор Personal Home Page (Личная Домашняя Страница). Эти скрипты не были языком программирования — их единственной задачей было обработать шаблон и сформировать HTML-страницу.
Затем текущей функциональности стало недостаточно. Лердорф разработал следующую версию шаблонизатора, попутно переписав скрипты с Perl на язык Си. С этого момента PHP стал походить сам на себя.
Популярность PHP росла, и он начал использоваться на множестве сайтов в сети. Еще к проекту стали подключаться новые разработчики. PHP стал самым популярным языком для веб-разработки, оставив все остальные далеко позади. Вокруг языка выросло огромное количество готовых решений и бизнесов. Например, более 30% всех сайтов в интернете сделано на CMS WordPress. Также WordPress доступен как SaaS-платформа.
Знать эту историю успеха важно, как минимум, по одной причине. Создание языков программирования — это серьезное занятие, требующее определенной квалификации от тех, кто это делает. Лердорф сам признавался, что не умел создавать языки и не пытался сделать язык.
Все это оставило большой отпечаток на PHP:
- Непоследовательное именование. Функции в PHP называются непоследовательно, потому что добавлялись по ходу дела, когда об этом никто не думал. В целом именование часто противоречит PSR — официальной рекомендации по оформлению и организации кода в PHP
- Путаница с передачей параметров. Одни и те же по смыслу функции могут принимать на вход параметры по-разному: например, в обратном порядке. Поэтому в PHP сложнее запомнить сигнатуры функций
- Странная система предупреждений. Ошибки делятся на три непривычные категории — Fatal, Warning и Notice
- Прямая загрузка кода. В PHP добавили пространства имен, но это не отменяет наличие механизма для прямой загрузки кода. В итоге получается что есть и прямой
require
, и пространства имен, которые можно не использовать
Этот список можно продолжать и дальше, но в процессе работы вы и сами столкнетесь с неожиданностями. Сейчас языком занимаются серьезные компании и разработчики. Они пытаются исправлять эти ошибки там, где это возможно. Кое-что им удается, но некоторые фундаментальные ошибки останутся в PHP навсегда.
Несмотря на вышесказанное, современный PHP - мощный язык с большим количеством различных возможностей. На нем пишут миллионы программистов по всему миру. В итоге PHP — самый простой и удобный способ войти в веб-разработку.
Остались вопросы? Задайте их в разделе «Обсуждение»
Вам ответят команда поддержки Хекслета или другие студенты