如何在CodeIgniter中包含外部库?

时间:2010-02-25 20:33:16

标签: codeigniter amazon-web-services

我是codeigniter的新手,我正在尝试将亚马逊的FPS整合到我的页面中。有一堆与亚马逊FPS一起使用的库和模型,我需要将其包括在内以进行适当的调用。

如何将它们包含在CodeIgniter中?

我尝试将整个Amazon文件夹放在system / libraries目录中,然后尝试使用$ this-> load-> library('Amazon / FPS / Client')包含库; 但是,我遇到了相对路径的问题,因为Client.php包含语句require_once('Amazon / FPS / Interface.php'); ...在同一个文件夹中。

必须有更好的方法来做这一切 - 有人可以帮忙吗?

谢谢!

4 个答案:

答案 0 :(得分:34)

没有什么可以阻止你直接包括类和使用它们,但是你会在一个普通的PHP设置中。如果它在PHP中工作,它将在CodeIgniter中工作。

include(APPPATH.'libraries/Amazon/FPS/Interface.php');

答案 1 :(得分:3)

a3m http://code.google.com/p/a3m/的彭孔用插件做得很好:

示例twitter_pi.php

require_once(APPPATH.'modules /帐户/插件/库/ jmathai-Twitter的异步/ EpiCurl.php'); require_once(APPPATH.'modules /帐户/插件/库/ jmathai-Twitter的异步/ EpiOAuth.php'); require_once(APPPATH.'modules /帐户/插件/库/ jmathai-Twitter的异步/ EpiTwitter.php');

/ *文件结尾twitter_pi.php / / 位置:./ system / apply / modules /account /plugins / twitter_pi.php * /

在控制器中

$这 - >负载>插件( '叽叽喳喳'); $ twitterObj =新的EpiTwitter($ this-> config-> item('twitter_consumer_key'),$ this-> config-> item('twitter_consumer_secret'));

在Codeigniter 2.0中存在一个问题,即没有插件

答案 2 :(得分:2)

哦,是的,codeigniter很好,并且还支持许多库请看看这里 http://www.haughin.com/code/ 包括像此$this->load->library('s3');

这样的亚马逊服务

答案 3 :(得分:0)

@ user3526 请注意,$ this-> load->库(' classname')将创建该加载类的实例,而不仅仅是文件(类)include。