ホームページ >バックエンド開発 >PHPチュートリアル >URL に「http://」プレフィックスを安全かつ確実に追加するにはどうすればよいですか?

URL に「http://」プレフィックスを安全かつ確実に追加するにはどうすればよいですか?

Mary-Kate Olsen
Mary-Kate Olsenオリジナル
2024-12-01 12:05:16993ブラウズ

How Can I Safely and Reliably Add

URL のプロトコル プレフィックス

URL を扱う場合、多くの場合、有効なプロトコル プレフィックスが存在することを確認する必要があります。これは、URL が適切に解決され、ブラウザや他のネットワーク サービスからアクセスできることを保証するために重要です。プロトコル プレフィックスが存在しない場合は、URL の機能を強化するために追加できます。

「http://」を安全かつ柔軟に追加する

動的に追加するにはプロトコル プレフィックスのない URL に「http://」を追加するには、堅牢なアプローチが不可欠です。そのようなアプローチの 1 つは、@nickf によって提供されたコード サンプルの修正バージョンを利用します:

function addhttp($url) {
    if (!preg_match("~^(?:f|ht)tps?://~i", $url)) {
        $url = "http://" . $url;
    }
    return $url;
}

この関数は、正規表現を使用して、URL に有効なプロトコル プレフィックス (ftp://、ftps のいずれか) が既に含まれているかどうかを確認します。 ://、http://、または https://)。そうでない場合は、URL に「http://」がシームレスに追加されます。大文字と小文字を区別しないマッチングにより、さまざまな大文字と小文字の形式の URL との互換性が保証されます。

実際の応用

この関数をさまざまなサンプル URL に適用すると、次の結果が得られます:

addhttp("google.com"); // http://google.com
addhttp("www.google.com"); // http://www.google.com
addhttp("google.com"); // http://google.com
addhttp("ftp://google.com"); // ftp://google.com
addhttp("https://google.com"); // https://google.com
addhttp("http://google.com"); // http://google.com
addhttp("rubbish"); // http://rubbish

この調整されたアプローチにより、プロトコル プレフィックスのない URL には効果的に「http://」がプレフィックスとして付けられます。既存の有効なプレフィックスを持つ URL はそのまま残されます。これにより、さまざまなシナリオにわたって一貫した効率的な URL 処理が可能になります。

以上がURL に「http://」プレフィックスを安全かつ確実に追加するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。