Strpos funksiyasi
strpos funksiyasi qatordagi birinchi
topilgan qismning joylashuvini yoki
false (qism topilmasa) qaytaradi.
Funksiyaning birinchi parametri qidiruv
amalga oshiriladigan qator, ikkinchi parametri
esa qidiriladigan qismdir.
Standart tarzda funksiya qator boshidan birinchi moslikgacha qidiradi. Qidiruv boshlanishi uchinchi ixtiyoriy parametr bilan boshqarilishi mumkin - agar u belgilansa, qidiruv qator boshidan emas, belgilangan joydan boshlanadi.
Shuningdek, stripos funksiyasi mavjud bo'lib,
u xuddi shu narsani bajaradi, lekin registrni
hisobga olmaydi.
Sintaksis
strpos(string $haystack, string $needle, int $offset = 0): int|false
Misol
Ushbu misolda funksiya birinchi 'c'
belgisining joylashuvini qaytaradi. U
2 pozitsiyani egallaydi, chunki
hisoblash 0 dan boshlanadi:
<?php
echo strpos('abcde abcde', 'c');
?>
Kodni bajarish natijasi:
2
Misol
Ushbu misolda uchinchi parametr belgilangan va
shuning uchun qidiruv uchinchi pozitsiyadan
boshlanadi, bu holda funksiya ikkinchi
'c' belgisini topadi va uning
8 pozitsiyasini ko'rsatadi:
<?php
echo strpos('abcde abcde', 'c', 3);
?>
Kodni bajarish natijasi:
8
Misol
Agar qism topilmasa - funksiya
false qaytaradi. Agar qator
boshida turgan bo'lsa, funksiya
0 qaytaradi. Bu qisqa shart
shakli orqali solishtirishda muammo
bo'lishi mumkin:
<?php
if (strpos('http://site.ru', 'http://')) {
echo '+++';
} else {
echo '---';
}
?>
Kodni bajarish natijasi (biz kutganday emas):
'---'
Misol
Kator boshini to'g'ri tekshiramiz:
<?php
if (strpos('http://site.ru', 'http://') === 0) {
echo '+++';
} else {
echo '---';
}
?>
Kodni bajarish natijasi:
'+++'
Shuningdek qarang
-
strrposfunksiyasi,
qatorning oxirgi paydo bo'lish joyini qaytaradi -
str_containsfunksiyasi,
qatorda belgining mavjudligini tekshiradi -
str_starts_withfunksiyasi,
qator boshini tekshiradi -
str_ends_withfunksiyasi,
qator oxirini tekshiradi -
array_searchfunksiyasi,
massiv bo'yicha qidiruv amalga oshiradi