FuelPHP-パッケージ

パッケージはコードの再利用においてモジュールに似ていますが、次の点で異なります。

  • WebURLにマップされません
  • HMVCのリクエストでは近づきません

つまり、パッケージはブログやアルバムなどの直接的なWeb機能ではありません。代わりに、電子メール処理、ドキュメント作成、チャート作成、認証などのグループ化された機能のライブラリであり、Webの開発を迅速化するのに役立ちます。応用。

パッケージの作成

パッケージを作成するには、まず次のように指定したソースコードを配置する必要があります。

/fuel 
   /packages 
      /package (root directory of package) 
         /bootstrap.php 
      /classes 
         /our.php 
      /classes.php 
         /here.php 
      /config 
         /config.php 
         /and_so_on

パッケージの構造には、config.phpファイルとbootstrap.phpファイルの2つのパッケージ固有のファイルがあります。構成ファイルの目的は、メインアプリケーションに影響を与えることなく、パッケージフォルダー自体の下にパッケージの構成をグループ化することです。ブートストラップファイルの目的は、オートローダーが名前空間を正しくロードするように名前空間を設定することです。

名前空間を設定するいくつかの方法は次のとおりです。

Autoloader::add_namespace('Mypackage', __DIR__.'/classes/'); 
Autoloader::add_core_namespace('Mypackage'); 
Autoloader::add_core_namespace('Mypackage', true); 
Autoloader::add_classes (array( 
   'Mypackage\\Classname' => __DIR__.'/classes/classname.php', 
   'Mypackage\\Anotherclass' => __DIR__.'/classes/anotherclass.php', 
));

ブートストラップファイルが適切に構成され、パッケージがアプリケーションにロードされると、次のように使用できます。

$instance = new Myclass; 
$instance = new Mynamespace\Myclass;

パッケージのインストール

パッケージは通常、fuel / packagesディレクトリに配置されます。デフォルトでは、次のパッケージがインストールされています。

  • auth −認証パッケージ

  • email −メールパッケージ

  • oil −燃料のコマンド、オイルパッケージ

  • orm −ORMパッケージ

  • parser −マークダウンパーサーパッケージ

新しいパッケージをインストールするには、次の2つのオプションがあります。

Option 1 −手動インストール-ダウンロードしてインストール

パッケージを手動でインストールするには、最初に作成者のWebサイトからパッケージをダウンロードします。開梱して下に置きますfuel/packages/ フォルダ。

Option 2 −オイルコマンドを使用した自動方式

FuelPHPは、githubでホストされているパッケージをインストールする自動化された方法を提供します。次のコマンドを使用して、パッケージmytestpackageをインストールします。

php oil package install mytestpackage

gitクライアントを使用してパッケージのソースコードのクローンを作成し、fuel / packagesフォルダーに移動します。gitクライアントが利用できない場合は、–directコマンド引数を使用して、次のようにパッケージをダウンロードしてインストールするようにコマンドに指示できます。

php oil package install mytestpackage --direct

パッケージの使用

パッケージは、アプリケーションにロードされると、アプリケーションで使用できます。パッケージをアプリケーションにロードする方法は2つあります。

Option 1 −パッケージクラスを介して

FuelPHPはクラスを提供します Package ロード、アンロード、およびロードされたメソッドを介して、それぞれパッケージの可用性をロード、アンロード、およびチェックします。 loadメソッドには2つのパラメーターがあります。最初のパラメータ、$package パッケージの名前と2番目のパラメータです。 pathパッケージのパスです。パッケージがにインストールされている場合、2番目のパラメーターはオプションです。fuel/packages フォルダ。

// load the orm package 
Package::load('orm');  

// load the parser package from a specific directory 
Package::load('parser', '/path/to/packages/dir/');  

// load the non-existent package 
Package::load('awesome'); // Throws a PackageNotFoundException

Option 2 −構成ファイルを介して

パッケージを永続的にロードするには、下にパッケージを追加するだけです。 always_load メイン構成ファイルの構成エントリ、 fuel/app/config/config.php。電子メールパッケージをロードするには、次の構文を使用します。

'always_load' => array ( 
   'packages' => array ( 
      'email', 
   ), 
),

パッケージがアプリケーションにロードされると、次のように使用できます。

$instance = new Myclass; 
$instance = new Mynamespace\Myclass;