abstract:<?php // namespace inc; // class demo1{ // public function zz($a,$b,$c){ // return $a.'+'.$b.'+'.$c.'='.($a+$b+$c) ; //
<?php // namespace inc; // class demo1{ // public function zz($a,$b,$c){ // return $a.'+'.$b.'+'.$c.'='.($a+$b+$c) ; // } // } // $a=new demo1; // //自动加载文件; // spl_autoload_register(function($class){ // var_dump( $class); // $path = str_repeat('\\', DIRECTORY_SEPARATOR,$class); // }); // //返回类名,会找到空间下面的类;空间名和类名不存在斜杠的写法(inc\class); // echo get_class($a); //在一个脚本中声明多个命名空间; namespace demo1{ class A{ public static function s1(){ return 111; } } function s2(){ return '我的名字叫鲁xiansheng'; } // echo \demo1\s2().'<br>'; //绝对路径输出当前命名空间下; echo __NAMESPACE__ .s2(); //输出当前命名空间;没有命名空间输出就为空; echo class; } //namespace关键字作用于单个php文件中,如果当前文件中没有第二个namespace,那么所有在本文件内申明的函数,类,常量,都在这个命名空间里; //如果把外部文件引入到当前命名空间下,外部php文件的类,常量,函数 也并不属于本文件命名空间; // 区别:__NAMESPACE__ 输出的是当前命名空间名称的字符串,在全局的话,输出为空, // namespace ,可用来显式访问当前命名空间或子命名空间中的元素。它等价于类中的 self 操作符。 ?>
Correcting teacher:天蓬老师Correction time:2019-05-14 17:46:27
Teacher's summary:命名空间是现代php的编程基础, 如果不会, 会造成极大的困惑