我确信这是一个简单的解决方案,但还没找到我需要的东西。
使用php,我有一个变量$ source。我想检查$ source是否以'http'开头。
if ($source starts with 'http') {
$source = "<a href='$source'>$source</a>";
}
谢谢!
答案 0 :(得分:46)
if (strpos($source, 'http') === 0) {
$source = "<a href=\"$source\">$source</a>";
}
注意我使用===
,而不是==
,因为如果字符串不包含匹配项,strpos
会返回布尔值false
。在PHP中,零是假的,因此需要进行严格的相等检查以消除歧义。
参考:
答案 1 :(得分:13)
您需要substr()
功能。
if(substr($source, 0, 4) == "http") {
$source = "<a href='$source'>$source</a>";
}
答案 2 :(得分:6)
if(strpos($source, 'http') === 0)
//Do stuff
答案 3 :(得分:5)
使用substr
:
if (substr($source, 0, 4) === 'http')
答案 4 :(得分:1)
从PHP 8.0开始,已实现方法str_starts_with
:
if (str_starts_with($source, 'http')) {
$source = "<a href='$source'>$source</a>";
}
答案 5 :(得分:0)
if(preg_match('/^(http)/', $source)){
...
}