Maison  >  Article  >  outils de développement  >  codeigniter3 intègre les outils de gestion du compositeur, une approche plus élégante

codeigniter3 intègre les outils de gestion du compositeur, une approche plus élégante

藏色散人
藏色散人avant
2019-10-01 13:57:472811parcourir

Avant-propos, j'espère que codeigniter4 sera bientôt publié. Il existe actuellement codeigniter3 pour le projet. Que dois-je faire si je souhaite utiliser autant d'excellentes bibliothèques tierces sur github ? De plus, ces bibliothèques sont essentiellement installées via composer. Ci-dessous, la colonne tutoriel composer vous présentera la méthode d'intégration du gestionnaire de packages composer :

codeigniter3 intègre les outils de gestion du compositeur, une approche plus élégante

1. Installez composer, que je n'entrerai pas dans les détails ici.

2. Créez un nouveau fichier composer.json dans le répertoire racine du projet Par exemple, je souhaite utiliser une bibliothèque jwt dans ci maintenant

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

. 3. Ce répertoire Exécuter à partir de la ligne de commande : composer install

ou les 2 étapes ci-dessus peuvent être simplifiées à l'étape suivante

composer require firebase/php-jwt

4. Allons-y. commencer l'intégration formelle dans ci. Voici 2 méthodes :

Méthode 1 : Simple et grossière (non recommandée)

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

Méthode 2 : Élégante (recommandée)

Créez un nouveau MY_Composer dans application/libraries.php

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

Puis modifiez

$autoload[&#39;libraries&#39;] = array(&#39;MY_Composer&#39;,&#39;database&#39;,&#39;session&#39;);

dans config/autoload.php 5. Utilisez

<?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);
    }
}

. J'espère que cela sera utile à tout le monde.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Cet article est reproduit dans:. en cas de violation, veuillez contacter admin@php.cn Supprimer