Мова веб-програмування php. Перша мова програмування. Який вибрати? Розчин, який «скріплює» інтернет

останнє оновлення: 20.10.2017

На сьогоднішній день PHP є найпоширенішою мовою веб-програмування. Переважна більшість сайтів та веб-сервісів в інтернеті написана за допомогою PHP. За деякими оцінками, PHP застосовується більш ніж на 80% сайтів, серед яких такі сервіси, як facebook.com, vk.com, baidu.com та інші. І така популярність не дивна. Простота мови дозволяє швидко та легко створювати сайти та портали різної складності.

PHP був створений в 1994 році датським програмістом Расмусом Лердорфом і спочатку був набором скриптів іншою мовою Perl. Пізніше цей набір скриптів було переписано інтерпретатор мовою Сі. І з самого виникнення PHP (скорочення від PHP: Hypertext Preprocessor – PHP: Препроцесор гіпертексту) представляв зручний набір інструментів для спрощеного створення веб-сайтів та веб-додатків.

Які переваги надає PHP?

    Для всіх найбільш поширених операційних систем (Windows, MacOS, Linux) є свої версії пакетів розробки на PHP, що означає, що ви можете створювати веб-сайти на будь-якій з цих операційних систем.

    PHP може працювати у зв'язку з різними веб-серверами: Apache, Nginx, IIS

    Простота та легкість освоєння. Як правило, вже маючи невеликий досвід у програмуванні на PHP, можна створювати прості веб-сайти

    PHP схожий на мову Сі, тому, знаючи Сі або одну з мов із сиподібним синтаксисом, буде простіше опанувати PHP

    PHP підтримує роботу з безліччю систем баз даних (MySQL, MSSQL, Oracle, Postgre, MongoDB та інші)

    Поширеність хостингових послуг та їхня дешевизна. Оскільки, як правило, хостингові компанії розміщують веб-сайти на PHP на веб-серверах Apache або Nginx, які працюють на одній із операційних систем сімейства Linux. І веб-сервери, і Операційні системина базі Linux безкоштовні, що знижує загальну вартість використання хостингу

    Постійний розвиток. PHP продовжує розвиватися, виходять нові версії, які несуть нові функції, адаптуючи мову програмування до нових викликів. І, як правило, перейти на нову версіюне складає труднощів.

    На даний момент (жовтень 2017) поточною стабільною версією PHP є PHP 7.1.

А тепер створимо перший маленький сайт на PHP. Але перед його створенням нам треба завантажити та встановити всі необхідні інструменти для розробки сайтів.

Мова PHP впевнено почувається в топах найпопулярніших мов програмування, однак у всього є кінець. Чи загрожує PHP виявитися не при справах, що може його замінити і яку мову ви вибрали б для створення сайту типу Facebook? На ці запитання відповіли користувачі сайту Quora.

Джордж Мауер, викладає JS

PHP вмирає, Java вмирає, C# вмирає, SQL вмирає, JavaScript вмирає, C вмирає. І все одно проектів цими мовами значно більше, ніж проектів усіма непереліченими мовами програмування разом узятих. Так, іноді нові тренди можуть витісняти щось усталене, але цей процес відбувається вкрай повільно. Зовсім не означає, що це найстаріше – погане.

Я не можу погодитися з тим, що PHP був найкращим варіантомдля створення Facebook. Творці цієї соціальної мережі насправді лише частково використовують PHP. В даний час можна сказати, що замість цієї мови вони мають власний діалект під назвою Hack. PHP був просто мовою, якою Цукерберг та інші розробники починали працювати над цим проектом.

Не можна сказати, що PHP був таким уже й поганим вибором. Все ж таки це мова, яка відповідає вимогам швидкої розробки додатків. А це в свою чергу є одним із ключових факторів для стартапу – у випадку з Facebook цей фактор відіграв вирішальну роль. Спочатку PHP був такою собі збірною колекцією скриптів. І це дозволяє легко перейти на нижчий рівень абстракції та створювати код на C тоді, коли дійсно існує потреба в оптимізації. Все це було ретельно вивчено та успішно впроваджено у більшість сучасних мов.

