*.html o‘rniga *.phtml, *.php3 yoki *.php ga o‘zgartirish kerak. Ba’zida, PHP ni umuman keragi yo‘q, axir SSI bor-ku kabi fikrlarni ham eshitib qolish mumkin. Lekin, SSI bajara olgan narsani PHP ham bajara olishi mumkin va bunga qo‘shimcha u undan ham ko‘p imkoniyatlarga ega.
SSI dan foydalanish. SSI – Server Side Includes yoki o‘zbekchada server tomonidan qamrab olish. SSI – bu to‘g‘ridan-to‘g‘ri HTML kodiga qo‘yiladigan va ko‘rsatmalarni Web serveriga uzatish uchun xizmat qiladigan direktivalar (yo‘l-yo‘riq dasturlar) dir.
Interpretatormi yoki kompilyator? Extimol, PHP 4 avvalgi versiyalaridan farqli ravishda kompilyator ekanligini eshitgandirsiz. Bu unchalik to‘g‘ri emas. Terminlardagi tushunmovchiliklarni oydinlashtirish uchun nima kompilyator, nimani interpretator deb atashni kelishib olamiz. Ko‘pincha kompilyator deb interpretatsiyalovchi translyator dasturni, ya’ni asosiy funksiyasi interpretator bo‘lgan dasturni atashadi. PHP ni 4 versiyasida ham xuddi shunday.
Keling, PHP ning 4 - versiyasi qanday ishlashini ko‘rib chiqamiz. U dasturni kodini olib, birinchi navbatda uni tahlil qiladi (xususan, sintaksisini tekshiradi) va maxsus ichki ko‘rinishga translatsiya qiladi. Bu ko‘rinish maxsus bayt – koddan iborat bo‘lib, uni ko‘z bilan ko‘rib tushunib olish imkoni yo‘q. Biroq uni PHP amalga oshirishi uchun juda qulay. Mana shu jarayonni ko‘pincha ko‘pchilik noto‘g‘ri xolda kompilyatsiya deb atashadi. Keyin PHP hosil bo‘lgan bayt – kodni bajaradi (interpretatsiyalaydi). Bu jarayon esa odatdagi interpretator ishini aks ettiradi.
Yuqorida ta’kidlaganimizdek, PHP bir – biridan deyarli mustaqil bo‘lgan 2 ta blok — translyator va interpretatordan tashkil topgan. Nima uchun bunday tuzilgan? Albatta, bu tezlikni oshirishni ko‘zlab shunday qilingan. O‘zingiz tahlil qilib ko‘ring: sintaktik taxlil faqatgina translyatsiya paytida bir marta amalga oshiriladi, tayyor bo‘lgan
«yarimfabrikat» — bayt-kod ko‘p marta bajariladi.
Faraz qilaylik, dasturda ko‘p marta takrorlanuvchi sikl mavjud bo‘lsin. PHP ni translyatsiya fazasi yo‘q bo‘lgan 3 versiyasida takrorlashni navbatdagi har bir qadamida sikl kodi tahlil qilinishi, satrlari tahlil qilinishi, sintaksisi tekshirilishi va x.k. lar amalga oshirilishi zarur. PHP 4 versiyasida bu bir marta amalga oshiriladi va siklni har bir iteratsiyasida tayyor bayt – koddan foydalaniladi.
Xususan, yuqorida keltirilgan PHP ni ishlash sxemasi amaldagiga hamma vaqt ham to‘g‘ri kelmaydi. Chunki, bu tilda shunday konstruksiyalarni yaratish mumkin, ularni translyatsiya paytida (bunga masalan, dastur kodiga nomi foydalanuvchi tomonidan ko‘rsatiladigan tashqi fayldagi kodni kiritish instruksiyasi misol bo‘ladi) ichki tasvirga o‘tkazishni sira imkoni yo‘q. Bunday paytda PHP bu konstruksiyasini qoldirib ketadi va bu konstruksiyasi bajarish paytida translyatsiya qiladi. Albatta bu dastur bajarilishini sekinlatadi.
PHP interpretatorini quyidagi ustunliklari mavjud.
Dasturni bajarish paytida xatoni aniqlash soddalashadi. Agar dastur bajarilishida uzilish bo‘lsa interpretator bu haqida xabar qiladi.
Egallangan xotirani bo‘shatish haqida o‘ylamasa ham bo‘ladi. Interpretatorni o‘zi dasturdagi u yoki bu o‘zgaruvchi kerak yoki kerakmasligini aniqlaydi va o‘zgaruvchi uchun ajratilgan xotirani bo‘shatadi.
O‘zgaruvchi tiplari haqida o‘ylamasa ham bo‘ladi.
An’anaviy ravishda dasturlash haqidagi barcha kitoblar «Hello world!» dasturidan boshlanadi. Biz ham ushbu an’anani davom ettirgan xolda misol keltiramiz:
echo "Hello world!";
?>
Ssenariyni brauzerda ishga tushiring. Uni ishlayotganligiga guvoh
bo‘lasiz. Ko‘rinib turganidek, PHP – dasturining strukturasi SI va Beysik aralashmasini eslatadi va HTML tarkibiga ham kiritiladi. Biroq biz yuqorida PHP tilidagi oddiy dastur misolini ko‘rib chiqdik. Bu til haqidagi umumiy tassavvurni bermaydi. Bu bo‘limda PHP tili konstruksiyalarini o‘rganamiz, ya’ni til asoslarini o‘rganamiz.
Do'stlaringiz bilan baham: |