PHP matn funksiyalari (string)
Matn dasturda eng ko’p uchraydigan ma’lumot: ism, manzil, xabar, foydalanuvchi kiritgan qiymat. PHP uni qayta ishlash uchun yuzlab tayyor funksiya beradi.
Uzunlik
Kirill matnda son ikki xil chiqdi: strlen baytlarni sanaydi, har
kirill harfi esa 2 bayt egallaydi.
Katta-kichik harf
strtoupper/strtolower— hammasi katta / kichik;ucfirst— birinchi harf katta;ucwords— har so’zning birinchi harfi.
Bular faqat lotin harflari uchun ishonchli; kirill uchun
mb_strtoupper kerak.
Qidirish
str_contains, str_starts_with va str_ends_with — PHP 8 dan; ular
strpos dan o’qishga ancha qulay.
Almashtirish
str_replace katta-kichik harfni farqlaydi, str_ireplace — yo’q.
Massiv berilsa, bir necha almashtirish birdan bajariladi.
Bo’lak ajratish
substr($matn, boshi, uzunligi) — manfiy son oxiridan sanaydi.
Bo’lish va birlashtirish
Tozalash
trim — forma ma’lumotini qabul qilishda deyarli har doim kerak:
foydalanuvchi tasodifan bo’sh joy qo’shishi mumkin.
Formatlash
printf chiqaradi, sprintf esa natijani qaytaradi. Asosiy belgilar:
%s (matn), %d (butun son), %.2f (ikki xonali kasr), %05d (nol bilan
to’ldirilgan).
To’ldirish va takrorlash
Amaliy misol — slug yasash
Slug — manzilga yaroqli qisqa nom. Bu sayt sahifalarining manzillari ham shu tarzda yasaladi.
HTML xavfsizligi
Taqqoslash
strcasecmp katta-kichik harfni e’tiborsiz taqqoslaydi va teng bo’lsa 0
qaytaradi.
Amaliy mashq
strlenvamb_strlenni kirill matnda solishtiring;strlenbilan kirill matn uzunligini o’lchang — nega bunday chiqdi?str_containsbilan so’z borligini tekshiring;str_replacebilan shablondagi joyni to’ldiring;trimvanumber_formatni ishlating;htmlspecialcharsbilan<b>matn</b>ni chiqaring.
Qisqacha xulosa
- O’zbek/kirill matn uchun
mb_versiyalarini ishlating. - O’zbek/kirill matn uchun
mb_versiyalarini ishlating (mbstringkengaytmasi). strpostopilmasafalse, boshida topilsa0—!== falsebilan tekshiring.str_replacemassiv bilan bir necha almashtirish bajaradi.trimforma ma’lumotida deyarli har doim kerak.number_formatvaprintf/sprintf— formatlash uchun.htmlspecialchars— foydalanuvchi matnini chiqarishda majburiy.
Keyingi darsda sonlar va matematika.