Yii::import的文件里只能写一个class吗?
我的php文件里写了一个类一个接口,文件名是按class1来命名的,可是使用时抱错说找不到’interface1.php’…,Yii::import()是一个文件只能含有一个类吗?
class class1{
}
interface interface1{
}
Yii::import的文件里只能写一个class吗?
我的php文件里写了一个类一个接口,文件名是按class1来命名的,可是使用时抱错说找不到’interface1.php’…,Yii::import()是一个文件只能含有一个类吗?
class class1{
}
interface interface1{
}
难道你import interface1 了?
Yii::import,有两个参数,貌似没有注意第二个参数啊.Yii::import了class1,只是存储了class1的包含路径,并没有require它,再使用interface1接口,yii autload时只会在存储的静态数组中去查找。因为你没有定义interface1为key的import 路径 肯定会出错了。
有几种方法可供选择
第一,单独把接口拿出来,不要和类写在一起。和yii类似把所有接口写在一起(base/interfaces.php),直接在程序逻辑前面一次require
第二,非要写把它和类放在一个文件里的,在使用class1之后再去使用interface1,但这样又没有太大的意义。
第三,Yii::import(class1,true),在将class1类文件路径存储时,同时include该文件
推荐第一种方法
原来如此,多谢各位!