PHP字符串与通配符的比较


PHP String compare with Wildcard

我以为这会很容易,但我找不到简单的解决方案,我真的很喜欢PHP,但只知道基础知识。

我在寻找一个简单的东西,这样我就可以找到:

http://www.myurl.com/*

所以只有我的url后面跟着通配符。所以它会返回:

 http://www.myurl.com/page1.php
 http://www.myurl.com/page2.php
 http://www.myurl.com/page3.php

但不是

http://www.stackoverflow.com

regex是一种方法,还是过于夸张了?

听起来startsWith函数会很好地工作。

<?php
function startsWith($haystack, $needle, $caseInsensitive = false) {
    // if doing case-insensitive
    if ($caseInsensitive){
        return (strcasecmp(substr($haystack, 0, strlen($needle)), $needle) === 0);
    }
    return (strcmp(substr($haystack, 0, strlen($needle)), $needle) === 0);
}

你可以像这样使用它:

startsWith('http://www.myurl.com/page1.php', 'http://www.myurl.com/', true);