PHPで指定したディレクトリ内のファイルを全てincludeする方法
PHPでライブラリを利用する際にcomposerからインストールしたものは「vendor/autoload.php」をincludeするだけで良いが、composer以外でインストールした場合は1つずつincludeを書く必要がありこれが面倒。autoload.phpと同じような形になるよう実装方法をメモ。
実装方法
ディレクトリ構成
root/ ├loader.php └library(このディレクトリにライブラリファイルをアップロードする)
loader.php
<?php $pattern = __DIR__ . '/library/*.php'; foreach ( glob( $pattern ) as $filename ){ include $filename; }
使い方
以下でloader.phpを呼び出す。
include 'loader.php';
尚、以下を実行するとincludeしているファイルを確認できる。
$included_files = get_included_files(); foreach ($included_files as $filename) { echo "$filename\n"; }
リファレンス
glob
https://www.php.net/manual/ja/function.glob.php
get_included_files
https://www.php.net/manual/ja/function.get-included-files.php
所感
dBugやclass.upload.php等のファイル1枚で導入可能なライブラリをまとめてincludeしたかったので今後はこの方法を使っていく。
関連記事
-
-
PHPページングテンプレ
使いやすいのがあったのでメモ。 $page ...
-
-
PHPで配列を値で検索、破棄
PHPの配列で特定の値が入っていれば それを破棄したいということがあった。 ・u ...
-
-
PHPのHTTPクライアント用ライブラリ「Guzzle」の利用方法
以前に「Requests for PHP」を試したが、似たようなライブラリで「G ...
-
-
CodeIgniter4でのメール送信方法(テキスト・HTMLメール)
CodeIgniter4.4.4でテキストメール及びHTMLメールを送信したい。 ...
-
-
MySQLで直近に挿入したオートインクリメントの値と次回挿入する値を取得する方法
phpとmysqliを使っている中で次回挿入するオートインクリメントの値と、前回 ...