■ PHP:autoloaderを使う 2

PHPで外部ファイルを使用する場合は require_once で読み込む必要があるが、
autoloaderというのを使えば自動的に読み込まれるらしいので調べてみる。
※ 前回記事:PHP:autoloaderを使う 1


Composerのインストール

autloadを使うにはComposerを使うのが便利である。
ということで、まずは Composer のインストールを行う。
※ 手順:Composer:インストール

composer.jsonの作成

PHPソースのルートフォルダに composer.json ファイルを新規作成する。
既にComposerを使っていてcomposer.jsonが存在する場合は "autoload" の所を追記する。
"Namespace\\": "Path/" の行は記載例なので、実際の値で記述すること。
{
  "autoload": {
    "psr-4": {
      "Namespace\\": "Path/"
    }
  }
}
前回の例 (PHP:autoloaderを使う 1) では、
\TestCorp\ManageSystem の名前空間を D:\www\htdocs のベースディレクトリに対応させていたので、この場合の composer.json は以下の通りである。
{
  "autoload": {
    "psr-4": {
      "TestCorp\\ManageSystem\\": ""
    }
  }
}
\TestCorp\ManageSystem の名前空間を D:\www\htdocs\include のベースディレクトリに対応される場合は以下の通り。
{
  "autoload": {
    "psr-4": {
      "TestCorp\\ManageSystem\\": "include/"
    }
  }
}

autoload.phpの作成

次に Composer の autoload.php ファイルを作成する。
作成するには、コマンドプロンプトで PHPソースファイルのルート(D:\www\htdocs など)に移動し "composer dump-autoload" コマンドを実行する。
以降、composer.json の autoload設定を変更した場合は、このコマンドを実行する必要がある。

コマンドを実行すると、ルートは以下に vendor フォルダが作成され、そのフォルダ配下に "autoload.php" が作成される。
PHPソースからは、このファイルを require_once でロードすれば良い。

-- 以上 --


PHP学習, PSR-4

0 件のコメント:

その他の記事