strpos函数
我想找到一种方法,我可以在其中找到反向的字符位置。例如,最后“e”反向开始计数。
来自示例
$string="Kelley";
$strposition = strpos($string, 'e');
它会给我1号位置。
答案 0 :(得分:25)
int strrpos ( string $haystack , string $needle [, int $offset = 0 ] )
在haystack字符串中查找最后一次出现针的数字位置。
答案 1 :(得分:5)
您需要strrpos来查找字符串中最后一个子字符串的位置
$string = "Kelley";
$strposition = strrpos($string, 'e');
var_dump($strposition);
答案 2 :(得分:2)
试试这个:
strrpos()
希望有所帮助。
答案 3 :(得分:2)
strripos
和strrpos
将$needle
长度添加到结果中,例如:
<?php
$haystack = '/test/index.php';
$needle = 'index.php';
echo strrpos($haystack, $needle);//output: 6
另一种方法是使用strrev
从最后检索位置,例如:
<?php
$haystack = 'Kelley';
$needle = 'e';
echo strpos(strrev($haystack), strrev($needle));//Output: 1
答案 4 :(得分:1)
function rev ($string, $char)
{
if (false !== strrpos ($string, $char))
{
return strlen ($string) - strrpos ($string, $char) - 1;
}
}
echo rev ("Kelley", "e");
答案 5 :(得分:1)
简单的功能,你可以添加:
function stripos_rev($hay,$ned){
$hay_rev = strrev($hay);
$len = strlen($hay);
if( (stripos($hay_rev,$ned)) === false ){
return false;
} else {
$pos = intval(stripos($hay_rev,$ned));
$pos = $len - $pos;
}
return $pos;
}
答案 6 :(得分:0)
简单地说就是:strrpos()
这将从右侧返回角色的第一个出现。
答案 7 :(得分:0)
唯一有效的解决方案是这个函数:
function strpos_reverse ($string, $search, $offset){
return strrpos(substr($string, 0, $offset), $search);
}