Home >Development Tools >composer >codeigniter3 integrates composer management tools

codeigniter3 integrates composer management tools

藏色散人
藏色散人forward
2020-02-21 13:49:352515browse

codeigniter3 integrates composer management tools

Preface, I hope codeigniter4 will be released soon. There is also codeigniter3 for projects. I want to use so many excellent third-party libraries on github. What should I do? Moreover, these libraries are basically installed through composer. The following introduces the method of integrating the composer package manager:

1. Install composer, which I won’t go into details.

2. Create a new composer.json file in the project root directory. For example, I want to use a jwt library in ci now

{
  "require": {
    "firebase/php-jwt": "*"
  }
}

3. Execute the command line in this directory: composer install

Or the above 2 steps can be simplified into the following step

composer require firebase/php-jwt

4. Let’s start the formal integration into ci. There are 2 methods here:

Method 1: Simple and crude (not Recommended)

require_once './vendor/autoload.php';
//上面这一行添加到index.php的这个位置
require_once BASEPATH.'core/CodeIgniter.php';

Method 2: Elegant (recommended)

application/librariesCreate a new MY_Composer.php

<?php
/**
 * 关于MY_Composer的注释
 *
 * @author 新猪
 */
class MY_Composer 
{
    function __construct() 
    {
        include("./vendor/autoload.php");
    }
}

and then modify it in config/autoload.php

$autoload['libraries'] = array('MY_Composer','database','session');

5. Finished using

<?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(&#39;HS256&#39;));
        print_r($decoded);
    }
}

, I hope it will be helpful to everyone.

For more programming related content, please pay attention to the Programming Introduction column on the php Chinese website!

The above is the detailed content of codeigniter3 integrates composer management tools. For more information, please follow other related articles on the PHP Chinese website!

Statement:
This article is reproduced at:segmentfault.com. If there is any infringement, please contact admin@php.cn delete