ホームページ > バックエンド開発 > PHPの問題 > PHP の名前空間とは何ですか?名前空間を使用するにはどうすればよいですか?

PHP の名前空間とは何ですか?名前空間を使用するにはどうすればよいですか?

慕斯
リリース: 2023-03-10 19:16:01
オリジナル
2114 人が閲覧しました

前回の記事では「PHP の高度な構文 - Trait とは?」について紹介しました。どのように使用しますか?彼の特徴は何ですか? 》に引き続き、この記事では PHP の名前空間とは何なのかについて紹介していきます。名前空間を使用するにはどうすればよいですか?

PHP の名前空間とは何ですか?名前空間を使用するにはどうすればよいですか?

名前空間:

ファイル内に Person クラスが存在する場合、別の Person クラスを定義できますか?

ネームスペースはフォルダーです。

異なる名前空間で同じクラス名を持つことができます

namespace: namespace

use: use

まず、新しいファイルを作成します。ファイル内に person クラスを定義しましたが、引き続き person クラスを確認できますか?デバッグ用の例としてこのコードを取り上げます。コードは次のとおりです:

<?php
   class person
   {
   }
   
   class person
   {
   }
?>
ログイン後にコピー

結果は次のとおりです:

PHP の名前空間とは何ですか?名前空間を使用するにはどうすればよいですか?

結果は、コードが person クラスを繰り返し定義できないというエラーを報告していることを示しています。これは明らかなエラーです。同じファイル内に 2 つの同一のファイルを含めることはできませんが、必要な場合は、同じクラス名を持つために、名前空間を参照できるという概念です。

次に、名前空間の使用を開始します。先ほど書いたコードでは、最初の人物を 1 つの名前空間の下に書き、2 人目の人物を別の名前空間の下に書きました。これにより、同時に 2 つの人物クラスを定義できるようになります。名前空間は次のように記述されます: さらに、名前空間に名前を付ける必要があるため、作成したばかりのコードは定義したばかりの名前空間内にあります。内部では、このコードを実行してもエラーが報告されるため、定義する必要があります二人称クラスの名前空間を定義し、一人目のクラスと二番目のクラスにそれぞれメソッド(関数)を定義します このとき、2つのクラスは同じ名前ですが、同じ名前空間には存在しません 具体的なコード

<?php
namespace love;
   class Person
   {
     function pome()
     {
       echo &#39;我明白你会来,所以我等<br />&#39;;
     }
   }
   namespace like;
   class Person
   {
     function pome()
     {
     echo &#39;不须耳鬓常厮伴,一笑低头意已倾<br />&#39;;
   }
   }
?>
ログイン後にコピー

結果は次のとおりです:

PHP の名前空間とは何ですか?名前空間を使用するにはどうすればよいですか?

結果の表示は正しく、エラーはありません。報告済み;

記述したコードの内容を出力したい場合は、新しい person オブジェクトを作成する必要があります。そうしないと、どれが出力 person クラスであるかがわかりません。コードは次のとおりです。

 $ming = new Person();
   $ming ->pome();
ログイン後にコピー

結果は次のとおりです:

PHP の名前空間とは何ですか?名前空間を使用するにはどうすればよいですか?

注: オブジェクトを作成するとき、スペースという名前を付けます。

最初の名前空間の内容を出力したい場合は、次のように記述する必要があります:

$niu = new \love\Person();
  $niu->pome();
ログイン後にコピー

結果は次のようになります:

PHP の名前空間とは何ですか?名前空間を使用するにはどうすればよいですか?

1. 最初の名前空間の命名: その前にコードを置くことはできません

2. ルート空間とサブ空間

ルート空間

あなたの hello スペースは実際には

\hello .
ログイン後にコピー

あなたのワールド スペースは実際には

\world
ログイン後にコピー

あなたはワールド空間で

hello\Dog ===> world\hello\Dog
ログイン後にコピー

3. use, as use

use \hello\test\Dog as SmallDog;
use
\world\Dog as BigDog;
ログイン後にコピー
推奨学習:

phpビデオチュートリアル

以上がPHP の名前空間とは何ですか?名前空間を使用するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート