1
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

【CodeIgniter4】クライアント「composerライブラリを使いたいけどcomposrコマンドは使わないでくれ」

Posted at

composer、使っちゃだめなの?

まあ、お上が言うなら仕方ない。

とりあえず、ダウンロード版でCodeIgniterのインストールはしたよ

インストール方法は割愛
各種Pathの設定を間違えやすいので注意。

vendorに入れないで、composerライブラリを呼び出せるようにする

今回対象になったのはこいつ

1. ダウンロードする

割愛

2. 解凍して app\ThirdParty に突っ込む

とりあえずまるごとどーん。
image.png

3. app\Config\Autoload.php に namespace を登録する

public $psr4 = [
    APP_NAMESPACE  => APPPATH, // For custom app namespace
    'Config'       => APPPATH . 'Config',
+    'Firebase\JWT' => APPPATH . 'ThirdParty/jwt/src',
];

登録すべき namespace はたいていsrc内のファイルの頭に書いてあるよ

4. 使う

ここまで来ればドキュメントと同じように利用することができる。

// これを宣言すればどこからでも使える
use Firebase\JWT\JWT;
use Firebase\JWT\Key;

// Controllerでも、Modelでも、Config内でも利用可能
$jwt = JWT::encode($payload, $key, 'HS256');
$decoded = JWT::decode($jwt, new Key($key, 'HS256'));
print_r($decoded);

注:Gitに含めること

composerを利用しないので当たり前といえば当たり前だが、うっかり .gitignore しないこと。
Google APIやAWS PHP SDKなど、頻繁に更新される、かつ、巨大ライブラリを使いたい場合はちょっとしんどいかも。
(Facebook SDK for PHP の PHP8対応版は出ないの・・・?)

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?