发新帖

[PHP] thinkphp5的控制器调用自身模块和调用其他模块的方法

零下一度 2022-4-25 822

以user为例,调用user.php的get_number()方法

一、不管是调用自身模块还是其他模块app\model\User.php写法不变

<?php 
namespace app\index\model;
use think\Model;
 class user extends Model
{
     public function get_member(){
         return 3;
     }
}

二、user控制器调用user模块(即控制器调用自身模块)

<?php
namespace app\index\controller;
use think\Db;
use think\Controller;
use app\index\model\User as Users;
class User extends Controller
{
     public function wudi(){
         $user = new Users();
         $user = $user -> get_member();
         echo $user;
     }
}

三、Index控制器调用user模块(即控制器调用其他模块)

<?php
namespace app\index\controller;
use think\Db;
use think\Controller;
use app\index\model\User;
class Index extends Controller
{
    public function wudi(){
        $user = new User();
        $user = $user -> get_member();
        echo $user;
    }
}

四、分析

控制器调用自身模块因为名字都是User,会出现报错。

为了防止这种情况,对User重命名就可以了

重命名语法是(User as 新名字)


最新回复 (0)
返回
零下一度
主题数
928
帖子数
0
注册排名
1