关于Thinphp调用自定义类的问题

    xiaoxiao2021-03-25  158

    tp的类库分为两种:公共类库和应用类库;

    公共类库

    公共类库指ThinkPHP/Library目录下面的类库,比如

    Think目录:系统核心类库;

    Org目录:第三方公共类库。

    将类放在公共类库比较简单,根据参考手册很容易理解。首先需要更改自定义类的命名空间。比如放在Org/Util目录下,那么命名空间名就应该是Org\Util。如下图所示:

    调用的方式:

    首先引入命名空间:use Org\Util;

    实例化方式:$page = new \Org\Util\Page($count,$per);

    应用类库

    应用类库是指在应用或者模块目录下面的类库,应用类库的命名空间一般是模块的名称为根命名空间。 应用类库下的根目录: 默认的有Home、Common 自己建的User(User中内容和Home是一样的) 实例一: 在User/Common下新建一个自定义类(静态类),则该类的命名空间应该为User\Common 控制器中调用该类的方式: 首先引入命名空间:use User\Common; 调用该静态类的方法:$result = \User\Common\CommonOperator::myUpload($file,$error); (如果需要实例化,就是new \User\Common\CommonOperator) 实例二: 在Common下新建一个Myclass目录,并自定义类(静态类),则该类的命名空间应该为Common\Myclass 控制器中调用该类的方式: 调用该静态类的方法:$result = \Common\Myclass\Image::ini_img($img,$dirpath); (如果需要实例化,就是new \Common\Myclass\Image) 补充:实例二经本人测试发现,ThinkPHP3.2.3是没有问题的,但是3.2.2却走不通,最后放到公共类库下才调用成功 注:声明的命名空间引入该命名空间的路径应该是一致的。
    转载请注明原文地址: https://ju.6miu.com/read-12173.html

    最新回复(0)