Strpos функциясы
strpos функциясы бир саптан башка саптагы
подстроканын биринчи кездешүү позициясын кайтарат
же false, эгер подстрока табылбаса.
Биринчи параметр катары функция изделүүчү сапты
кабыл алат, экинчи параметр катары
- изделиши керек болгон подстроканы.
Демейки абалда функция саптын башынан биринчи дал келүүгө чейин издеп чыгат. Издөөнүн баштоосу үчүнчү милдеттүү эмес параметр менен жөнгө салынышы мүмкүн - эгер ал берилсе, анда издөө саптын башынан эмес, берилген жерден башталат.
Ошондой эле stripos функциясы бар, ал
дал ушундай нерсени жасайт, бирок регистрди эске албай.
Синтаксис
strpos(string $haystack, string $needle, int $offset = 0): int|false
Мисал
Бул мисалда функция биринчи
'c' символунун позициясын кайтарат.
Ал 2 позициясын ээлейт,
себеби саноо 0дон башталат:
<?php
echo strpos('abcde abcde', 'c');
?>
Кодду иштетүүнүн натыйжасы:
2
Мисал
Бул мисалда үчүнчү параметр берилген жана
ошон үчүн издөө үчүнчү позициядан башталат,
бул учурда функция экинчи символду
'c' табат жана анын позициясын - 8 чыгарат:
<?php
echo strpos('abcde abcde', 'c', 3);
?>
Кодду иштетүүнүн натыйжасы:
8
Мисал
Эгер подстрока табылбаса - анда функция
false кайтарат. Эгерде сап
башында турса, анда функция 0 кайтарат.
Бул кыска формадагы шарт менен салыштырууда
көйгөй жарата алат:
<?php
if (strpos('http://site.ru', 'http://')) {
echo '+++';
} else {
echo '---';
}
?>
Кодду иштетүүнүн натыйжасы (биз күткөндөй эмес):
'---'
Мисал
Саптын башын туура текшеребиз:
<?php
if (strpos('http://site.ru', 'http://') === 0) {
echo '+++';
} else {
echo '---';
}
?>
Кодду иштетүүнүн натыйжасы:
'+++'
Ошондой эле караңыз
-
strrposфункциясын,
ал подстроканын акыркы кездешүү позициясын кайтарат -
str_containsфункциясын,
ал сапта символдун бар экендигин текшейт -
str_starts_withфункциясын,
ал саптын башын текшейт -
str_ends_withфункциясын,
ал саптын аягын текшейт -
array_searchфункциясын,
ал массив боюнча издөө жүргүзөт