ホームページ  >  記事  >  バックエンド開発  >  ドメイン名を取得する

ドメイン名を取得する

WBOY
WBOYオリジナル
2016-07-25 09:08:071291ブラウズ
ecmall のコア ファイル ecmall.php を見ていたら、この関数がよりわかりやすく書かれていたので、それを取り出して共有しました。


  1. function get_domain() {
  2. /* プロトコル*/
  3. $protocol = (isset($_SERVER['HTTPS']) && (strto lower($_SERVER['HTTPS']) != 'off')) ? 'https://' : 'http://';
  4. /* ドメイン名または IP アドレス*/
  5. if (isset($_SERVER['HTTP_X_FORWARDED_HOST'])) {
  6. $host = $_SERVER['HTTP_X_FORWARDED_HOST' ] ;
  7. } elseif (isset($_SERVER['HTTP_HOST'])) {
  8. $host = $_SERVER['HTTP_HOST'];
  9. } else {
  10. /* ポート*/
  11. if (isset($_SERVER['SERVER_PORT ' ])) {
  12. $port = ':' . $_SERVER['SERVER_PORT'];
  13. if ((':80' == $port && 'http://' == $protocol) || (': 443 ' == $port && 'https://' == $protocol)) {
  14. $port = '';
  15. }
  16. } else {
  17. $port = '';
  18. }
  19. if (isset($_SERVER [ 'SERVER_NAME'])) {
  20. $host = $_SERVER['SERVER_NAME'] . $port;
  21. } elseif (isset($_SERVER['SERVER_ADDR'])) {
  22. $host = $_SERVER['SERVER_ADDR'] . $port;
  23. }
  24. }
  25. $protocol を返す . $host;
  26. }
コードをコピー

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