名前空間を使用するPHP
はじめに
名前空間のクラス、関数、または定数は、次の方法で使用できます。
- 現在の名前空間でクラスを使用する
- 現在の名前空間に関連する名前空間を指定する
- 名前空間の完全修飾名を付ける
現在の名前空間から
この例では、名前空間がtest1.phpからロードされます。名前空間なしで参照される関数またはクラス名は、現在の名前空間にあるものにアクセスします
例
#test1.php <?php namespace myspace\space1; const MAX = 100; function hello() {echo "hello in space1\n";} class myclass{ static function hellomethod() {echo "hello in space1\n";} } ?>
このファイルを次のコードで使用します
例
<?php namespace myspace; include 'test1.php'; const MAX = 200; function hello() {echo "hello in myspace\n";} class myclass{ static function hellomethod() {echo "hello in myspace\n";} } hello(); myclass::hellomethod(); echo MAX; ?>
出力
hello in myspace hello in myspace 200
相対名前空間の使用
次の例では、関数とクラスに相対名前空間を使用しています
例
<?php namespace myspace; include 'test1.php'; const MAX = 200; function hello() {echo "hello in myspace\n";} class myclass{ static function hellomethod() {echo "hello in myspace\n";} } space1\hello(); space1\myclass::hellomethod(); echo space1\MAX; ?>
出力
上記のコードは次の出力を示しています
hello in space1 hello in space1 100
完全修飾名前空間
関数とクラスには絶対名前空間名が付けられています
例
<?php namespace myspace; include 'test1.php'; const MAX = 200; function hello() {echo "hello in myspace\n";} class myclass{ static function hellomethod() {echo "hello in myspace\n";} } \myspace\hello(); \myspace\space1\hello(); \myspace\myclass::hellomethod(); \myspace\space1\myclass::hellomethod(); echo \myspace\MAX . "\n"; echo \myspace\space1\MAX; ?>
出力
上記のコードは次の出力を示しています
hello in myspace hello in space1 hello in myspace hello in space1 200 100
-
PHPの名前空間キーワードとは何ですか?
この記事では、PHPの名前空間について学習します。 PHPでは、大規模なアプリケーションを作成する場合、またはサードパーティのアプリケーション/ライブラリを統合する場合、クラス名と関数名が衝突する可能性があります。したがって、これらの問題を回避するために、PHPの「名前空間」は、関連するクラス、インターフェース、関数、および定数をグループ化する方法を提供します。 以下の名前空間の宣言の構文を見てみましょう。 構文 <?php namespace MyfirstNamspace { function welcome()
-
C#のネストされた名前空間とは何ですか?
名前空間内の名前空間は、C#ではネストされた名前空間と呼ばれます。これは主に、コードを適切に構造化するために行われます。 外部名前空間があります- namespace outer {} その中に、外部名前空間内に内部名前空間があります- namespace inner { public class innerClass { public void display() { Console.WriteLine("Inner Namespace&quo