Функсияи 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,
ки ҷустуҷӯ дар массивро анҷом медиҳад