在controller下面use app\index\model\Video类重复

在controller下面use app\index\model\Video类重复

namespace app\index\controller;
use think\Db;
use app\index\model\Video;

class Video extends Base{
   public function mysql(){
       $quset = Db::query("select * from imooc_video where id=1");
       dump($quset);
   }
   public function model(){
       $video = Video::get(1);
       dump($video);
   }
}


代码一样的,为什么我的报错呀?

Fatal error: Cannot declare class app\index\controller\Video because the name is already in use in D:\wamp\www\project\thinkphp5\application\index\controller\Video.php on line 6

正在回答 回答被采纳积分+1

登陆购买课程后可参与讨论,去登陆

1回答
好帮手慕小尤 2019-07-18 10:46:46

同学你好,报错信息:致命错误:无法声明类app\index\controller\Video,因为在第6application\index\controller\Video.php中已经使用了这个名称。

同学因为在类中已引用video模型类,导致类名冲突。解决方法:可以给video模型类一个别名。代码如下:

namespace app\index\controller;
use think\Db;
use app\index\model\Video as VideoModel;

class Video extends Base{
    public function mysql(){
        $quset = Db::query("select * from imooc_video where id=1");
        dump($quset);
    }
    public function model(){
        $video = VideoModel::get(1);
        dump($video);
    }
}

祝学习愉快!

问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师