Codeigniter 3:如何使用 Composer 包?(Twilio SDK)

Ste*_*n M 2 php traits twilio composer-php codeigniter-3

到目前为止我做了什么:

我对 CI 非常熟悉,但对 Composer 和 twilio SDK 很陌生。阅读一些教程和文档,我成功安装了 Composer 和 twilio 包。然而该/vendor文件夹与我的 CI 安装并行:

/var/www/html/
 - application
 - system
 - vendor
Run Code Online (Sandbox Code Playgroud)

因此,我编辑了 config.php 设置路径,如下所示:

$config['composer_autoload'] = '/var/www/html/vendor/autoload.php';
Run Code Online (Sandbox Code Playgroud)

在我的控制器中尝试使用 Twilio SDK 中记录的 SDK:

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

class Test extends CI_Controller {

    use Twilio\Rest\Client;

    public function twilio()
    {
        $client = new Client($AccountSid, $AuthToken);

    }

}
Run Code Online (Sandbox Code Playgroud)

但是我得到一个错误:

致命错误:测试无法使用 Twilio\Rest\Client - 它不是第 6 行 /var/www/html/application/controllers/Test.php 中的特征

问:如何在 Codeingiter 3 中正确使用 Composer 包?

小智 5

在 中Config.php,放入这些代码行

$config['composer_autoload'] = TRUE;
require_once FCPATH . 'vendor/autoload.php';
Run Code Online (Sandbox Code Playgroud)

并在你的控制器中进行更改,例如-

<?php

use Twilio\Rest\Client;

defined('BASEPATH') OR exit('No direct script access allowed');

  class Test extends CI_Controller {

  public function twilio()
  {
    $client = new Client($AccountSid, $AuthToken);

  }
}
Run Code Online (Sandbox Code Playgroud)

参考: http ://theprofessionguru.com/android/how-to-load-composers-vendor-autoloadphp-in-codeigniter