Будь ласка, викиньте зі своєї голови ідею, що соціальна мережавимагає чогось специфічного від мови програмування. Створення більшої частини коду буде стандартним і звичним. Так, є деякі проблемні області на кшталт зіставлення можливих і потенційних друзів, але схожі питання найчастіше вирішуються за допомогою спеціалізованого програмного забезпечення. Наприклад, графо-орієнтованих баз даних. Вам потрібно буде вкрай ретельно та акуратно будувати свою систему, а також відмінно розбиратися в області DevOps, але те саме доведеться робити і з іншими мовами. Замість ідеальної мови розробки для вас скоріше важливі досвідчені та знаючі розробники.

І це, власне, підводить мене до суті питання. PHP вкрай привабливий хоча б тому, що величезна кількість фахівців на даний момент добре його знають. Але ви навряд чи захочете, щоб хтось із подібних фахівців працював над вашим стартапом. Ви захочете найняти людей, які знають відразу кілька мов, людей, які мають сформований і обґрунтований світогляд. А такі люди у своїй більшості не особливо шанують PHP.

Уявіть: сиджу я в новенькому офісі, знятому для розробки мого щойно зареєстрованого стартапу, пялюсь на свій стіл з купою грошей, отриманих на розвиток проекту, і ламаю голову над тим, яку мову програмування вибрати. Я розумію, що це проблема десь 250-та у списку речей, які визначають успіх чи поразку мого майбутнього підприємства. І я починаю усвідомлювати, що дане рішеннянеобхідно приймати разом із командою розробників, якої у мене поки що немає. Тому сам починаю шукати варіанти мови, яка була б відносно широко поширена, легко б дозволяла розробникам переходити на нижчий рівень абстракції і, що найважливіше, якою б у мене були знайомі розробники - найкращі у своїй справі.

Наразі такою мовою є Elixir. Він базується на віртуальній машині Beam є досить близьким родичем мови Erlang, який протягом кількох десятиліть відмінно демонстрував себе в ряді проектів. Крім того, ця мова показує просто неймовірні результати щодо продуктивності.

Іншим чудовим вибором може стати мова Go. Головним чином це мова низького рівня, але нею можна робити все те ж, що і мовами високого рівня. Нехай мені й не подобаються деякі рішення щодо його структури, але він, так чи інакше, заслуговує на увагу.

Ще одним варіантом може стати Clojure. Існує ймовірність, що знайти розробників на цій мові буде не так просто, але з урахуванням того, що ця мова - прямий нащадок LISP, я можу щиро назвати її неймовірно потужною і дає безліч варіантів розвитку.

Декілька важливих зауважень:

  • придивіться до F# на фреймворку.Net або навіть до всюдисущого C#. Якщо ви все ж таки оберете останній варіант, то будьте готові до того, що для створення відмінної команди вам доведеться переглянути і просіяти набагато більше резюме;
  • за допомогою Scala можна створювати вражаючі речі;
  • Node.js. Я просто мушу згадати Node.js. Особисто я вважаю, що на даний момент на вершині ланцюжка стоїть Javascript, але Node вже довгий час також входить до списку мов, що досить широко використовуються. Крім того, є велика кількістьвисококваліфікованих спеціалістів.

PHP (Hypertext PreProcessor) – один із найпопулярніших інструментів веб-програмування на стороні сервера. Робота PHP у самому простому варіантізводиться до обробки http запиту клієнта. Обробка запиту, своєю чергою, полягає у програмному формуванні гіпертексту відповідно до параметрами запиту, після чого отримана розмітка повертається клієнту. Коли клієнт (інтернет браузер) запитує звичайну статичну інтернет сторінку (найчастіше з розширенням html), сервер як відповідь повертає йому вміст цієї сторінки без змін "як є". Якщо запитується сторінка php, то в процесі обробки запиту вміст зазначеної сторінки спочатку обробляється інтерпретатором PHP, і тільки потім результат цієї обробки відправляється клієнту.

