ВСТУП
Сьогодні Всесвітня павутина (World Wide Web) є безпрецендентною за своїми розмірами, багатоплановістю, динамічністю, доступністю, розподіленістю та темпами зростання обсягів контенту інформаційним ресурсом. Кількість користувачів Інтернету є надзвичайно великою (близько мільярда) і продовжує невпинно зростати.
Впродовж останніх років у розвитку Інтернету можна виділити ряд тенденцій, які стали визначальними. Їх підгрунтям є нові технології та підходи до розробки, підтримки, використання Веб-ресурсів, обміну інформацією між ними тощо.
Попит на інформацію і інформаційні послуги забезпечує розвиток, розповсюдження і все більш ефективне використання інформаційних технологій. Під впливом нових інформаційних технологій відбуваються корінні зміни в технології управління, а саме, автоматизуються процеси обгрунтування і ухвалення рішень, автоматизуються організація їх виконання, підвищується кваліфікація і професіоналізм фахівців, зайнятих управлінською діяльністю.
Відповідно до визначення, прийнятого ЮНЕСКО [1], інформаційна технологія - це комплекс взаємозалежних, наукових, технологічних, інженерних дисциплін, що вивчають методи ефективної організації праці людей, зайнятих опрацюванням і збереженням інформації; обчислювальну техніку і методи організації і взаємодії з людьми і виробничим устаткуванням, практичні додатки, а також пов'язані з усім цим соціальні, економічні і культурні проблеми.
Так, наприклад, використання мережі Інтернет в діяльності підприємства дає можливість підвищити конкурентоспроможність товарів, розширити ринки збуту, знаходити нових постачальників, посередників та споживачів. Це відповідає бізнес-процесам залучення клієнта, вивчення його потреб, самого акта вчинення правочину (транзакція) і післяпродажного обслуговування, тобто система повинна охоплювати всі без винятку бізнес-процеси взаємодії компанії з клієнтом. Таку систему функціонування може забезпечити використання Інтернет - технологій. [4]
Серед властивостей інформаційних технологій, що мають найважливіше значення для розвитку сучасного суспільства та усіх сфер людської діяльності, фахівці відзначають шість найбільш важливих [3,6] :
інтернет-технології дають можливість активізувати інформаційні ресурси суспільства та підприємств, які сьогодні є основним фактором розвитку. Дослідження показують, що грамотне використання інформаційних ресурсів значно економить природні ресурси нашої планети;
інтернет-технології дозволяють оптимізувати (в першу чергу автоматизувати) інформаційні процеси. У багатьох розвинених країнах основна частина працездатного населення бере участь в обробці, зберіганні і передачі інформаційних продуктів і послуг;
інтернет-технології організовують інформаційну взаємодію між людьми і активно використовуються при підготовці та розповсюдженні масової інформації. Завдяки їм, нарешті вирішено питання поширення інформації, передачі інформаційного продукту. Межі більше не мають впливу в інформаційній сфері;
інтернет-технології надають колосальний вплив на інтелектуалізацію суспільства та економіки.
інформаційні технології відіграють ключову роль в отриманні та накопиченні нових знань, використання яких підвищує рівень культури і освіти як окремої нації, так і на території всієї планети;
вирішальним фактором для розвитку суспільства на
сучасному етапі є те, що використання Інтернет-технологій може надати дієвий
вплив на рішення головних проблем глобальних питань людства.
РОЗДІЛ 1. ТЕОРЕТИЧНА ЧАСТИНА
1.1 Поняття мови РНР
Офіційний сайт мови PHP [7] дає для опису самої мови лише два речення: «PHP - це популярна скриптова мова загального призначення, яка особливо підходить для веб-розробки. Швидка, гнучка і прагматична, PHP справиться зі всім, починаючи з вашого блогу і закінчуючи найпопулярнішими сайтами у світі». Так що ж таке PHP?(англ. PHP:Hypertext Preprocessor - PHP: гіпертекстовий препроцесор), попередньо: Personal Home Page Tools - скриптова мова програмування, яка була створена для генерації HTML-сторінок на стороні веб-серверу. [8] є однією з найпоширеніших мов, що використовуються у сфері веб-розробок. Іншими такими мовами вважаються Java, .NET, Perl, Python, Ruby. PHP підтримується переважною більшістю хостинг-провайдерів. Однією з переваг PHP вважається її кросплатформеність, а також відносна невибагливість до апаратного і програмного забезпечення як для розробника, так і кінцевого користувача.
Проект за яким був створений PHP - проект з відкритими програмними кодами. PHP інтерпретується веб-сервером в HTML-код, який передається на сторону клієнта. На відміну від таких скриптових мов програмування, як JavaScript, користувач не має доступу до PHP-коду, що є перевагою з точки зору безпеки але значно погіршує інтерактивність сторінок. Але ніщо не забороняє використовувати РНР для генерування і JavaScript-кодів які виконаються вже на стороні клієнта.[8]
Мова РНР здаватиметься знайомою програмістам, що працюють в різних областях. Багато конструкцій мови запозичені з С, Perl. Код РНР дуже схожий на той, який зустрічається в типових програмах на С або Pascal. Це помітно знижує початкові зусилля при вивченні РНР. PHP - мова, що поєднує переваги Perl і С і спеціально спрямована на роботу в Інтернеті, мова з універсальним і зрозумілим синтаксисом.[2]
І хоча PHP є досить молодою мовою, вона здобула таку популярність серед web-програмістів, що на даний момент є однією з провідних мов для створення web-додатків (або ж скриптів).
Якщо розглядати аспект системи типізації, то PHP є мовою програмування з динамічною типізацією.[8] Наприклад, немає необхідності явного визначення типу змінних, хоча така можливість існує. За необхідності можливе приведення змінної до певного типу за допомогою відповідних конструкцій мови. Це може знадобитись, якщо зважити, що значення змінної можуть трактуватись по-різному в залежності від її типу. Також можливе визначення типу відповідної змінної на певному етапі виконання сценарію. Імена змінних чутливі до регістру символів.
Важливо розуміти, що PHP - це не мова опису web-сторінок, яка визначає, як повинна виглядати інформація у вікні Web-оглядачі. Це завдання виконує мова HTML - англ. HyperText Markup Language - мова розмітки гіпертексту. Тому, казати, що PHP є нащадком мови HTML або ж її більш сучасним замінником є неправильно. Переважно більша частина функціональності сайту, його інтерактивності і саме тієї родзинки, що відрізняє його від інших, реалізовується скриптовими мовами.
Дехто скаже, що будь-яка Web-сторінка і так
являєтся інтерактивною, оскільки реагує на клацання по гіперпосиланнях. Але це
не інтерактивність, а стандартна поведінка, задана HTML. Інтерактивність - це
коли у відповідь на переміщення курсора миші за ним "біжить"
картинка, коли при клацанні на фотографії внизу з'являється її опис, коли прямо
на сторіночці "цокає" цифровий годинник. Ось це справжня
інтерактивність. І можлива вона за допомогою таких скриптових мов програмування
як PHP.
1.2 Історія розвитку PHP
Історія PHP починається з 1995 року, коли Расмус Лердорф (Rasmus Lerdorf) створив простий додаток мовою Perl, що аналізував відвідування користувачами його резюме на веб-сайті. Потім, коли цим додатком вже користувалися декілька чоловік, а число охочих одержати його постійно збільшувалося, Лердорф назвав своє творіння Personal Home Page Tools версія 1 і виставив для вільного завантаження. З цієї миті почався небувалий зліт популярності PHP. [8]
Як це завжди буває, терміново було потрібно доопрацювання і нові доповнення. Для їхньої реалізації Расмус створює нову версію пакету, тепер уже написану С. Отриманий таким чином інструмент набуває робочої назви PHP/FI (Personal Home Page / Forms Interpreter - Персональна Домашня сторінка / Інтерпретатор Форм), надалі він також буде відомий під назвою PHP 2. [2] Ця версія вже більшою мірою схожа на сьогоднішній PHP. Вона мала синтаксис і спосіб іменування змінних в стилі мови Perl, можливість вбудовування PHP операторів в html-код сторінки, автоматичну інтерпретацію форм, інтеграцію з базами даних. До 1997 року PHP використовувався вже на 50,000 доменах (не більше 1% всіх веб-серверів).[8]ипт мова програмування php
У тому ж 1997 році до проекту PHP підключилися Зеєв Сураський (Zeev Suraski) і Енді Гутманс (Andi Gutmans). Ці студенти одного з ізраїльських університетів намагалися використовувати PHP/FI для одного з комерційних університетських проектів. При цьому їм довелося зіткнутися з багатьма труднощами і обмеженнями цієї технології. Вивчаючи початковий код PHP 2, Зеєв і Енді дійшли висновку про необхідність доопрацювання, а точніше істотної переробки PHP, особливо в плані синтаксису мови. Протягом декількох місяців вони блискуче справилися з цим завданням.
Закінчивши роботу Зеєв і Енді домовились з Расмусом про співпрацю в галузі розвитку та вдосконалення мови. З цієї миті з'являється PHP Group - група однодумців, що працюють над розвитком технології PHP. Одержаний продукт з’явився на світ у 1998 році під назвою PHP 3.4 вийшов в 2000 році. На додаток до збільшення продуктивності, PHP 4 мав нові можливості щодо підтримки сесій, буферизацію виводу, безпечні способи обробки інформації, що вводиться користувачем, і нові мовні конструкції. З виходом 4 версії PHP став використовуватися вже на більш ніж 20% доменів Інтернету.
За час з 2000 по 2004 рік продовжувалися активні роботи з покращення 4 версії, але майже відразу PHP Group приступила до продумування можливостей нової версії. В першу чергу було вирішено підсилити об'єктні можливості мови, що дозволяло використовувати його для реалізації масштабних проектів. Роботи із створення версії 5 велися тривалий час, в них брало участь рекордна кількість фахівців, зокрема Стерлінг Хьюз (Шаблон:Lang en:) і Маркус Бергера (Шаблон:Lang en:).[8]
У липні 2004 року виходить офіційний реліз PHP 5. В першу чергу, як і планувалося, було перероблено весь механізм роботи з об'єктами. І якщо в попередніх версіях об'єктно-орієнтоване програмування на PHP було можливе в мінімальному ступені, а тому і використовувалося на практиці не часто, то PHP 5 володіє прекрасним потенціалом реалізації об'єктного програмування. Окрім цього, PHP збагатився рядом цінних розширень для роботи з XML, різними джерелами даних, генерації графіки і інше.
Серед інших украй корисних доповнень в PHP 5 слід зазначити нову схему обробки виключень. Конструкція try/catch/throw дозволяє весь код обробки помилок локалізувати в одному місці сценарію.
Очевидно, що, на цьому історія PHP не
закінчується. Слід очікувати наступних версій мови із розширеними можливостями.
1.3 Можливості і використання PHP
У PHP поєднуються дві найпопулярніші парадигми програмування - об'єктна і процедурна. У PHP 4 більш повно підтримується процедурне програмування, але є можливість писати програми і в об'єктно-орієнтованому стилі. Вже в перших пробних версіях PHP 5 більшість недоліків у реалізації об'єктно-орієнтованої моделі мови, існуючих в PHP 4, усунені. Таким чином, можна вибрати найбільш звичний стиль роботи.
Велика різноманітність функцій PHP дають можливість уникнути написання багаторядкових призначених для користувача функцій на C або Pascal. Серед можливостей, і багато в чому переваг мови PHP виділяють наступні:[5]
Велика різноманітність функцій PHP дають можливість уникнути написання багаторядкових призначених для користувача функцій на C або Pascal.
Наявність інтерфейсів до багатьох баз даних:
в PHP вбудовані бібліотеки для роботи з MySQL, PostgreSQL, mSQL, Oracle, dbm, Hyperware, Informix, InterBase, Sybase.
через стандарт відкритого інтерфейсу зв'язку з базами даних (Open Database Connectivity Standard - ODBC) можна підключатися до всіх баз даних, до яких існує драйвер.
Традиційність;
Наявність вихідного коду та безкоштовність;
Стратегія Open Source, і розповсюдження початкових текстів програм в масах, безсумнівно справили благотворний вплив на багато проектів, в першу чергу Linux, хоч і успіх проекту Apache сильно підкріпив позиції прихильників Open Source. Сказане відноситься і до історії створення РНР, оскільки підтримка користувачів зі всього світу виявилася дуже важливим чинником в розвитку проекту РНР.
Ухвалення стратегії Open Source і безкоштовне розповсюдження початкових текстів РНР надало неоціниму послугу користувачам. Додатково, користувачі РНР по всьому світу є свого роду колективною службою підтримки, і в популярних електронних конференціях можна знайти відповіді навіть на найскладніші питання.
Ефективність є також дуже важливим чинником при програмуванні для середовищ розрахованих на багато користувачів, до яких належить і web. Важливою перевагою PHP є те, що ця мова належить до інтерпретованих. Це дозволяє обробляти сценарії з достатньо високою швидкістю. За деякими оцінками, більшість PHP-сценаріїв (особливо не дуже великих розмірів) обробляються швидше за аналогічні їм програми, написані на Perl. Проте, щоб не робили розробники PHP, виконувані файли, отримані за допомогою компіляції, працюватимуть значно швидше - в десятки, а іноді і в сотні разів. Але продуктивність PHP цілком достатня для створення цілком серйозних web-додатків.
Якщо говорити про можливості сьогоднішнього PHP, то вони виходять далеко за рамки тих, що були реалізовані в його перших версіях. За допомогою PHP можна створювати зображення, PDF- файли, флеш-ролики, в нього включена підтримка великого числа сучасних баз даних, вбудовані функції для роботи з текстовими даними будь-яких форматів, включаючи XML, і функції для роботи з файловою системою. PHP підтримує взаємодію з різними сервісами за допомогою відповідних протоколів, таких як протокол управління доступом до директорій LDAP, протокол роботи з мережевим обладнанням SNMP, протоколи передачі повідомлень IMAP, NNTP і POP3, протокол передачі гіпертексту HTTP і т.д.[2]
У першу чергу PHP використовується для створення скриптів, що працюють на стороні сервера, для цього його, власне, і придумали. Але є й інші області, де може використовуватися PHP. Всього виділяють три основні області застосування PHP[5].
Перша область - це створення додатків (скриптів), які виконуються на стороні сервера. PHP найбільш широко використовується саме для створення такого роду скриптів. Для того щоб працювати таким чином, знадобиться PHP - парсер (тобто обробник php-скриптів) і web-сервер для обробки скрипта, браузер для перегляду результатів роботи скрипта, ну, і, звичайно, який-небудь текстовий редактор для написання самого php-коду.
Друга область - це створення скриптів, що виконуються в командному рядку. Тобто за допомогою PHP можна створювати такі скрипти, які будуть виконуватися, незалежно від web-сервера і браузера, на конкретній машині. Для такої роботи буде потрібно лише парсер PHP (в цьому випадку його називають інтерпретатором командного рядка). Цей спосіб роботи підходить, наприклад, для скриптів, які повинні виконуватися регулярно за допомогою різних планувальників задач або для вирішення завдань простої обробки тексту.
І остання область - це створення GUI-додатків (графічних інтерфейсів), що виконуються на стороні клієнта. В принципі, це не найкращий спосіб використовувати PHP, особливо для початківців, але якщо ви вже досконало вивчили PHP, то такі можливості мови можуть виявитися вельми корисні. Для застосування PHP в цій області буде потрібно спеціальний інструмент - PHP-GTK, який є розширенням PHP.
Як і будь-яка інша скриптова мова, PHP використовується на сайтах, зміст (контент) яких є динамічним, тобто залежить від того, хто, коли і яким чином його переглядає, а також має можливість доповнювати та редагувати контент (портали, форуми, гостьові книги). Також PHP може стати у пригоді для організації статичних сайтів великого об’єму, що містять велику кількість документів, які потрібно структурувати та привести до подібного вигляду (електронні бібліотеки, сайти документації).