* nixサーバーのすべてのURLでは、大文字と小文字が区別されます。 Windowsサーバー上の一部のURLでは、大文字と小文字が区別されます。
編集:ドメイン名は大文字と小文字を区別しません(実際には、クライアントは小文字に変換します)。
http://user:[email protected]/somedir/somefile.ext?someQueryString=someValue#fragment
=======----------==========--------------------------------------------------------
Legend:
- : Case sensitive
= : Case insensitive
注:仕様断片によっては、大文字と小文字を区別することになっているが、それはすべてのクライアントにそのように実装されていません。
これは、あなたがしようとしていることを行うのは非常に悪い考えです。ドメイン名を小文字にするのが最善の方法です。
編集2:
function urltolower($url) {
$parts = @parse_url($url);
if($parts === FALSE) return FALSE;
$url = '';
if(!empty($parts['scheme'])) $url .= strtolower($parts['scheme']) . (($parts['scheme'] == 'file') ? ':///' : '://');
if(!empty($parts['user'])) $url .= $parts['user'] . ((!empty($parts['pass'])) ? ':' . $parts['pass'] : '') . '@';
if(!empty($parts['host'])) $url .= strtolower($parts['host']);
if(!empty($parts['port'])) $url .= ':' . $parts['port'];
if(!empty($parts['path'])) $url .= $parts['path'];
if(!empty($parts['query'])) $url .= '?' . $parts['query'];
if(!empty($parts['fragment'])) $url .= '#' . $parts['fragment'];
return $url;
}
[mixed] urltolower($url)
はURLを小文字に:あなたが尋ねたので、ここで適切に指定されたURLを小文字になる機能(スキームのみとドメイン)です。失敗した場合、FALSE
を返します。成功すると小文字のURLを返します。
例:
echo urltolower('HTTP://en.WikiPedia.org/wiki/PHP');
//echo's http://en.wikipedia.org/wiki/PHP
Wwikipediaのリンクでは大文字と小文字が区別されますか?彼らは大文字と小文字を区別しないようです... –
ほとんどのURLは大文字小文字を区別しますが、Windowsサーバでホストされているものが例外です。私は最初は悪い考えだと思う。 URLを元のケースに保存するとどうなりますか? –
パスはすべてのURLで大文字と小文字が区別されることを認識しています。大文字小文字を間違えた場合、ほとんどのサーバーが正しいことを行うのは偶然の問題です。 –