Іншими словами, PHP – це препроцесор гіпертексту, що й відбито у його назві. Препроцесор тому що остаточної обробки гіпертекст піддається вже за клієнта, результат якої ми бачимо у вікні браузера (процесором гіпертексту є сам браузер). Можна сказати, що PHP – це генератор гіпертексту, оскільки здебільшого його робота – це програмна генераціяза вмістом бази даних або за будь-якою іншою структурованою інформацією, розміщеною на сервері. Абревіатура виглядає як PHP, а не як, наприклад, HPP чи інакше, оскільки спочатку розшифровувалась як Personal Home Page Tools- Інструментарій для створення персональних інтернет сторінок. Таким чином, перший варіант розшифровки PHP відбивав його призначення, а нинішній – принцип роботи.

PHP – це мова програмування, що підтримує практично всі: змінні, умовні оператори, цикли, функції і т.д. PHP – це об'єктно-орієнтована мова програмування- Він підтримує, а також звичне успадкування на рівні класів. PHP – це мова веб-програмування, оскільки вона в першу чергу створена для розробки динамічних інтернет сайтів і тому містить велику кількість готових рішень, що застосовуються у цій сфері, таких як:

  • обробка та вилучення параметрів http запитів GET та POST;
  • формування та відправка http заголовків;
  • інфраструктура для зберігання даних сеансу;
  • програмні сервіси для роботи з cookies;

    cookies- текстові дані, що зберігаються браузером на комп'ютері клієнта, які найчастіше містять параметри доступу (логін та пароль) або персональні налаштування користувача. Cookies формуються браузером та автоматично, в ході кожного віддаленого зверненняпересилаються серверу у заголовках http запиту.


  • робота з файлами по FTP протоколу;
  • робота з базами даних за допомогою ;
  • підтримка
  • підтримка HTTP авторизації;
  • обмін повідомленнями по електронній поштіі багато іншого.

У цьому розділі я планую коротко розглядати ключові моментизастосування PHP для створення нескладних веб-застосунків. Матеріали будуть організовані у декілька розділів, по кожному з яких будуть наведені приклади з їх вихідним кодом. Для самостійних експериментів необхідний будь-який інший сайт, до якого у вас є повний доступ, і на сервері якого встановлений PHP.

Основи програмування на PHP

Додавання в розмітку коду PHP та результат роботи препроцесора гіпертексту

Програмний код PHP додається безпосередньо до будь-якого місця HTML розмітки. Самої HTML розмітки може і не бути зовсім, а вихідний кодсторінки може бути представлений лише фрагментом програми PHP. У будь-якому випадку для вставки PHP потрібно використовувати спеціальний тег і всередині нього розміщувати текст програми. Робиться це так:

код програми ?>

Під час роботи PHP інтерпретатора секціїзамінюються на розмітку, що формується в результаті роботи розміщеного в них програмного коду. Для виведення результату роботи препроцесора використовується оператор echo, аргументами якого може бути константи, змінні, функції чи різноманітних висловлювання, а результатом – текст. Найпростіший варіант може виглядати так:

"; ?>

Якщо ви відкриєте вихідний код отриманої сторінки в браузері, то ніякого PHP там не буде (якщо, звичайно, на сервері встановлений інтерпретатор PHP). Сенсу в такому використанні оператора echo не дуже багато. Вся принадність PHP у тому, що формований HTML може залежати від параметрів запиту, вмісту бази даних, політики безпеки та багато іншого. Аналіз та обробка всього цього виконується з використанням знайомих практично всім, таких як цикли, умови, функції тощо. Забігаючи вперед, наведу невеликий приклад програми на PHP з використанням циклу та умовного оператора, з тим, щоб початкове уявлення про препроцесор гіпертексту стало більш повним. Наступна програмавиводить значення факторіалу чисел від 1 до 9.

Приклад програми на PHP Ця розмітка сформована програмно інтерпретатором PHP."; $f=1; for ($i=1; $i<10; $i++) { if ($i>1) $f=$f*$i; echo $i,"!=",$f,"
"; } ?>


Результат її роботи виглядатиме в браузері приблизно так:

1!=1 2!=2 3!=6 4!=24 5!=120 6!=720 7!=5040 8!=40320 9!=362880

Організація програми з декількох файлів PHP

Короткий умовний або тернарний оператор

Нижче наведено загальний вигляд умовного оператора присвоєння з використанням тернарного оператора:
$результат = умова? вираз якщо true: вираз якщо false;

