如何在PHP中检查字符串是否以指定子串开头?
大家好!我是PHP新手,正在编写一个处理URL的小脚本。我需要检查字符串是否以特定前缀开头,例如"https://"或"/admin/"。在其他语言中,我见过像startsWith()这样的函数,但PHP中似乎没有。
我尝试过使用strpos(),但它返回的是位置,而不是布尔值。不得不写一个变通方案:
$url = "https://example.com";
if (strpos($url, "https://") === 0) {
echo "以https开头";
}
这虽然能用,但看起来不优雅。必须一直写=== 0,很容易忘记或与!== false混淆。有没有更优雅的方法?也许有内置函数或简短的构造?
如果能提供代码示例和解释其工作原理,我将不胜感激。谢谢!
<<>>
最佳方法:使用
最佳方法:使用str_starts_with()(PHP 8.0+)
从PHP 8.0开始,语言中引入了内置函数str_starts_with(),它正是你所需要的。它返回