Symfony2でpearライブラリを手軽に利用するためにPearBundleというバンドルをつくりました。PearBundleはpearのコマンドラッパーです。pearのパッケージをvendor/pear以下にインストールします。
インストール
gitのサブモジュールを利用して、既存のSymfonyプロジェクトに取り込んでください。
git submodule add -f git://github.com/tumf/PearBundle.git vendor/bundles/Tumf/PearBundle git submodule update --init
Bundleの登録
// app/AppKernel.php $bundles = array( new Tumf¥PearBundle¥PearBundle(), );
オートロードへの登録
// app/autoload.php $loader->registerNamespaces(array( // ... 'Tumf¥¥PearBundle' => __DIR__.'/../vendor/bundles', // ... ));
オートロードの末尾に以下を追加します。 Thanks @hidenorigoto
// app/autoload.php set_include_path(get_include_path() . PATH_SEPARATOR.__DIR__.'/../vendor/pear/php');
使い方
コマンド一覧
- pear:exec
[ .... ] pearにエリアスされています
- pear:init
利用例
pearのセットアップ(app/.pearrcを作成します)
./app/console pear:init
pearチャンネルの登録
./app/console pear channel-discover openpear.org
Acme_MorningMusumeをインストールします。
./app/console pear install openpear/Acme_Morningmusume
オートロードに追加します
// app/autoload.php $loader->registerPrefixes(array( //... 'Acme_' => __DIR__.'/../vendor/pear/php', ));
使ってみます
$mm = new ¥Acme_MorningMusume; var_dump($mm->members);
設定
デフォルトでpearを使いますが、パスを設定したいときには設定ファイルに記述してください。
app/config/config.yml
pear: command: /path/to/pear
POSTED BY tumf ON 3 月 28th, 2011. PERMALINK

