CakePHP2でVendorファイルを読み込む方法

CakePHPではVendorを使って外部クラスやライブラリを読み込みます。CakePHP1.3まではApp::Import(‘Vendor’, ‘読み込むファイル名’)を使っていましたが、CakePHP2では書式が変更されています。

日本語情報を探してみましたが、まとまっているところが見つからなかったので備忘録代わりに方法を説明しておきます。

Vendorの使い方

読み込みたいクラスやライブラリを[/app/Vendor]に設置します。ここでは例としてqdmail_receiver.phpを取り上げてみます。

qdmail_receiver.phpを名前変更して[/app/Vendor/QdmailReceiver.php]に設置します。そして使いたいコントローラーやモデルで

App::uses(‘QdmailReceiver’,’Vendor’);

とします。App::Importとは引数が逆になっているのを注意してください。

Vendor内にディレクトリで設置した場合

CakePHP2ではVendorディレクトリを再帰的に検索しなくなりましたので、ディレクトリ名を指定する必要があります。

App::uses(‘QdmailReceiver’,’Vendor/Qdmail’);

これで読み込む準備はできましたのでインスタンスを作ってあげれば使えるようになります。

$qdmail = new QdmailReceiver(); $receiver = QdmailReceiver::start('pop', $server); 

こんな感じでCakePHP2の流儀で外部ライブラリを使って開発することができます。

Categorized: CakePHP

One comment on “CakePHP2でVendorファイルを読み込む方法

  1. Pingback: (CakePHP2.x)ライブラリなどの外部ファイルの読み込み | 日々の覚書…日常のことも少しだけ

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

CAPTCHA