itwasthewind
itwasthewind

Reputation: 355

How do I include external Libraries in CodeIgniter?

I'm new to codeigniter, and I'm trying to integrate amazon's FPS into my page. There are a bunch of libraries and models that go with Amazon FPS, which I would need included to make the appropriate calls.

How do I include them in CodeIgniter?

I tried placing the entire Amazon folder inside the system/libraries directory, and then tried including libraries with $this->load->library( 'Amazon/FPS/Client' ); However, I run into problems with the relative path there, because Client.php contains the statement require_once ('Amazon/FPS/Interface.php'); ... which is in the same folder.

There has to be a better way to do all this - can anyone please help?

Thanks!!

Upvotes: 25

Views: 32876

Answers (4)

bpile
bpile

Reputation: 380

@user3526 Note that $this->load->library('classname') will create an instance of that loaded class, not just file (class) include.

Upvotes: 0

Dave
Dave

Reputation: 41

Peng Kong of a3m http://code.google.com/p/a3m/ has a nice way of doing it with plugins:

Example twitter_pi.php

require_once(APPPATH.'modules/account/plugins/libraries/jmathai-twitter-async/EpiCurl.php'); require_once(APPPATH.'modules/account/plugins/libraries/jmathai-twitter-async/EpiOAuth.php'); require_once(APPPATH.'modules/account/plugins/libraries/jmathai-twitter-async/EpiTwitter.php');

/* End of file twitter_pi.php / / Location: ./system/application/modules/account/plugins/twitter_pi.php */

In controller

$this->load->plugin('twitter'); $twitterObj = new EpiTwitter($this->config->item('twitter_consumer_key'), $this->config->item('twitter_consumer_secret'));

There is one problem with this in Codeigniter 2.0 there are no plugins

Upvotes: 3

Phil Sturgeon
Phil Sturgeon

Reputation: 30766

There is nothing stopping you from directly including classes and working with them however you would in a vanilla PHP setup. If it works in PHP it will work in CodeIgniter.

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

Upvotes: 34

streetparade
streetparade

Reputation: 32888

Oh yes codeigniter is nice and has also support for many librarys please have a look here http://www.haughin.com/code/ Include the Amazon service like this $this->load->library('s3');

Upvotes: 2

Related Questions