如何优先考虑strpos以找到最准确的结果

时间:2018-05-09 16:24:09

标签: php arrays string sorting strpos

我有一个数组:

create or alter trigger main.afterParsing
on main.jsontable 
after insert
as
begin
    declare @country nvarchar(50);

    insert into main.country(countryName)
    values(@country)
end;

而且,例如我有一个字符串:

$array_of_routes = ['users/', 'articles/more', 'users/get', 'homepage/'];

所以我试图通过使用strpos来找到它,但是因为'用户/'来自' users / get'在$ array_of_routes中我得到了' users /'作为回报而不是' users / get',这是有道理的,因为这就是我要求代码做的事情。

但是,在尝试查找字符串中的子字符串时,有没有办法优先处理或使结果更准确?

注意:删除'用户/'从数组中我得到了' users / get'

这是我的代码:

$route = "users/get/1"; 

感谢您的帮助!

1 个答案:

答案 0 :(得分:-1)

轻松! 对数组进行排序,以便用户/ get位于users /前面。做一个$array_of_routes = rsort($array_of_routes);

这会将您的较长匹配放在第一位,如果您的最长项目与该函数匹配则返回。