Asset クラス

asset クラスは、アセット (js、css、img) を収集し、グループ化し、表示するために役立つメソッドをまとめたクラスです。

より進んだ使い方

Asset クラスは複数インスタンスでの利用をサポートしています。 あなたが独自のアセット群を持つテーマを使っている場合や、 モジュール型のアプリケーションを開発していて、そのモジュールがそれぞれアセットを持っているような場合に、これは役に立つかもしれません。

このようなケースでは、ただ一つのインスタンスが検索パスを持つことにより、 同じ名前を持つアセットをアプリケーションが間違って読み込むことになる危険性が高くなるのは、ちょっと利口とはいえません。

静的なメソッドと同じメソッド名を、Asset のインスタンスに対しても使用することができます。 それぞれのメソッドの定義については使用法ページを見て下さい。

forge($config = array())

forge メソッドは、Asset クラスのインスタンスを手動で生成します。

静的 はい
パラメータ
パラメータ デフォルト 説明
$name
null
インスタンスの名前。もしその名前のインスタンスが存在しなければ、新たにフォージ(生成)されます。 名前が渡されなかったときは、デフォルトインスタンスが返されます。
$config
array()
新しく Asset インスタンスを生成する際に、カスタム設定を渡すことができます。 設定を意味する配列は、asset 設定ファイルと同様の構造を持っています。 渡された設定内容は、ここで解説されているデフォルトの設定と asset 設定ファイルにマージされますので、 変更したい設定値だけを渡せばよいです。
返り値 object - 生成された asset オブジェクト。
// 独自の検索パスを使って asset オブジェクトを生成します
$asset = Asset::forge('custom', array('paths' => 'custom/assets/');

// css ファイルをいくつか定義します
$asset->css(array('header.css', 'footer.css'), array(), 'layout', false);

instance($name = null)

instance メソッドは、名前のついた asset クラスのインスタンスを返します。

静的 はい
パラメータ
パラメータ デフォルト 説明
$name
null
インスタンスの名前を渡します。もしその名前のインスタンスがなかった場合はfalseが返されます。 名前が指定されなかったときはデフォルトのインスタンスが返されます
返り値 mixed - その名前の asset インスタンス。存在しなければ false が返ります。
// 独自の検索パスを使った名前がついた asset インスタンスを生成します
Asset::forge('custom', array('paths' => 'custom/assets/'));

// その asset インスタンスを用いて css ファイルをいくつか定義します
Asset::instance('custom')->css(array('header.css', 'footer.css'), array(), 'layout', false);

Asset クラスの静的メソッドは、デフォルトインスタンスを使用します。 デフォルトインスタンスに対して、例えば検索パスの変更などを行った場合はこのことを忘れないで下さい!