用户
 找回密码
 入住 CI 中国社区
搜索
查看: 2174|回复: 2
收起左侧

[已解决] 关于load类之后产生的对象,以 及类之间的调用和继承

[复制链接]
发表于 2010-7-13 17:48:15 | 显示全部楼层 |阅读模式
比如我现在有3个类,lib1.php, lib2.php和lib3.php,他们3个在同一个文件夹下

问题1:

lib1.php继承lib2.php

请问能直接
require_once 'lib2.php';

class Lib1 extends Lib2
{

}

这样用行么?

问题2:
lib3.php在类初始化时要用到lib1.php创建的对象

lib3.php是这样的

class Lib3
{
    Lib3($lib1)
    {
    }
}

这里$lib1是指lib1.php这个类的对象

那么现在我在controller里面通过load调用了lib1
$this->load->library('lib1');
貌似只能使用lib1下的方法
$this->lib1->method1();
怎么把$lib1这个对象传递给lib3的构造函数,貌似不能直接用$this->lib1

新手提问,如果有没有些清除,大家多多包涵,谢谢~~
发表于 2010-7-13 18:22:18 | 显示全部楼层
问题一:你自己写个 .php 就清楚了。。。
问题二:CI 不能这样继承,说白了,CI 不是完全 OO 的。
发表于 2010-7-13 19:56:40 | 显示全部楼层
建议require写绝对路径 APPPATH.'libraries/lib2.php'

本版积分规则