ある文字列が http
で始まるかどうかをチェックしようとしています。どうすればこのチェックができるのでしょうか?
$string1 = 'google.com';
$string2 = 'http://www.google.com';
文字列の一部を返すには、substr関数を使用します。
substr( $string_n, 0, 4 ) === "http"
他のプロトコルではないことを確認したい場合。httpsもマッチするので、代わりにhttp://
を使います。その他にもhttp-protocol.comなどがあります。
substr( $string_n, 0, 7 ) === "http://"
そして一般的には
substr($string, 0, strlen($query)) === $query
strpos()`](https://www.php.net/manual/en/function.strpos.php)をご利用ください。
if (strpos($string2, 'http') === 0) {
// It starts with 'http'
}
等号(===
)を3つ覚えてください。2つしか使っていないと正しく動作しません。これは、strpos()
が、干し草の中から針が見つからない場合にfalse
を返すからです。