Here are Java like startsWith/endsWith implementations in PHP.
<?php
function startsWith($haystack,$needle)
{
$res=FALSE;
if(mb_strripos($haystack,$needle,0,"utf-8")==0)
$res= TRUE;
return $res;
}
function endsWith($haystack,$needle)
{
$res=FALSE;
$len=mb_strlen($haystack);
$pos=$len-mb_strlen($needle);
if(mb_strripos($haystack,$needle,0,"utf-8")==$pos)
$res= TRUE;
return $res;
}
?>mb_strripos
Почист и полокален преглед на PHP референцата, со задржана структура од PHP.net и подобра читливост за примери, секции и белешки.
mb_strripos
Референца за `function.mb-strripos.php` со подобрена типографија и навигација.
mb_strripos
(PHP 5 >= 5.2.0, PHP 7, PHP 8)
mb_strripos — Наоѓа позиција на последната појава на стринг во друг, нечувствително на големи и мали букви
= NULL
string
$haystack,string
$needle,int
$offset = 0,?string
$encoding = null): int|false
mb_strripos() извршува безбедно за повеќе бајти
strripos() операција врз основа на број на знаци. needle позицијата се брои од почетокот на
haystack. Позицијата на првиот знак е 0. Позицијата на вториот знак е 1. За разлика од mb_strrpos(),
mb_strripos() не е чувствително на големината на буквите.
Параметри
haystack-
Стрингот од кој да се добие позицијата на последната појава на
needle. needle-
Стрингот од кој да се добие позицијата на првото појавување на
haystack. offset-
Може да се специфицира за почеток на пребарувањето од произволен број знаци во
haystack. Негативните вредности ќе го прекинат пребарувањето во произволна точка пред крајот наhaystack. encoding-
На
encodingпараметарот е кодирањето на карактерите. Ако е изоставен илиnull, ќе се користи внатрешната вредност за кодирање на карактерите.
Вратени вредности
Враќа нумеричка позиција на последната појава на needle во
haystack стринг, или false
if needle не е пронајден.
Errors/Exceptions
-
Враќа
offsetако иглата не е пронајдена.haystack, а ValueError ќе биде фрлена.
Дневник на промени
| Верзија | = NULL |
|---|---|
| 8.0.0 |
needle сега прифаќа празна низа.
|
| 8.0.0 |
encoding сега е null.
|
Види Исто така
- strripos() - Најди ја позицијата на последното појавување на подниза во низа
- strrpos() - Проверува дали низата започнува со дадена подниза
- mb_strrpos() - Најди позиција на последна појава на стринг во стринг
Белешки од корисници 2 забелешки
<?php
function backStrpos($str, $needle, $offset){
$needler = backStr($needle);
$strr = backStr($str);
$offsetr = strlen($str) - 1 - $offset;
$posr = mb_stripos($strr, $needler, $offsetr);
return strlen($str) - 1 - $posr - strlen($needle);
}
function backStr($str){
$str = str_replace(array('<', '>'), array('>', '<'), $str);
return strrev($str);
}
function backStrpos($str, $needle, $offset){
$needler = backStr($needle);
$strr = backStr($str);
$offsetr = strlen($str) - 1 - $offset;
$posr = mb_stripos($strr, $needler, $offsetr);
return strlen($str) - 1 - $posr - strlen($needle);
}
function backStr($str){
$str = str_replace(array('<', '>'), array('>', '<'), $str);
return strrev($str);
}
$test = '<table><TR>TEXT</TR><TR>TEST</TR></table>';
$pos = mb_stripos($test, 'TEST', 0);
var_dump($pos);
var_dump(backStrpos($test, '<tr', $pos));
var_dump(backStrpos($test, '<tr', backStrpos($test, '<tr', $pos)));
------->
int(24)
int(19)
int(6)