请教!如何扩展Controller
本帖最后由 deader 于 2009-4-13 22:50 编辑请教一个问题
我要实现一个类BasicController继承自Controller
然后其他的控制器类继承自BasicController
该怎么写?
我现在的做法是:basicContorller.php
<?php
class BasicController extends Controller
{
public $dir = '';
function Basiccontroller()
{
parent::Controller();
$this->dir = '/ok';
}
}
news.php
<?php
class News extends BasicController
{
function News()
{
parent::Basiccontroller();
}
function index()
{
echo 'ok';
}
}
//end
注:已经autoload 过了 basicController
但是访问......./news/index 的时候 显式500错误,不知道怎么解了. 你的写法不标准,请参考 http://codeigniter.org.cn/user_guide/general/core_classes.html 看了http://codeigniter.org.cn/user_guide/general/core_classes.html,
现在有两个问题:
1、写成MY_Controller没有问题,但是我要换一个名字就不行,该怎么办?
2、不保存为MY_的格式,假设直接保存为basicController.php,然后在autoload里load,但是我再 extends basicController...的时候,又是500错误,或者是空白页面。搞不明白了。 MY_ 这是在 config.php 中定义的子类化前缀,你可以修改,但推荐你保留 MY_ 这个前缀。
使用框架就要遵守框架的一些约定,这样有利于团队开发。 感谢,已经找到更好的办法解决了 约定优于配置 用 eval 可以扩展 Controller ,而且程序仍然继承 Controller (被扩展之后的) 嗯
感谢大家
页:
[1]