对于面向对象编程而言,命名空间namespace和u的概念非常重要.
1.根命名空间是反斜线 \ ,有点类似linux中的根目录 / 的那种感觉,但使用var_dump()函数打印时其实是空字符串
1 var_dump(__namespace__);2 //string(0) ""
2.而对于根下的子代命名空间,则会显示名称.
1 namespace app;2 var_dump(__namespace__);3 string(3) "app"
3.同一文件中可以有多个命名空间(仅从语法角度讨论).
1 <?php 2 namespace app; 3 var_dump(__namespace__); 4 namespace admin; 5 var_dump(__namespace__); 6 namespace shop; 7 var_dump(__namespace__); 8 //d:\workspace\mvc\test.php:3: 9 //string(3) "app"10 //d:\workspace\mvc\test.php:5:11 //string(5) "admin"12 //d:\workspace\mvc\test.php:7:13 //string(4) "shop"
4.在同一文件中,在某个命名空间中使用另一个命名空间的类.
1 <?php 2 namesp个人信用报告ace app; 3 var_dump(__namespace__); 4 nam月薪过万的文科职业espace admin; 5 var_dump(__namespace__); 6 class a{ 7 public static $name = 'classa'; 8 } 9 namespace shop;10 var_dump(__namespace__);11 echo \admin\a::$name;12 //d:\workspace\mv开学第一课手抄报小学c\test.php:3:13 //string(3) "app"14 //d:\workspace\mvc\test.php:5:15 //string(5) "admin"16 //d:\workspace\mvc\test.php:10:17 //string(4) "shop"18 //classa
在命名空间shop中使用命名空间admin的类a,需要在admin前方加反斜线 \ ,表示从根命名空间查找,如果没有最前面的反斜线,则会报错.
5.文件a引入了另一个文件b,文件a中的命名空间不受影响.
文件b:
1 <?php 2 namespace app; 3 var_dump(__namespace__); 4 namespace admin; 5 var_dump(__namespace__); 6 class a{ 7 public static $name =感恩帮助过我的人短语 'classa'; 8 } 9 namespace shop;10 var_dump(__namespace__);11 echo admin\a::$name;
文件a:
1 <?php2 require 'b.php';3 var_dump('k'.__namespace__.'k');4 //string(2) "kk"
文件b中定义了很多命名空间,当文件a引入文件b后,并没有受到影响.
6.在文件2中使用文件1中某个命名空间的类
1 <?php 2 /* 3 ** 1.php 4 */ 5 namespace a; 6 class test{ 7故人具鸡黍 const n = 1; 8 } 9 namespace b;10 class test{11 const n = 2;12 }
1 <?php2 /*3 ** 2.php4 */5 require_once '1.php';6 echo \a\test::n;//17 echo php_eol;8 echo \b\test::n;//2
1 <?php2 /*3 ** 2.php4 */5 require_once '1.php';6 u \a\test;7 echo test::n;//18 echo php_eol;9 echo b\test::n;//2
本文发布于:2023-04-07 21:57:01,感谢您对本站的认可!
本文链接:https://www.wtabcd.cn/fanwen/zuowen/de2a8079132c7e1a456af2613a59f4dc.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文word下载地址:php中命名空间namespace和use.doc
本文 PDF 下载地址:php中命名空间namespace和use.pdf
留言与评论(共有 0 条评论) |