0

URL が Google の URL かどうかを確認したい。

私はこの機能を持っています

function isValidURL($url)
{
    return preg_match('|^http(s)?://google.com|i', $url);
}

私が試したら

if ( isValidURL('http://google.com/') ){
    echo 'yes its google url';
}

それは正常に動作します。でもやってみたら

if ( isValidURL('http://www.google.com/') ){
    echo 'yes its google url';
}

(とwww) エラーが出ます!

4

3 に答える 3

4

確かに、正規表現を処理する準備ができていないためですwww.

試す

function isValidURL($url)
{
    return preg_match('|^http(s)?://(www\.)?google\.com|i', $url);
}
于 2012-05-14T17:25:56.230 に答える
0

Google サブドメインをサポートする場合は、次のことを試してください。

preg_match('/^https?:\/\/(.+\.)*google\.com(\/.*)?$/is', $url)
于 2012-05-14T17:36:13.027 に答える
0

PHP の parse_url 関数を使用して URL を分析するのが好きです。URL の各部分を含む配列を返します。このようにして、正しい部分をチェックしていることを確認でき、https またはクエリ文字列によってスローされることはありません。

function isValidUrl($url, $domain_to_check){
       $url = parse_url($url);
       if (strstr($url['host'], $domain_to_search))
            return TRUE;
       return FALSE;
    }

使用法:

isValidUrl("http://www.google.com/q=google.com", "google.com");

于 2012-07-03T13:01:45.910 に答える