1

ちょっとした質問です。

$HOST = $_SERVER["HTTP_HOST"];

$HOST私のWebアプリケーション全体で使用します

また

したほうがいいですか

define ( "HOST", $_SERVER["HTTP_HOST"] );

HOSTWeb アプリケーション全体で使用する

また

変数と定数の使用を忘れて$_SERVER["HTTP_HOST"];、ホストが必要になるたびに使用する方が良いですか?

どちらの方法がより効率的ですか。どちらの方が読みやすいですか。

どの方法を使用すればよいですか?

4

4 に答える 4

2

2番目のものを使用する方が良いです。

define ( "HOST", $_SERVER["HTTP_HOST"] );

それを定義し、どこでも使用します..

ハードコーディングは将来に多くの影響を与えるため、いずれにしても3番目のものには行かないでください。

于 2012-04-12T13:02:13.067 に答える
2

グローバル変数が少ないほど良いので $_SERVER["HTTP_HOST"]、すべてのアプリケーションで使用してください。本当に定義したいのなら

define ( "HOST", $_SERVER["HTTP_HOST"] );

行く方法です

于 2012-04-12T13:02:37.303 に答える
0

グローバル状態は、コンポーネントを結合し、 IoCの概念を壊すため、通常は悪い状態です。

依存性注入を使用して、クラスとモジュールの間でパラメーターを渡します。

しかし、本当にグローバル変数を使用したい場合は、単に使用しないのはなぜ$_SERVER["HTTP_HOST"]ですか?

于 2012-04-12T13:02:49.960 に答える
0

ベターは相対的な用語です。$_SERVER["HTTP_HOST"] の使用は完全に受け入れられます。なぜなら、それを見ている人はそれが何であるべきかを本能的に知っており、完全な URL が含まれているかどうかを推測する必要がないからです。

テストのために本番ホスト名をスプーフィングする必要がある場合でも、$_SERVER['HTTP_HOST'] = 'www.mywebsite.whatever'.

于 2012-04-12T13:03:07.987 に答える