设为首页
收藏本站
Archiver
用户
登录
入住
用户名
Email
自动登录
找回密码
密码
登录
入住 CI 中国社区
首页
返回 CodeIgniter 中国首页
论坛
BBS
导读
Guide
个人主页
Space
中文手册
搜索
CodeIgniter 搜索引擎
视频教程
案例
任务
搜索
搜索
本版
帖子
用户
设为首页
收藏本站
Archiver
开启辅助访问
切换到宽版
日志
相册
分享
记录
CodeIgniter4
CodeIgniter3
CodeIgniter2
帖子
好友
道具
勋章
收藏
任务
记录
留言板
设置
我的收藏
退出
腾讯QQ
微信登录
CodeIgniter 中国开发者社区
»
论坛
›
CodeIgniter 开发
›
CodeIgniter 问答求助
›
controller目录与model目录里不能有相同的文件名? ...
返回列表
查看:
4925
|
回复:
7
controller目录与model目录里不能有相同的文件名?
[复制链接]
szlinz
szlinz
当前离线
积分
174
IP卡
狗仔卡
发表于 2008-1-20 10:23:15
|
显示全部楼层
|
阅读模式
我在controller目录建了一个upload.php的控制器,在model目录里也建了一个upload.php模型,用controller里的upload.php调用model里的upload模型时报错,把model里的upload.php改成uploads.php,里边的类也相应更改,运行就正常了。
看来在controller里调用model里的类时命名不能一样,新手,没办法,弄了老半天才发现这个原因,如果你也是新手,不要再犯我同样的错误。
回复
使用道具
举报
提升卡
置顶卡
沉默卡
喧嚣卡
变色卡
千斤顶
显身卡
Hex
Hex
当前离线
积分
50178
IP卡
狗仔卡
发表于 2008-1-20 13:21:47
|
显示全部楼层
对呀,PHP里变量名不能重复呀!你可以LOAD的时候重命名控制器或者模型。
具体可以参考文档里的。
回复
支持
反对
使用道具
举报
显身卡
沧蓝
沧蓝
当前离线
积分
757
IP卡
狗仔卡
发表于 2008-1-20 13:27:47
|
显示全部楼层
调用模型时是用 Model_name(比如upload的话就是Upload_model),这是用户手册里写着的。
http://codeigniter.com/user_guide/general/models.html
回复
支持
反对
使用道具
举报
显身卡
Hex
Hex
当前离线
积分
50178
IP卡
狗仔卡
发表于 2008-1-20 13:34:01
|
显示全部楼层
CTO说的对,要遵守命名规则~~~~
回复
支持
反对
使用道具
举报
显身卡
anvycn
anvycn
当前离线
积分
4
IP卡
狗仔卡
发表于 2008-1-21 13:09:02
|
显示全部楼层
每一个controller都是一个CI的实例,在实例里面的每一个成员名称不允许和CI的标准成员重复
你load一个叫foobar的lib和load一个叫foobar的model
在当前实例里面都被定义为 $this->foobar
引起CI实例的冲突
回复
支持
反对
使用道具
举报
显身卡
bbiao
bbiao
当前离线
积分
58
IP卡
狗仔卡
发表于 2008-4-1 21:07:56
|
显示全部楼层
这个问题的本质原因是你创建了两个类名相同的类,在PHP里当然是不行的。最好的办法就是使用XXX_model或XXXModel的方式来命名Model
回复
支持
反对
使用道具
举报
显身卡
sam
sam
当前离线
积分
466
IP卡
狗仔卡
发表于 2008-4-2 07:31:56
|
显示全部楼层
对。。不能相同。:)。。在php中遵守java中的命名方法,永远也不会重复。。
回复
支持
反对
使用道具
举报
显身卡
beautylove
beautylove
当前离线
积分
341
IP卡
狗仔卡
发表于 2008-4-3 18:06:22
|
显示全部楼层
好贴!各位大佬都来给解释。。。
新人我很受鼓励呀!
回复
支持
反对
使用道具
举报
显身卡
返回列表
高级模式
B
Color
Image
Link
Quote
Code
Smilies
您需要登录后才可以回帖
登录
|
入住 CI 中国社区
本版积分规则
发表回复
回帖后跳转到最后一页