当前位置:Gxlcms > PHP教程 > Codeigniter里的library加载其他类

Codeigniter里的library加载其他类

时间:2021-07-01 10:21:17 帮助过:22人阅读

http://codeigniter.org.cn/forums/thread-15891-1-1.html 像这个帖子里的QQ sdk集成一样,作者把所以用到的class放在的一个library类里,看着好难受啊,有没有办法把这些类都拿到一个文件夹里,然后在这个library加载进来。

by the way 求点这个例子的demo code刚刚学ci不太懂哇,感谢 :)

回复内容:

http://codeigniter.org.cn/forums/thread-15891-1-1.html 像这个帖子里的QQ sdk集成一样,作者把所以用到的class放在的一个library类里,看着好难受啊,有没有办法把这些类都拿到一个文件夹里,然后在这个library加载进来。

by the way 求点这个例子的demo code刚刚学ci不太懂哇,感谢 :)

原帖给了方法了

/* Qc.php文件结束 */
/* 位置: ./application/libraries/Qc.php */

PHP $this->load->library('someclass'); //加载类 官方文档:使用你自己的类

那是标准PHP的写法,不是CI的写法。

CI的标准确实是一个文件一个class,一个一个载入,一个一个使用。

CI里面用Helper引入第三方库比较合适,尤其是这些非面向对象的库,比如某SDK叫 xxxsdk.php ,可以直接改名为 xxxsdk_helper.php 放到helpers目录下

然后在使用的时候用

$this->load->helper("xxxsdk"); 

即可 。之后就可以直接使用里面的函数或者类了。

简单搞的话,直接放到 libraries, 然后用到的地方,例如 Model 或 Controller 最上边 直接include进来就行。用的时候正常实例化就可以。

class Main_lib
{
    var $ci;
    public function __construct()
    {
        $this->ci = &get_instance();
        // 加载其他类库,可以是自定义类库,也可以是ci类库
        // 其他加载模型,helper都可以这样
        $this->ci->load->library('myClass');
    }

    public function method() {...}
}

QQConnect那个,我也觉得看着不舒服,我都是自己一个个分离出来了,有些用不上的就丢弃了,目前测试入口没问题,网站还没弄好,还没测试是否能成功登陆返回token

人气教程排行