如何使PHP库适应Codeigniter?

时间:2012-03-12 10:07:35

标签: php codeigniter

Good mor(eve)ning guys。我的问题有点笼统: 如何在CodeIgniter中使用任何PHP库(例如facebook sdk)?

通常,当您下载PHP库并查看提供的示例时,您可以使用 include require_once 加载库。使用 $ this-> load->库($ name,$ params)有哪些调整(和方式)?

之后如何使用该库:用???替换 $ var = new Library($ data)

如果我的问题尚未明确,请通知我。

(奖金问题:如何将此应用于facebook-sdk?)

提前致谢。

3 个答案:

答案 0 :(得分:9)

  1. 创建一个文件夹,在其中放置facebook-sdk文件: / application / libraries / facebook /
  2. 在库根目录中创建 Facebook_lib.php ,内容为:

    <?php if ( ! defined('BASEPATH')) exit('No direct script access allowed');
    require_once 'facebook/facebook.php';
    class Facebook_lib extends Facebook{}

  3. 控制器中的
  4. $this->load->library('facebook_lib',$config); $this->facebook_lib->clearAllPersistentData();

答案 1 :(得分:1)

对于facebook sdk,您只需要将文件复制到../application/libraries/文件夹中,然后在控制器中以任何一种方式调用它:

$config = array('appId' => APP_ID, 'secret' => APP_SECRET);
$this->load->library('facebook', $config);

在./application/config文件夹中创建一个名为facebook.php的文件,并在其中创建一个数组

$config = array('appId' => APP_ID, 'secret' => APP_SECRET);

并且在控制器中只需像$this->load->library('facebook');

那样调用您的库

答案 2 :(得分:1)

没有什么可以阻止你直接包括类包括(APPPATH.'libraries / Facebook / base_facebook.php');

OR

在您的应用程序/库文件夹中放置具有相同名称的版本。

类应具有此基本原型(注意:我们仅使用名称Someclass作为示例):

<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed'); 

class Someclass {

    public function some_function()
    {
    }
}

/* End of file Someclass.php */

您可以在任何Controller功能中使用标准初始化您的课程:

$this->load->library('someclass');

更多阅读http://codeigniter.com/user_guide/general/creating_libraries.html