endwith php,PHP模拟实现Java的endsWith

Java中的startsWith和endsWith方法,在filter的功能实现中很方便,PHP可以用strncmp() 实现startsWith,但是无法实现endsWith,有些人会用正则来实现,但大多数人都不喜欢正则表达式的操作。

这里我通过一个叫substr_compare的方法实现(同时他也能实现startsWith)。

定义和用法

substr_compare() 函数从指定的开始长度比较两个字符串。

该函数返回:

0 - 如果等两字符串相

<0 - 如果 string1 (从开始位置)小于 string2

>0 - 如果 string1 (从开始位置)大于 string2

语法

substr_compare(string1,string2,startpos,length,case)

参数

描述

string1

必需。规定要比较的第一个字符串。

string2

必需。规定要比较的第二个字符串。

startpos

可选。规定在 string1 中的何处开始比较。

length

可选。规定在 string1 中参与比较的字符数。

case

可选。规定是否指定大小写比较。默认是 FALSE (对大小写敏感)。

使用substr_compare重写后的startsWith和endsWith如下

function startsWith(){

$string1 = "XXXX";

$string2 = "XXXX";

if(strlen($string1)

return false;                                   //否则substr_compare遇到这种情况会返回0(即相当,与事实不符合)

}else{

return !substr_compare($string1,$string2,0,strlen($string2));//当第一个长度大于第二个时才开始判断

}

}

function endsWith(){        $string1 = "XXXX";        $string2 = "XXXX";        if(strlen($string1)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值