Codeigniter4で独自・外部ライブラリの作成と呼び出し方法
Codeigniter4で独自ライブラリを作成し、コントローラー側で呼び出したい。また、それとは別にdBug.php等の外部ライブラリを呼び出したい。以下に対応方法をメモ。
目次
対応方法
独自ライブラリ
/app/Libraries/MyCustomClass.php
<?php namespace App\Libraries; class MyCustomClass { public function sayHi() { return "Hello World!"; } }
/app/Controllers/Test_Controller.php
<?php namespace App\Controllers; use \App\Libraries\MyCustomClass; class Test_Controller extends BaseController { public function index() { $mine = new MyCustomClass(); echo $mine->sayHi(); } }
外部ライブラリ
ライブラリファイルのアップロード
/app/Librariesディレクトリにアップロードする。尚、Codeigniter4系のリファレンスは見つからなかったが3系のリファレンスに以下の命名規則が記載されていた。
- ファイル名の 1 文字目は大文字でなければなりません。たとえば: Myclass.php
- クラス宣言の 1 文字目は大文字でなければなりません。たとえば: class Myclass
- クラス名とファイル名が一致している必要があります。
4系でも同じ命名規則に沿っておいた方が良いと思われる。そのためdBug.phpの場合は以下のようにソースコードを書き換え、DBug.phpというファイル名でアップロードする。
namespace App\Libraries; class DBug {
/app/Controllers/Test_Controller.php
<?php namespace App\Controllers; use \App\Libraries\DBug; class Test_Controller extends BaseController { public function index() { $data = array(1,2,3); new DBug($data); } }
所感
バージョン4系だと独自ライブラリに関するリファレンスが見つからなかったため、動作確認は取れたもののこの方法が正しいのかは不明。
参考サイト
関連記事
-
-
CodeIgniter3でCronを実行する方法
CodeIgniter3系で特定の処理をCronで自動実行したかった。以下に設定 ...
-
-
CodeIgniter3で共通の変数と定数を設定する方法
CodeIgniter3系で共通する配列が入った変数と、定数を設定したかった。以 ...
-
-
CodeIgniter4でコントローラ実行の前後に指定したイベントを実行する方法
CodeIgniter4で特定の条件の場合は指定したページにリダイレクトさせたい ...
-
-
CodeIgniter4で簡易版ログインシステムの実装方法(管理画面向け)
CodeIgniter4で管理画面向けの簡易版ログインシステムを作成したい。通常 ...
-
-
Codeigniter3で外部ファイル(CSS / JS)の読み込みと共通パーツ化する方法
CodeigniterでCSSやJSファイル等の外部ファイル読み込みたかった。ま ...