前言,希望codeigniter4早點發佈吧,目前還有專案用的codeigniter3,想用github上那麼多優秀的第三方函式庫,那怎麼辦呢?而且這些函式庫基本上都是透過composer安裝的,以下由composer教學專欄為大家介紹整合composer套件管理器方法:
1、安裝composer,這點不贅述了。
2、專案根目錄新建composer.json文件,例如我現在ci中要使用一個jwt庫
{ "require": { "firebase/php-jwt": "*" } }
3、該目錄下命令列執行:composer install
或上面2個步驟,簡化成下面這步也可以
composer require firebase/php-jwt
4、下面開始正式整合到ci,這裡有2個方法:
方法一:簡單粗暴的(不建議)
require_once './vendor/autoload.php'; //上面这一行添加到index.php的这个位置 require_once BASEPATH.'core/CodeIgniter.php';
方法二:優雅的(推薦)
application/libraries新建MY_Composer. php
<?php /** * 关于MY_Composer的注释 * * @author 新猪 */ class MY_Composer { function __construct() { include("./vendor/autoload.php"); } }
然後在config/autoload.php修改
$autoload['libraries'] = array('MY_Composer','database','session');
#5、使用
<?php use \Firebase\JWT\JWT; class TestController extends CI_Controller { public function index() { $key = "example_key"; $token = array( "iss" => "http://example.org", "aud" => "http://example.com", "iat" => 1356999524, "nbf" => 1357000000 ); $jwt = JWT::encode($token, $key); $decoded = JWT::decode($jwt, $key, array('HS256')); print_r($decoded); } }
完成,希望對大家有幫助。
以上是codeigniter3整合composer管理工具,比較優雅的做法的詳細內容。更多資訊請關注PHP中文網其他相關文章!