strpos funksiýasy
strpos funksiýasy başga bir setirde podsetiriniň birinji
görnüşiň ýerleşýän ýerini gaýtarýar, ýa-da podsetira tapylmasa
false gaýtarýar. Funksiýa birinji parametr hökmünde gözleg
geçirilýän setiri kabul edýär, ikinji parametr bolsa gözlemeli
podsetiri görkezýär.
Adatça, funksiýa setiriň başyndan birinji gabat gelýän ýere çenli gözleýär. Gözlegiň başlanýan ýerini üçünji hökmany däl parametr bilen sazlap bolýar - eger ol görkezilse, gözleg setiriň başyndan däl-de, görkezilen ýerden başlar.
Şeýle hem stripos funksiýasy bar, ol hem şol bir zady
edýär, ýöne registri (uly/kiçi harplary) nazara almazdan.
Sintaksis
strpos(string $haystack, string $needle, int $offset = 0): int|false
Mysal
Bu mysalda funksiýa birinji 'c' simwolunyň ýerleşýän
ýerini gaýtarar. Ol 2 pozisiýany eýeleýär, sebäbi hasaplaň
0-dan başlaýar:
<?php
echo strpos('abcde abcde', 'c');
?>
Koduň ýerine ýetiriliş netijesi:
2
Mysal
Bu mysalda üçünji parametr görkezilendir we şonuň üçin gözleg
üçünji pozisiýadan başlar, bu ýagdaýda funksiýa eýýäm ikinji
'c' simwoluny tapar we onuň pozisiýasyny - 8
çykarar:
<?php
echo strpos('abcde abcde', 'c', 3);
?>
Koduň ýerine ýetiriliş netijesi:
8
Mysal
Eger podsetira tapylmasa - onda funksiýa false
gaýtarar. Eger-de setir başynda bolsa, onda funksiýa
0 gaýtarar. Bu gysga şert görnüşi arkaly
deňeşdirme geçirilende problema döredip biler:
<?php
if (strpos('http://site.ru', 'http://')) {
echo '+++';
} else {
echo '---';
}
?>
Koduň ýerine ýetiriliş netijesi (biz garaşşy ýaly däl):
'---'
Mysal
Setiriň başlangyjyny üçin dogry barlagy ýerine ýetireliň:
<?php
if (strpos('http://site.ru', 'http://') === 0) {
echo '+++';
} else {
echo '---';
}
?>
Koduň ýerine ýetiriliş netijesi:
'+++'
Şeýle-de görüň
-
strrposfunksiýasyny,
ol podsetiriň iň soňky görnüşiň ýerleşýän ýerini gaýtarýar -
str_containsfunksiýasyny,
ol setirde simwolyň bardygyny barlap görýär -
str_starts_withfunksiýasyny,
ol setiriň başlangyjyny barlap görýär -
str_ends_withfunksiýasyny,
ol setiriň soňuny barlap görýär -
array_searchfunksiýasyny,
ol massiwde gözleg geçirýär