ფუნქცია strpos
ფუნქცია strpos აბრუნებს პოზიციას
ქვესტრიქონის პირველი შემთხვევისა სხვა სტრიქონში
ან false, თუ ქვესტრიქონი არ მოიძებნა.
პირველ პარამეტრად ფუნქცია იღებს სტრიქონს,
რომელშიც ხორციელდება ძიება, მეორე პარამეტრად
- ქვესტრიქონს, რომლის ძიებაც უნდა მოხდეს.
ნაგულისხმევად ფუნქცია ეძებს სტრიქონის დასაწყისიდან პირველ დამთხვევამდე. ძიების დასაწყისი შესაძლებელია რეგულირდეს მესამე არასავალდებულო პარამეტრით - თუ იგი მითითებულია, მაშინ ძიება დაიწყება არა დასაწყისიდან, არამედ მითითებული ადგილიდან.
ასევე არსებობს ფუნქცია stripos, რომელიც
აკეთებს იგივეს, მაგრამ რეგისტრის გათვალისწინების გარეშე.
სინტაქსი
strpos(string $haystack, string $needle, int $offset = 0): int|false
მაგალითი
ამ მაგალითში ფუნქცია დააბრუნებს პირველი
სიმბოლოს 'с' პოზიციას. ის იკავებს პოზიციას 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,
რომელიც ახორციელებს ძიებას მასივში