web-dev-qa-db-ja.com

変数が「http」で始まるかどうかを確認します

これは簡単な解決策だと思いますが、必要なものが正確に見つかりませんでした。

Phpを使用して、変数$ sourceがあります。 $ sourceが 'http'で始まるかどうかを確認したいと思います。

if ($source starts with 'http') {
 $source = "<a href='$source'>$source</a>";
}

ありがとう!

21
Andelas
if (strpos($source, 'http') === 0) {
    $source = "<a href=\"$source\">$source</a>";
}

strposはブール値falseを返すため、文字列に一致が含まれていない場合、===ではなく==を使用します。 PHPではゼロは誤っているため、あいまいさをなくすには厳密な等価チェックが必要です。

参照:

http://php.net/strpos

http://php.net/operators.comparison

48
Jonah

substr() 関数が必要です。

if(substr($source, 0, 4) == "http") {
   $source = "<a href='$source'>$source</a>";
}
14
AgentConundrum
if(strpos($source, 'http') === 0)
    //Do stuff
6
Ben

substr を使用:

if (substr($source, 0, 4) === 'http')
5
casablanca
if(preg_match('/^(http)/', $source)){
...
}
0
ali