2011-12-05 17 views
0

、このコードを考慮:名前空間宣言で同じ名前空間の使用を定義することをお勧めしますか?私は思っていた

namespace A\B; 
use A\B as AB; 
use \Z\V as ZV; // another used namespace 

class Merry { 
    public static function Christmas{} 
} 

私のプロこれは、アプリケーション全体で、私はAB\Merry::Christmas()としてMerry::Christmas()を参照してくださいので、私はとき私はどこ、私が覚えておく必要はありません、ということですやってコーディングと私はちょうどAB\Merry::Christmas()をどこでも使用します。混乱や愚かなPHPエラーはありません。また、それは私に少し清潔に思えます。

名前空間宣言内に名前空間のuseを定義することをお勧めしますか?

+0

名前空間を覚えたくない場合は、誰も思考を妨げることはありませんが、多くの文字の組み合わせを名前空間として入力する必要があります。しかし、クラスは衝突します。 – hakre

+0

@downvoter:本当の質問ではない?真剣に? – Shoe

+0

@hakre、私はそれを得たとは思わない。クラスは衝突するでしょうか?どうやって? – Shoe

答えて

1

多分私は何かが欠けているかもしれませんが、私はそれが興奮するものとしてそれを見ません。あなたがどこでもAB\Merry::Christmas();とタイプする限り、ちょうど2つ以上の文字であり、useのステートメントを必要としない\A\B\Merry::Christmas();を使用することからあなたを止めることはありません。つまり、余分なuseステートメントは有害ではないので、あなたのボートを浮かべて、特定のアプリケーションのネームスペースのレイアウトに最も適したものを作成してください。

+0

私の例のAとBは単なるサンプル名です。 Aは 'Avyuwfiuuf'と' Boiuwegfig'でもあり、 'AB'は' Avyuwfiuuf \ Boiuwegfig'を意味します。 – Shoe

+0

@JeffPigarelli:まあまあです。それは疑問からは分かりませんでした。そういう意味では意味があります。あなたが一貫して他の名前を使用すると、それはより短く明確になります。 – Boann

+0

ええ、誤解をおかけして申し訳ありません。 – Shoe