⊗ppOpNsSN 97 of 107 menu

PHPにおけるオブジェクト指向プログラミングの名前空間サブスペース

では、より複雑な状況があるとします: 管理者用に2つの Page クラスが必要です。 1つはページデータ用、もう1つはそのデータの表示用です。 最初のクラスが /admin/data/page.php ファイルにあり、 2番目のクラスが /admin/view/page.php ファイルにあるとします。

前のレッスンですでに、 admin フォルダ内のすべてのクラスは Admin 名前空間に属すると決定しました。 しかし、今、この同じ名前空間内で2つのクラスが競合しています。 この問題を解決するために、追加の名前空間サブスペースを作成できます。 たとえば、 Admin 名前空間を作成し、 その中に DataView のサブスペースを作ることができます。 この場合、これらのサブスペースの名前は、 名前空間を定義するときも、クラスのオブジェクトを作成するときも、 バックスラッシュで区切って記述します。

ここで、サブスペースのネストレベルには 制限がないことを明確にしておく必要があります (サブスペース内にさらにサブスペースを作成することができます)。

それでは、上記で説明した例を完成させましょう。 /admin/data/page.php ファイルの Page クラスには、 Admin\Data 名前空間を指定します:

<?php namespace Admin\Data; class Page { } ?>

/admin/view/page.php ファイルの Page クラスには、 Admin\View 名前空間を指定します:

<?php namespace Admin\View; class Page { } ?>

クラスのオブジェクトを作成しましょう:

<?php require_once '/admin/data/page.php'; require_once '/admin/view/page.php'; $adminDataPage = new \Admin\Data\Page; $adminViewPage = new \Admin\View\Page; ?>

modules/cart フォルダがあるとします。 このフォルダ内のすべてのクラスが Modules\Cart 名前空間に属するように設定してください。

modules/shop/cart/ フォルダがあるとします。 このフォルダ内のすべてのクラスが Modules\Shop\Cart 名前空間に属するように設定してください。

日本語
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItalianoქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
当サイトでは、サイトの動作、分析、パーソナライゼーションのためにクッキーを使用しています。 データ処理はプライバシーポリシーに従って行われます。
すべて受け入れる 設定 拒否