yezihack 发表于 2011-11-2 10:05:28

关于ci框架里用魔术方法(__call())

本帖最后由 yezihack 于 2011-11-3 17:27 编辑

在controller的test.php 里写一个__call魔术方法
class test extends CI_Controller{
   function __call($key,$args){
               echo "你调用的".$key."函数不存在, 传入的参是:".$args;
   }
}
浏览器输入:http://localhost/ci/test/abc/1
如果安照魔术方法来解释.在ci里调用test类名.abc方法不存在,和参数1.应该会输出上面的魔术方法.但实际运行里,找不到页面.有高手路过.请留步,帮帮小童鞋.非常感谢大侠.陆见不平.我乃三生有幸得到你的真教.哈哈.{:2_36:}
有愿意一起研究ci的加入技术群:118176067

acabin 发表于 2011-11-2 10:44:24

class Test

yezihack 发表于 2011-11-2 10:50:30

2楼,你啥意思.懂就告诉我

小凡 发表于 2011-11-2 11:51:44

class Test extends CI_Controller类名要大写

shenma 发表于 2011-11-2 11:54:11

我试了一下__call(),我这儿也是报错找不到页面。
我不知道怎么解决,但是我猜测,是不是有个优先级的问题? 这个报错是ci自带的报错,是不是要配置一些参数,让 ci先加载自己定义的方法,其次再加载 ci 自定义的报错信息?
我也不解,等待高人!

shenma 发表于 2011-11-2 11:54:45

类名跟他没有太大关系大写了也不行。

att555 发表于 2011-11-2 12:52:47

这个问题有点高深,看不懂

jeongee 发表于 2011-11-2 14:06:33

当然了,因为还没运行到这里就被CI认定是404了,建议你阅读下源代码,看看CI的执行过程

yezihack 发表于 2011-11-2 15:00:17

没有知道的吗.一起研究一下.

乔布斯 发表于 2011-11-2 22:25:13

高级玩家
页: [1] 2
查看完整版本: 关于ci框架里用魔术方法(__call())