Приклад:
$result = ($a>5)? $a+$b: $a-$b;

Якщо a більше 5 то змінної result присвоюється значення a + b, інакше a-b.

Альтернатива оператора if з великою кількістюконструкцій elseif. Виконання операторів починається з тієї секції case , зі значенням якої збігається значення виразу і продовжується по всіх наступних case , доки не зустрінеться команда break - завершити виконання. Секція default – альтернатива секції else в умовному операторі.

Switch ( вираз) ( case значення 1: оператор 1; case значення 2: оператор 2; case значення 3: оператор 3; default: оператор, що виконується “за замовчуванням”; ) do тіло циклу; while ( умова);

Приклад той самий:

$i=2; $ f = 1; do ( $f=$f*$i; $i++; echo $i,"!=",$f,"
"; ) while ($i<10);

Докладніше про цикл do ... whileчитаємо.

Перебір елементів в масиві або оператор foreach

Про масиви ще буде сказано кілька слів окремо, а нижче конструкція для перебору його елементів у циклі:

Foreach ( масив as $ елемент) вираз, де щось робимо зі змінною $елемент;

$values ​​= array("for", "while", "do", "foreach"); echo "Цикли в php:","
"; foreach ($values ​​as $operator) echo $operator, "
";

Цикли та оператор вибору в PHP, як і в багатьох інших мовах програмування підтримують інструкції break– дострокового завершення циклу та continue- Дострокового завершення поточної ітерації циклу (перехід до початку циклу). Докладніше про них читайте.

Від автора:чи потрібно знати мову програмування PHP? Якщо збираєтеся пов'язати свою долю із сайтобудуванням, то доведеться. Навіть якщо не хочеться! Чому так? На всі поширені «чому», пов'язані з цією мовою, ми спробуємо відповісти у нашому матеріалі.

Розчин, який «скріплює» інтернет

Саме так охарактеризував PHP один мій знайомий, який займається створенням інтернет-ресурсів вже понад десяток років. І він має рацію, напевно, відсотків на 200% (а може й більше).

Сама історія виникнення цієї мови говорить про те, що вона була народжена, щоб «зліпити» нинішню версію Мережі, до якої ми так звикли. Напевно, тому деякі так і не можуть усвідомити його міць навіть після вивчення основ програмування PHP.

Доводити роль PHP у створенні інтернет – річ невдячна. Тут, як-то кажуть, можуть почати виступати прихильники інших серверних мов. Мовляв, "препроцесор гіпертексту" (так розшифровується абревіатура PHP) вже віджив своє. Багато його функцій реалізовані навіть у …

Ну, кричати і розмахувати руками, звеличуючи свою мову програмування, якою спеціалізуєшся, справа нехитра. Але найкращим «доказом», що вказує на затребуваність PHP, є його поширеність.

Наступний рейтинг програмних мов, складений фахівцями TIOBE влітку минулого року, говорить нам про те, що PHP вже протягом кількох років постійно входить у топ. Ви ще не побігли шукати з мови програмування PHP самовчитель? Скоро побіжіть.

Якщо вас цікавить, чому так скаканув Java, то відповім: завдяки мобільній операційній системі Android, програми під яку розробляються цією мовою.

Власні граблі

Ще на початку двохтисячних я займався пошуками у сфері програмування. Усе намагався з'ясувати, якої «партії» розробників варто приєднатися, вивченню якої дисципліни присвятити своє життя.

Як мову програмування PHP для початківців, я не розглядав у принципі. Він здавався надто заплутаним. Ось інша справа ASP.NET: комерційна мова, заснована на C#. Ох які повітряні замки я тоді будував! І для цього були всі передумови:

Технологія розроблена таким "гігантом думки", як Microsoft.

Наявність спеціалізованого програмного забезпечення – потужного редактора Visual Studio.

Обширна та добре описана документація.

Надія на здорове майбутнє.

ASP.NET, на відміну від PHP, давався мені набагато легше. Visual Studio автоматизувала велику кількість операцій із написання серверних скриптів. Наприклад, завдяки чудовому візуальному редактору на створення веб-сторінки витрачалося лише кілька хвилин. Шляхом перетягування елементів керування та прописуванням у редакторі їх стилів можна було зробити сайт менше ніж за годину!

А ось мова програмування PHP з нуля мені одразу не далася. Чесно, я намагався з ним потоваришувати (треба ж було, якось складати іспит). Але щодо його основ він здався мені черствим і навіть холодним.

Загалом, я зайнявся ASP.NET. Спорядив перший свій сайтик. Ну, в середовищі розробки начебто все функціонує. Кросбраузерність перевірив у кількох популярних браузерах. Думаю, настав час і «повоевать». Так би мовити, показати своє «дітище» всій країні (як мінімум). Ось тут і виявилися граблі».

Мої спроби знайти в Рунеті хостинг з підтримкою ASP.NET так і не мали успіху. Було, звичайно, кілька платних майданчиків, але ціни за розміщення на них сайту були не «студентські».

Так-сяк нарив я в «Буржунеті» безкоштовний варіант хостингу (до речі, спонсорованого Microsoft). Ну поклацав, насолодився широтою своєї думки, а далі справа не пішла. І все через те, що більшість сайтів вже тоді робилася на PHP.

Після того, як визначитеся і точно зрозумієте, що готові вивчати мову програмування PHP, пошукайте самовчитель для новачків «під себе». Головне, щоб ви розуміли, що автор видання хоче донести до своїх читачів. Відразу приготуйтеся відвалити хорошу суму за якісну літературу.

Але краще застосовувати комплексний підхід - додати ще й тямущий. Це дозволить відточувати своє вміння одразу на практичних прикладах. І моя вам порада – менше займайтеся копіпастом коду! Чому зараз поясню.

Коли ви набиратимете приклади скриптів самостійно, то швидше звикніть і запам'ятайте особливості синтаксису PHP. Щодо літератури, то вибирайте самовчитель з основами програмування на PHP. І бажано, щоб автор викладав код усіх прикладів на своєму ресурсі в Мережі.

Також одразу перед початком навчання скачайте та встановіть Open Server. Цей програмний пакет включає всі середовища, які будуть потрібні вам для написання і тестування коду.

Ну, на сьогодні дозвольте вклонитися. Вибачте (якщо) за надмірну оглядовість змісту статті, але це потрібно для розуміння особливостей даної мови (все-таки серверний). Бажаю вам якнайшвидше осягнути основи мови програмування PHP і приступити до справжнього кодування!

«СЕРЕДНЯ ЗАГАЛЬНООСВІТНЯ ШКОЛА №5»

Дослідницька робота на тему:

"Мова Web-програмування - PHP"

Виконав: учень

9 «А» класу

Рябов Артем

Педагог: Абдразакова О.К.

ВСТУП………………………………………………………………………………….…...3

Глава 1. Вступ до PHP і MySQL………………………..……………..…….………….5

1.1. Що таке PHP?.………………………………………………………………………5

1.2. Можливості PHP…………………………………………………………………….5

1.3. Коротка історія PHP……….…...…………………….……………………...…......6

1.4. Чому потрібно обирати PHP ………………………………………………………7

1.5. Що таке MySQL ……………………………………………………………………..7

1.6. Можливості MySQL…………………………………………………………………8

Розділ 2. Приклади використання PHP……………………………………………………...9

2.1. Робота з формами……………………………………………………………………..9

2.2. Робота з MySQL (збереження даних у базі даних)...…………………………11

2.3. Робота з MySQL (отримання даних з бази даних).…………………………13

ВИСНОВОК………………………………………………………………………..……….15

БІБЛІОГРАФІЧНИЙ СПИСОК …………………………………………………...…16

ДОДАТКИ………………………………………………………………………………...17

Вступ

PHP – мова програмування, що використовується на стороні WEB-сервера для динамічної генерації HTML-сторінок. Про це говорить і розшифровка його назви: PHP – Personal HyperText Processor.

PHP - одна з небагатьох мов програмування, створених спеціально для розробки веб-додатків. Тому він включає всі функції, необхідні саме для роботи на веб-сервері, і при цьому позбавлений надмірності, властивої багатьом його конкурентам.

Дуже приємна особливість PHP - те, що його команди включаються у звичайні HTML-сторінки за допомогою спеціальних тегів, які змушують PHP-машину виконувати на сервері потрібні дії. Програмам PHP не потрібні спеціальні CGI-директорії з особливими правами доступу. Більше того, на одній сторінці можна довільно чергувати "простий" HTML та PHP-код.

PHP не залежить від платформи. PHP чудово інтегрується у всі популярні веб-сервери: Apacce та IIS, Zens та Netscape Enterprise Server, працює під Windows та OS/2, MacOS та практично всіма UNIX-подібними системами. Як наслідок - PHP працює практично у всіх хостерів, що дозволяють власні скрипти, що виконуються.

Чудова особливість PHP – його інтегрованість практично з усіма сучасними інтернет-технологіями. PHP підтримує більшість сучасних веб-протоколів: IMAP, FTP, POP, XML, SNMP та інші. PHP чудово працює з базами даних. Важко знайти СУБД, підтримка якої була б реалізована в PHP. MySQL та MS SQL Server, PostgreSQL та Oracle, Sybase та Interbase... Один тільки перелік баз даних, що підтримуються PHP, займе, мабуть, цілий екран.

PHP включає величезну кількість вбудованих функцій: обробки рядків і масивів, роботи з файловою системою і з HTTP, електронною поштою, датою і часом, кирилицею та іншими національними алфавітами... Коли я вперше почав програмувати на PHP, то був просто вражений великою кількістю вбудованих функцій! Завдяки їм багато алгоритмів, що вимагають у більшості мов написання програмного коду розміром у кілька екранів, реалізуються на PHP однією командою (точніше, викликом однієї функції).

Сучасні тенденції розвитку мов програмування не оминули і PHP. Кошти об'єктно-орієнтованого програмування з'явилися ще PHP3. А в об'єктній моделі PHP4 у повному обсязі реалізовано класичні поняття об'єктно-орієнтованого програмування: успадкування, інкапсуляція та поліморфізм.

Все вищевикладене дозволяє без будь-якої натяжки назвати PHP безперечним лідером серед мов веб-програмування.

Ціль дослідження– Вивчити та подивитися приклади виконання скриптів PHP

Об'єкт дослідження-Мова PHP, Бази даних MySQL.

Предмет дослідження– функціональне значення та актуальність мови.

Гіпотеза дослідженняполягає в тому, що ця мова дуже проста, легко інтегрується в HTML, у зв'язці PHP+MySQL+HTML набагато перевершує простий HTML.

Виходячи з гіпотези, сформовано такі завдання :

Завдання:

Вивчити особливості та можливості мови PHP;

Порівняти функціонал PHP та HTML;

Ознайомитись з базами даних MySQL;

Опрацювати отримані результати, зробити висновки.

Теоретичною основою представленого матеріалу є історичні дані, представлені у довідниках, матеріал з Інтернету.

Методи дослідження:у процесі проведення досліджень застосовувалися опис, аналіз літератури на тему, вивчення деяких змінних.

Практична значущість дослідження: цей матеріал можна використовувати вчителям та учням для подальшого, поглибленого вивчення цієї мови.

Структура та зміст роботи включають:

Вступну частину, в якій обґрунтовано вибір та актуальність теми.

Розділ 1. «Вступ до PHP та MySQL» містить 6 розділів. У першому розділі йдеться про пояснення, що таке PHP. У другому описано його можливості. У третьому розділі розділу описується історія мови PHP. У четвертому – сказано чому варто вибирати саме цю мову програмування. П'ятий та шостий розділи присвячені інформації про бази даних MySQL.

Розділ 2. "Приклади використання PHP"складається із 3 розділів. У першому розділі показано як у PHP легко обробляти дані з HTML – форм. У другому ми будемо заносити інформацію до бази даних. У третьому розділі отримуватимемо інформацію з баз даних.

Висновокмістить основні висновки на тему, що підтверджують висунуту гіпотезу дослідження.

Глава 1. Вступ до PHP та MySQL

1.1. Що таке PHP?

PHP – це скрипт-мова (scripting language), що вбудовується в HTML, який інтерпретується та виконується на сервері. Найпростіше це показати на прикладі:

приклад

Після виконання цього скрипту ми отримаємо сторінку, де буде написано:

Hi, I'm a PHP script!(Див. додаток 1)

Дуже просто і марно.

Основна відмінність від CGI-скриптів, написаних іншими мовами, типу Perl або C - це те, що в CGI-програмах ви самі пишете виведений HTML-код, а використовуючи PHP - ви вбудовуєте свою програму в готову HTML-сторінку, використовуючи відкриваючий і закриває теги (у прикладі).

Відмінність PHP від ​​JavaScript, полягає в тому, що PHP-скрипт виконується на сервері, а клієнту передається результат роботи, тоді як JavaScript-код повністю передається на клієнтську машину і тільки там виконується.

Любителі Internet Information Server знайдуть, що PHP дуже схожий на Active Server Pages (ASP), а ентузіасти Java скажуть, що PHP схожий на Java Server Pages (JSP). Всі три мови дозволяють розміщувати код, який виконується на Web-сервері, всередині HTML сторінок.

1.2. Можливості PHP

У кількох словах - на PHP можна зробити все, що можна зробити за допомогою CGI-програм. Наприклад: обробляти дані з форм, генерувати динамічні сторінки, отримувати та посилати куки (cookies).

Крім цього PHP включена підтримка багатьох баз даних (databases), що робить написання Web-додатків з використанням БД до неможливості простим.

Ось неповний перелік підтримуваних БД:

Adabas D InterBase Solid
dBase mSQL Sybase
Empress MySQL Velocis
FilePro Oracle Unix dbm
Informix PostgreSQL

На додаток до всього PHP розуміє протоколи IMAP, SNMP, NNTP, POP3 і навіть HTTP, а також має можливість працювати з сокетами (sockets) та спілкуватися за іншими протоколами.

1.3. Коротка історія PHP

Початком PHP можна вважати осінь 1994, коли Расмус Лердорф (Rasmus Lerdorf) вирішив розширити можливості своєї Home-page (Домашньої сторінки) і написати невеликий движок для виконання найпростіших завдань. Такий двигун був готовий до початку 1995 року і називався Personal Home Page Tools. Вмів він не дуже багато – розумів найпростішу мову і лише кілька макросів.

До середини 1995 року з'явилася друга версія, яка називалася PHP/FI Version 2. Приставка FI – приєдналася з іншого пакету Расмуса, який умів обробляти форми (Form Interpritator). PHP/FI компілювався всередину Apache та використовував стандартний API Apache. PHP скрипти виявилися швидше аналогічних CGI - скриптів, так як серверу не було необхідності породжувати новий процес. Мова PHP за можливостями наблизилася до Perl, найпопулярнішої мови для написання програм CGI. Була додана підтримка багатьох відомих баз даних (наприклад, MySQL та Oracle). Інтерфейс до GD - бібліотеки, дозволяв генерувати картинки на льоту. З цього моменту почалося широке поширення PHP/FI.

Наприкінці 1997 року Зеев Сураскі (Zeev Suraski) і Енді Гутманс (Andi Gutmans) вирішили переписати внутрішній двигун, з метою виправити помилки інтерпретатора і підвищити швидкість виконання скриптів. Через півроку, 6 червня 1998 вийшла нова версія, яка була названа PHP 3. До літа 1999 PHP 3 був включений в кілька комерційних продуктів. За даними NetCraft на листопад 1999 р. PHP використовувався в більш ніж 1 млн. доменах.

1.4. Чому потрібно обирати PHP

Розробникам Web-додатків немає необхідності говорити, що web-сторінки - це текст і картинки. Цікавий сайт повинен підтримувати певний рівень інтерактивності з користувачем: пошук інформації, продаж продуктів, конференції тощо. Зазвичай усе це реалізувалося CGI-скриптами, написаними на Perl. Але CGI-скрипти дуже погано масштабуються. Кожен новий виклик CGI вимагає від ядра породження нового процесу, а це займає процесорний час і витрачає оперативну пам'ять. PHP пропонує інший варіант - він працює як частина Web-сервера, і цим схожий на ASP від ​​Microsoft.