34
графиктермен, криптографиялық кітапханалармен, PDF түріндегі құжаттар
жіне т.с.с жұмыс істеуге арналған.
Арнаулы бағдарламалық қамтамасыз етудi пайдалану қосымшалардың
тезәрекеттiгiнiң көбеюi үшiн мүмкiн, үдеткiш деп аталатын. Олардың жұмысы
қағидат бiр күнi шығарылған байттың бүркемелеуiнде қосылады
есте код
және/немесе дискте, қорыта келгенде, қосымша жұмыс барысынан кезең
жағдай әйтеуiр жұмыстың елеулi жеделдетуiне шығарылады. Маңызды
ерекшелiктi болып көрiнетін өңдеушi үлестiрудiң қамын жеуге қажеттiсі естiң
босауы. PHP өзегінде си автоматты басқару үшiн қаржыны жүзеге асырады.
Барлық ерекшеленген си скрипті жүйе жұмыс аяғынан кейiн қайтарады.
Кеңейту. Интерпретатор өзектен тұрады және қосылатын модульдар,
«кеңейтулер», таныстыратын өздердiң динамикалық кiтапханалары. Кеңейту
тiлдiң негiзгi мүмкiндiктерi, дерекқормен жұмыс үшiн мүмкiндiк бере
толықтыруға рұқсат береді, қалыпты PDF сокеттермен, динамикалық жазу-
сызумен, крифтографиялық кiтапханалар, құжаттарымен ұқсас [12].
РНР/FI. 1994 жылы дат программисті (қазір Канадада тұратын) расмус
Лердорф (Rasmus Lerdorf) Perl/CGI-да оның онлайн-резюмесінің қараушылар
санын санау және шығару үшін, HTML-құжаттардың шаблондарын өңдейтін
скрипттер жиынын жазды. Лердорф ол жиынды Personal Home Page (Жеке Үй
беті)
деп
атады.
Кейіннен
скрипттер
интерпритаторы
Perl-дың
функционалығы және жылдамдығы жеткіліксіз болғандықтан Лердорф Си
тіліндегі жаңа РНР/FI шаблондар интерпритаторын құрды. РНР/FI - ағыл.
Personal home Page/Forms Interpreter – «Жеке Үй беті/Форма интерпритаторы».
Perl стильіндегі айнымалылар түрі ($айнымалы_аты мәнді шығару үшін),
формалардың автоматты өңделуі және HTML-мәтінге іштей орындалуы және
т.б. Жаңа туған тіл қарапайым және шектелген синтаксисімен ерекшеленеді.
1997 жылы ұзақ бета-тестілеуден кейін өңдеуіштің Си тілінде жазылған
екінші нұсқасы шықты – РНР/FI 2.0.
Оны әлемнің барлық интернет-домендердің 1% (жуық мөлшермен 50
мың) қолданды.
РНР3. Бүгінгі күні біз білетін РНР-ге ұқсас ең алғашқы нұсқасы РНР3.0
болатын. 1997 жылы екі израильдік программистер Энди Гутмас (Andi
Gutmans) және Зив Сураски (Zeev Suraski) кодты басынан бастап жазды:
құраушылар РНР/FI 2.0-ді электронды коммерция бағдарламаларын құруға
жарамсыз деп шешті. РНР 3.0 нұсқасымен бірігіп жұмыс істеу үшін РНР/FI 2.0
құраушыларын біріктіріп, РНР 3.0-ті РНР/FI-дің ресми мұрагері деп
жариялауды шешті, ал РНР/FI-ді құру толығымен тоқтатылды.
РНР3.0-тің күшті жақтарының бірі ядроны кеңейту мүмкіндігі болды.
Кейіннен кеңейтулерді жазу интерфейсі РНР-ға өз модульдерін жазатын
көптеген құраушыларды әкелді. Бұл жағдай РНР-ге үлкен көлемдегі деректер
қорымен, протоколдарымен, API-дің көпшілігін қолдауға мүмкіндік берді.
Негізінен, бұл жағдай сәттіліктің алғашқы кілті болды. Бірақ тағы бір шартты
айта кеткен жөн, ол – жаңа, қуаты жоғарырақ және объектті-бағытталған
программалауды қолдайтын толық синтаксисі.
35
Толығымен жаңа бағдарламалау тілі жаңа атау алды. Құраушылар
РНР/FI абревиатурасындағы жеке қолданым жайлы қосымшаны қолдауданг
бас тартты. Тіл жай ғана РНР (ағыл. РНР: Hypertext Preprocessor- «РНР:
Гипермәтін процессоры») деп аталады.
1998 жылдың соңында ондаған мың пайдаланушылармен қолданыс
тапты. Жүздеген мың веб-сайттар өздерінің РНР-ді қолданаиынын айтты. Сол
кезде РНР 3.0 интернеттің 10% веб-серверлеріне орнатылған болатын.
РНР 3.0 ресми түрде 1998 жылдың маусым айында, 9 ай бұқаралық
тестілеуден кейін жарық көрді.
РНР4. 1998 жылы РНР 3.0 ресми түрде шыққаннан кейін, Энди Гутманс
және Зив Сураски РНР ядросын қайта құрастыра бастады. Оны қарастыру
себебі қиын қосымша программалардың өнімділігін артыру және РНР
кодының базисінің модульдігін жақсарту болды, РНР 3.0-тің кеңейтілуі
деректер қорының жиынымен сәтті жұмыс істеуге және көп көлемде әртүрлі
API мен протоколдарды қолдауға мүмкіндік берді, бірақ РНР 3.0-тің
модульдерді қолдау сапасы төмен болды және тиімсіз жұмыс істеді.
Zend Engine (құрушылардың атынан, Зива және Энди, сонымен қатар
Zend Technologies-ті құрушылар) деп аталған жаңа қозғауыш қойылған
есептерді жақсы шешіп отырды және 1999 жылдың ортасында жарық көрді.
Осы қозғауышқа негізделген және өзімен бірге қосымша функциялар жиынын
алып келген РНР4.0 ресми түрде 2000 жылдың мамыр айында шықты (РНР 3.0
шыққаннан екі жыл өткеннен соң).
РНР5. РНР-дің бесінші нұсқасы құраушылармен 2004 жылы 13 тамызда
шығарылды. Өзгертулерге интерпритатордың тиімділігін арттырытын Zend
(Zend Engine 2) ядросының жаңаруы жатады. XML өлшеуіш тілінің қолдауы
ендірілген. Java-да қолданылатын модельдерге ұқсас обьектті-бағытталған
программалау функциялары толық өзгертілген. Айта кетсек, ашық, жабық
және қорғалған мүшелер мен әдістер, интерфейстер мен обьекттерді клондау
ендірілген. Дегенмен, жаңартулар алдыңғы нұсқалармен кодты сәйкестікті
сақтау үшін жасалған [13]. Қазіргі кезде РНР6 нұсқаларының dev-нұсқасының
болуына қарамастан, ең тұрақты және кең қолданылатын 5.х.х нұсқалары
болып табылады.
Web-қосымша программаларын құрушыларға web-беттер – ол мәтін мен
суреттерге ғана емес екенін айтудың қажеті жоқ. Жақсы сайт
пайдаланушымен қандайда бір деңгейдегі интерактивтілікті қолдау керек:
ақпаратты іздеу өнімді сату, конференциялар және т.б. негізінен бұл
мүмкіншіліктердің барлығы Perl-да жазылған CGI-скрипттермен орындалған.
Бірақ, CGI-скрипттердің масштабталу мүмкіндігі өте төмен. Әрбір CGI
шақыру ядродан жаңа процесстің тууын талап етеді, ал ол процессор уақытын
жоғарылатады және оперативті жадыны жұмсайды.
PHP басқа нұсқаны ұсынады – ол Web-cервер бөлігі ретінде жұмыс
істейді, осындац мүмкіндігімен ол Microsoft-тің ASP-не ұқсас. PHP синтаксисі
Си немесе Perl синтаксисіне өте ұқсас. Бағдарламалаумен таныс адамдар
программаларды PHP тілінде жазуға өте тез үйренуге мүмкіндіктері бар. Бұл