ホームページ  >  記事  >  バックエンド開発  >  PHP 名前空間 namespace の定義方法の詳細な説明

PHP 名前空間 namespace の定義方法の詳細な説明

黄舟
黄舟オリジナル
2017-03-30 09:11:431054ブラウズ

この記事では、主に PHPネームスペースネームスペースの定義方法と、PHP ネームスペースネームスペースとサブネームスペースの関連する注意事項をサンプル形式で詳細に分析します。 この記事の例では、PHP 名前空間名前空間を定義する方法を説明します。参考のために皆さんと共有してください。詳細は次のとおりです。

名前空間を定義します

空間の名前付けについては、ここでは言葉で説明したくありません。より適切な説明は、次のとおりです。例:

For

例:

次のコードは「test.php」内のファイルです:

namespace Test;
class Test{
    public function Ttest(){
     echo "这是Test里面的测试方法"."<br>";
    }
}
次に、3 つの異なる方法でアクセスします。これらの 3 つのアクセス プログラムを「index」という名前のファイルに書きました。 .php" 媒体:

方法 1:

namespace Index;
require &#39;test.php&#39;;
$T=new \Test\Test();
$T->Ttest();
結果は次のとおりです: これは Test のテストメソッドです

方法 2:

namespace Index;
namespace Test;
require &#39;test.php&#39;;
$T=new Test();
$T->Ttest();
結果は次のとおりです: これはTest のテスト メソッド テスト メソッド

方法 3:

namespace Index;
require &#39;test.php&#39;;
use Test\Test;
$T=new Test();
$T->Ttest();
結果は次のとおりです: これは Test のテスト メソッドです

注: 名前空間インデックスは書き込んでも書き込めなくても構いません。これは単なるスペースですIndex.php ファイルの名前。これら 3 つの方法で得られる結果は同じです。

サブ名前空間を定義する

定義: ディレクトリとファイル間の関係と同様に、PHP 名前空間でも階層的な名前空間名を指定できます。したがって、名前空間名を階層的に定義できます。

例は以下に示すとおりで、これは私がカスタマイズしたプロジェクト ディレクトリです:

one.php

namespace projectOne\one;
class Test{
    public function test(){
     return "this is a test program";
    }
}
one.php の Test クラスにある test() メソッドにアクセスするために、Two のコードは次のとおりです。以下のように:

Two.php

namespace projectOne\one;
require &#39;../projectOne/One.php&#39;;
$O=new Test();
echo $O->test();

出力: これはテストプログラムです

複数の名前空間が同じファイルで定義されており、相互にアクセスします

test.php

namespace projectOne\one{
    class test{
      public function hello(){
        return "helloworld";
      }
    }
}
namespace projectOne\Two{
    class project{
      public function world2(){
        return "welcome to china";
      }
    }
    class project2 extends \projectOne\one\test{
      public function wo(){
        return "this is my test function ,it is name wo";
      }
    }
}
namespace projectOne\Two{
    $p=new project2();
    echo $p->wo()."<br>";
    echo $p->hello();
}

出力: これは私のテスト関数です名前を

helloworld

です

以上がPHP 名前空間 namespace の定義方法の詳細な説明の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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