PHP shart operatorlari (if, else, switch)
Dastur har doim bir xil ishlamaydi: foydalanuvchi tizimga kirganmi, savat bo’shmi, ball yetarlimi — javobga qarab boshqacha yo’l tutadi. Bu shart operatorlari orqali yoziladi.
if — asosiy shart
Qavs ichidagi ifoda true bo’lsa, figurali qavs ichidagi kod bajariladi.
false bo’lsa — o’tkazib yuboriladi.
else — aks holda
elseif — bir necha shart
Shartlar yuqoridan pastga tekshiriladi va birinchi mos kelgani bajariladi — qolganlari umuman ko’rilmaydi.
Ichma-ich shartlar
Ammo chuqurlik oshsa kod o’qishga qiyinlashadi. Ko’pincha shartni birlashtirish yaxshiroq:
Erta qaytish
Funksiya ichida istisno holatlarni boshida tugatish — eng toza usul:
Chuqurlik oshmadi — har shart alohida va aniq.
Bo’sh qiymatni tekshirish
switch — ko’p variant
Bir o’zgaruvchi ko’p qiymat bilan solishtirilsa:
Bir necha qiymat uchun bitta javob:
match — zamonaviy yechim
PHP 8 dan yangi ifoda:
switch dan uch afzalligi bor:
- qiymat qaytaradi — to’g’ridan-to’g’ri o’zgaruvchiga berish mumkin;
breakkerak emas — fall-through yo’q;- qat’iy (
===) taqqoslaydi.
match(true) naqshi murakkab shartlarni yozishga imkon beradi:
HTML bilan birga
Shablon ichida shart yozishning qulay shakli:
Figurali qavs o’rniga : va endif — HTML orasida o’qish osonroq.
Amaliy mashq
- Yoshga qarab “katta” yoki “bola” chiqaring;
elseifbilan uch bosqichli baho tizimi yozing;- shartlarni noto’g’ri tartibda yozib, xatoni ko’ring;
emptyvaissetni0qiymatda solishtiring;switchbilan hafta kunini aniqlang;- shu kodni
matchga o’tkazing.
6-qadam ikki usulning farqini yaxshi ko’rsatadi.
Qisqacha xulosa
ifshart rost bo’lganda bajariladi,else— aks holda.elseifbir necha variantni ketma-ket tekshiradi; tartib muhim.- Ichma-ich shart o’rniga
&&yoki erta qaytish ishlating. empty()bo’shlikni,isset()mavjudlikni tekshiradi.switchda harcasedan keyinbreakkerak.match(PHP 8) qiymat qaytaradi,===bilan solishtiradi vabreaktalab qilmaydi.
Keyingi darsda sikllar — kodni takrorlash.