この記事の例では、php での名前空間の使用方法について説明します。参考までに共有します。詳細は次のとおりです。
今さら言うのも時代遅れな気がしますが、名前空間に慣れていないためか、名前空間を使用する人はあまり多くないように感じます。
クラスは関数を一つ一つ整理したもので、名前空間はクラスや関数などを整然と整理したものと理解できます。個人的には、名前空間の主な利点は次のとおりだと思います
第一に、コードをより適切に管理できることです
第二に、より多くのファイルを使用すると、クラスと関数の重複名の回避が可能になります
第三に、コードの可読性が向上します
定義名前空間
1.namespace userCenter; //php代码 namespace userCenter\register; //php代码 namespace userCenter\login { //php代码 }
名前空間は、同じコード内で複数回ネストしたり宣言したりすることはできません (最後のもののみが認識されます)。ただし、同じファイル内で複数の名前空間コードを定義できます。ファイルごとに名前空間を定義する方が適切です (同じ名前空間でもかまいません)。
2. 名前空間を呼び出す
\userCenter\register; //绝对调用 userCenter\login; //相对调用 use userCenter\register; //引用空间 use userCenter\register as reg; //引用空间并加别名
3. 例の説明
login.class.php
<?php namespace userCenter; function check_username(){ echo "login OK<br>"; } class login{ public function save(){ echo "login had saved<br>"; } } ?>
regist.class.php
<?php namespace userCenter\regist { function check_username() { echo "regist OK<br>"; } class regist{ public function save(){ echo "regist had saved<br>"; } } } ?>
test.php
<?php require "login.class.php"; require "regist.class.php"; use userCenter\regist; //使用use调用空间 use userCenter\regist as reg; //as定义别名 echo \userCenter\check_username(); //绝对调用 $login = new \userCenter\login(); echo $login->save(); echo regist\check_username(); //相对调用 echo reg\check_username(); //别名调用 $regist = new reg\regist(); echo $regist->save();
絶対にクラスや関数などにプレフィックスを追加するなど、呼び出しがより明確になるようにする必要があります。
この記事が PHP プログラミングのすべての人に役立つことを願っています。
以上、PHPにおける名前空間の利用状況の分析例を内容も含めて紹介しましたが、PHPチュートリアルに興味のある友人の参考になれば幸いです。