欢迎访问 生活随笔!

生活随笔

当前位置: 首页 > 编程资源 > 编程问答 >内容正文

编程问答

tp框架命名空间使用(namespace,use,as,\)

发布时间:2024/9/19 编程问答 47 豆豆
生活随笔 收集整理的这篇文章主要介绍了 tp框架命名空间使用(namespace,use,as,\) 小编觉得挺不错的,现在分享给大家,帮大家做个参考.

TP命名空间

我的理解:作用就是如目录,区分开各文件

目录=文件夹

namespace:路径写到目录名;如:controller是对应文件的上级目录

namespace app\pc\controller;

use:路径写到类名;如:Controller是类名

use think\Controller;

as:取别名;如:

use aaa\Test;
use bbb\Test as b_Test;

\:获取顶级命名空间的类(其实就是这个类没写命名空间);如:

new \Test()

 

一,关于使用:

首先得了解一下TP类的自动加载,不然调用时可能无反应

https://blog.csdn.net/qq_41912505/article/details/102842895

  • 同一个目录中:不需要use,直接new且不需加“\” ;如: new Eefn();
  • 不同目录且没有命名空间:用“\”;如: new \Eefn();
  • 不同目录且有命名空间:用use再new或者new时用路径;如: use script\a\Eefn; new \script\a\Eefn();
  • 二,如果不了解TP类的自动加载

    首先必然的是加载类,require,include

    __DIR__:当前路径

    require_once (__DIR__ ."/../../../eefn/Test.php");//或者 require __DIR__ ."/../../../eefn/Test.php";

    2.类如果没有取命名空间,则默认是顶级命名空间。实例需加反斜杠:“\”

    $a = new \Test(); $a->say();

     

    三,.如果use了两个名字相同的类名,用as取别名区分

    use aaa\Test; use bbb\Test as b_Test;$a = new Text(); $b = new B_Text();

    参考文献:https://www.php.cn/php-weizijiaocheng-392925.html

    附: 

    静态方法只能调用静态的东西,且用self::代替$this

    上线app:

    苹果开发账户申请
    蒲公英

    总结

    以上是生活随笔为你收集整理的tp框架命名空间使用(namespace,use,as,\)的全部内容,希望文章能够帮你解决所遇到的问题。

    如果觉得生活随笔网站内容还不错,欢迎将生活随笔推荐给好友。