截取常用的函数--strrpos

本文介绍了 PHP 中 strrpos 函数的功能与用法,包括如何查找字符串中特定字符的最后出现位置,以及如何利用偏移参数实现更灵活的搜索。

strrpos计算指定字符串在目标字符串中最后一次出现的位置

说明

int strrpos ( string $haystack , string $needle [, int $offset = 0 ] )

返回字符串 haystackneedle 最后一次出现的数字位置。注意 PHP4 中,needle 只能为单个字符。如果 needle 被指定为一个字符串,那么将仅使用第一个字符。

参数

haystack

在此字符串中进行查找。

needle

如果 needle不是一个字符串,它将被转换为整型并被视为字符的顺序值。

offset

或许会查找字符串中任意长度的子字符串。负数值将导致查找在字符串结尾处开始的计数位置处结束。

返回值

返回 needle 存在的位置。如果没有找到,返回 FALSE。 Also note that string positions start at 0, and not 1.

Returns FALSE if the needle was not found.

Warning

此函数可能返回布尔值FALSE,但也可能返回等同于 FALSE 的非布尔值,例如 0 或""(空串)。请阅读 布尔类型章节以获取更多信息。应使用 ===运算符 来测试此函数的返回值。

更新日志

版本说明
5.0.0参数 needle 可以是一个多字符的字符串。
5.0.0引入 offset 参数。

范例

Example #1 检查字串是否存在

很容易将“在位置 0 处找到”和“未发现字符串”这两种情况搞错。这是检测区别的办法:

<?php

$pos
= strrpos($mystring, "b");
if (
$pos === false) { // 注意: 三个等号
// 未发现...
}

?>

Example #2 使用偏移位置进行查找

<?php
$foo
= "0123456789a123456789b123456789c";

var_dump(strrpos($foo, '7', -5)); // 从尾部第 5 个位置开始查找
// 结果: int(17)

var_dump(strrpos($foo, '7', 20)); // 从第 20 个位置开始查找
// 结果: int(27)

var_dump(strrpos($foo, '7', 28)); // 结果: bool(false)
?>


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值