Історія PHP

PHP Tools, FI, Construction Kit та PHP/FI

PHP, як вона відома сьогодні, фактично є наступницею продукту під назвою PHP/FI. Перше втілення PHP, створене в 1994 році Расмусом Лердорфом, було простим набором двійкових файлів під назвою Common Gateway Interface (CGI, "Допоміжний шлюзовий інтерфейс"), написаних на мові програмування C. Набір скриптів, що використовувався для відстежування відвідувань його онлайн-резюме, він спершу назвав "Personal Home Page Tools" ("Інструменти для особистої домашньої сторінки"), більш поширена назва — "PHP Tools". З часом, бажаючи більше функціональних можливостей, Расмус переписав PHP Tools, створивши набагато більшу та багатшу реалізацію. Нова модель була здатна взаємодіяти з базами даних тощо, забезпечуючи структуру, з якою користувачі могли розробляти прості динамічні вебдодатки, такі як гостьові книги. У червні 1995 року Расмус » опублікував для громадськості початковий код PHP Tools, що дозволило розробникам використовувати його на свій розсуд. Це також дозволило — і спонукало — користувачам надсилати виправлення помилок у коді та загалом покращувати його.

У вересні того ж року Расмус розширив PHP і на короткий час фактично відмовився від назви "PHP" на користь "FI" (скорочено від "Інтерпретатор форм"). Нова реалізація містила деякий основний функціонал PHP, яким ми його знаємо сьогодні. Вона мала змінні у стилі Perl, автоматичну інтерпретацію змінних з форм та вбудований в HTML-документ код. Сам синтаксис був подібним до Perl, хоча й доволі обмеженим, простим і дещо непослідовним. Насправді, щоб вставляти код у HTML-файл, розробники мали використовувати HTML-коментарі. Оскільки такий метод не був прийнятним для усіх, FI продовжував розвиватися та сприймався радше як інструмент CGI, але не мова. Проте це почало змінюватися наступного місяця. У жовтні 1995-го Расмус випустив повністю переписаний код. Повернувши назву PHP, тепер він (коротко) називався "Personal Home Page Construction Kit" (або українською "Набір для створення особистої домашньої сторінки"), і був першим випуском, який міг похвалитися тим, що на той час вважалося вдосконаленим скриптовим інтерфейсом. Мова була навмисно розроблена зі структурою, що нагадувала C, щоб зробити легкою адаптацію розробників, знайомих з C, Perl чи схожими мовами. Досі обмежуючись системами, сумісними з UNIX і POSIX, почала досліджуватись можливість впровадження у Windows NT.

Код отримав ще одне повне оновлення, тож в квітні 1996-го, комбінуючи назви попередніх випусків, Расмус представив PHP/FI. Ця реалізація другого покоління почала справжню еволюцію PHP із набору інструментів у окрему мову програмування. Вона містила вбудовану підтримку баз даних DBM, mSQL і Postgres95, кукі, підтримку користувацьких функцій та багато іншого. У червні того ж року PHP/FI отримала статус версії 2.0. Однак цікавим фактом є те, що існувала лише одна повна версія PHP 2.0. Коли в листопаді 1997 року нарешті закінчився статусу бета-версії, основний механізм парсингу вже був повністю переписаний.

Хоча мова прожила короткий термін розробки, вона продовжувала користуватися зростаючою популярністю у все ще молодому світі веброзробки. У 1997 та 1998 роках PHP/FI мала декілька тисяч прихильників по всьому світу. Дослідження від Netcraft у травні 1998-го нарахувало близько 60'000 доменів, які містили у заголовках "PHP", вказуючи, що сервер-хост дійсно встановив його. На той час це дорівнювало приблизно 1% усіх доменів в Інтернеті. Незважаючи на ці разючі цифри, дорослішання PHP/FI досягало межі: хоча було кілька другорядних розробників, все ж його в основному розробляла одна особа.

Приклад #1 Приклад коду на PHP/FI

<!--include /text/header.html-->

<!--getenv HTTP_USER_AGENT-->
<!--ifsubstr $exec_result Mozilla-->
  О, ви використовуєте Netscape!<p>
<!--endif-->

<!--sql database select * from table where user='$username'-->
<!--ifless $numentries 1-->
  Шкода, та такого запису не існує.<p>
