TP5.1容器调用如common目录里,common和provider文件里

在common目录下有一个Demo的类



namespace app\common;

class Demo
{
    public function index()
    {
        echo 'this is Container Demo in app\common';
    }

}

?>

在index模块下面的index文件调用

那么我们就是在index这个文件引入common下面的Demo文件的命名空间即可实例化获取

public function testDemo()
    {
        $demo = new Demo();
        echo $demo->index();
    }

使用注入的方式

public function testDemo(\app\common\Demo $demo)
    {
        
        echo $demo->index();
    }

使用绑定容器的方式实现

参看thinkphp\helper文件助手函数里边绑定容器跟获取容器标识的方法
在钩子文件中绑定common 下面的Demo这个类

public function testDemo()
    {
        bind('demo','\app\common\Demo');
        $demo = app('demo');
        echo $demo->index();
    }

预留了一个配置容器的provider.php

// 应用容器绑定定义
return [
    'demo' => '\app\common\Demo',
];

测试输出

public function testDemo()
    {
        
        $demo = app('demo');
        echo $demo->index();
    }

你可能感兴趣的:(TP5.1容器调用如common目录里,common和provider文件里)