如何访问getid3类并在我的控制器中使用它?
var myMethods = {
foo: function () {}, // < This comma
getLastNRows: function (whereIsData, DB_info, table, NRows, callback) {
...
},
};
答案 0 :(得分:1)
使用CodeIgniter的内置常量APPPATH
。 (因为代码不是用codeigniter的语法编写的)
`require_once(APPPATH.'libraries/getID3/getid3/getid3.php');`
如果这个库是codeigniter的内置库,那么你应该使用。
$this->load->library('libary name');
答案 1 :(得分:0)
您可以通过
加载库$this->load->library('getID3/getid3/Getid3');
如文档中所述,如果您的文件位于类似的子目录中
libraries/flavors/Chocolate.php
您将使用以下方式加载它:
$this->load->library('flavors/chocolate');
答案 2 :(得分:0)
你可以在主GetID3.php文件上执行require_once
require_once(APPPATH.'libraries/getID3/getid3/getid3.php');
但是有更好,更清洁的方法来管理这个第三方依赖。
我建议为库创建一个包装类,而不是直接要求GetID3.php文件。创建一个包装类使您能够扩展/覆盖getid3库并提供更清晰的实现,允许您以&#34; codeigniter方式执行操作&#34;。
<?php if (!defined('BASEPATH')) exit('No direct script access allowed');
class GetID3 {
function __construct ( $options = array() )
{
require_once( APPPATH . 'third_party/getID3/getid3/getid3.php' );
}
public function __get( $var ) { return get_instance()->$var; }
}
这样做可以提供更清晰的界面,并允许使用更具伸缩性的方法来管理第三方依赖。另外,不是目录结构。在这里,我们将第三方依赖项保存到third_party目录,同时将包装类保存到libraries / GetID3.php。
一旦您以这种方式实施,您就可以像往常一样加载库:
$this->load->library('GetID3');
答案 3 :(得分:0)
关于您的文件结构Codeigniter
有解决方案:
project
/application
/controller
/libraries
/getID3
/getid3
getid3.php
/model
/views
现在要调用Getid3.php
库,您需要在控制器中添加以下代码。
$this->load->library ( 'getID3/getid3/getid3', '', 'getid3(you can add any name you want' );
现在使用它:
$this->getid3->your_function($data);
请注意Getid3.php
必须以大写字母开头。