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ֆունկցիան,
որը կատարում է որոնում զանգվածում