<!--endif exit-->
  Ласкаво просимо, <!--$user-->!<p>
  На вашому рахунку залишилося <!--$index:0--> кредитів.<p>

<!--include /text/footer.html-->

PHP 3

PHP 3.0 стала версією, з якою сучасна PHP дуже схожа. Виявивши, що PHP/FI 2.0 досі була неефективною, позбавленою функцій, необхідних для роботи програми електронної комерції, яку розробляли для університетського проекту, Енді Ґатменз та Зев Сураскі з Тель-Авіву, Ізраїль, почали ще одне повне переписування основного парсера у 1997-му. Звʼязавшись з Расмусом онлайн, вони обговорили різні аспекти поточного реалізації та подальшої переробки PHP. Прагнучи вдосконалити рушій і почати розвивати наявну базу користувачів PHP/FI, Енді, Расмус і Зев вирішили співпрацювати у розробці нової, незалежної мови програмування. Вона отримала нову назву, яка більше не означала обмежене особисте користування, що було закладено в назві PHP/FI 2.0. Вона була просто переназвана на "PHP", і стала розшифровуватися як рекурсивний акронім — "PHP: Hypertext Preprocessor".

Однією з найсильніших сторін PHP 3.0 була її масштабованість. Кінцевим користувачам було надано зрілий інтерфейс для багатьох баз даних, протоколів і API, а простота розширення самої мови привабила десятки розробників, які створювали для неї різноманітні модулі. Можливо, це і стало ключем до величезного успіху PHP 3.0. Інші основні можливості, наявні у PHP 3.0 — це підтримка обʼєктно-орієнтованого програмування та значно потужніший і продуманий синтаксис.

У червні 1998-го, завдяки зусиллям багатьох нових розробників з усього світу, новою Командою розробки PHP була представлена PHP 3.0, як офіційна наступниця PHP/FI 2.0. Жвава розробка PHP/FI 2.0, яка майже припинилася в листопаді попереднього року, так і не була завершена офіційно. Після близько девʼяти місяців з часу відкриття публічного тестування, коли було випущено офіційний реліз PHP 3.0, його вже було встановлено на понад 70'000 доменів у світі і не тільки в POSIX-сумісних операційних системах. Відносно невелика частка доменів повідомляли, що використовують PHP на серверах у Windows 95, 98, NT та Macintosh. На піку популярності PHP 3.0 було встановлено на приблизно 10% вебсерверів в Інтернеті.

PHP 4

Перед зимою 1998-го, невдовзі після офіційного випуску PHP 3.0, Енді Ґатменз і Зев Сураскі почали роботу над переписуванням ядра PHP. Задум полягав у покращенні швидкодії складних застосунків та у покращенні модульності кодової бази PHP. Ці застосунки були можливими завдяки новому функціоналу PHP 3.0 та підтримці широкого спектру сторонніх баз даних і API, але інтерпретатор PHP 3.0 не був розроблений для ефективного виконання таких складних програм.

Новий рушій з назвою "Zend Engine" (складається з імен Зев та Енді) повністю відповідав цим проектним цілям та був вперше представлений в середині 1999-го. Версія PHP 4.0, що базувалася на цьому рушієві та поєднала в собі багато нових можливостей, була офіційно випущена в травні 2000-го року, майже через два роки після своєї попередниці. Разом з значно збільшеною продуктивністю, PHP 4.0 містила такі нововведення, як підтримка багатьох вебсерверів, HTTP-сесії, буферизація виводу, більше безпечних способів обробки користувацького вводу та декілька нових мовних конструкцій.

PHP 5

PHP 5 була випущена в липні 2004-го року після тривалої розробки і кількох пробних випусків. В основі інтерпретатора лежав рушій Zend Engine 2.0 з новою обʼєктною моделлю і багатьма іншими можливостями.

До команди розробників PHP входять десятки розробників, а також десятки інших, які працюють над пов’язаними та допоміжними проектами PHP, такими як PEAR, PECL, документація, а також базова мережева інфраструктура з понад ста окремих вебсерверів на шести із семи континентів світу. Хоча це лише приблизні дані на основі статистики попередніх років, можна сміливо припустити, що тепер PHP встановлено на десятках або навіть сотнях мільйонів доменів у всьому світі.

add a note

User Contributed Notes

There are no user contributed notes for this page.
To Top