LoginSignup
22
21

More than 5 years have passed since last update.

FuelPHP開発入門_09

Last updated at Posted at 2014-04-23

今回はAssetsの使い方をヽ(´@ω@`)ノ

Assetsとは

CSS、JS、IMAGEファイルなどを設置する場所で、Assetクラスと併せて利用します。
フォントはまだ使ったことがない(というかテキストサイト全盛期に黒歴史作った時しか触ってない)ので保留。

基本形

<?php
    // <link type="text/css" rel="stylesheet" href="http://.../public/assets/css/base.css">
    echo Asset::css('base.css');

    // <script type="text/javascript" src="http://.../public/assets/js/validate.js"></script>
    echo Asset::css('validate.js');

    // <img src="http://.../public/assets/img/1.png" alt="alttext" >
    echo Asset::img('1.png',array('alt'=>'alttext'))
?>

これだけで動的にAssetsファイルを読み込んでくれます。
もちろんassetsの下にフォルダを作ることも可能で、各テンプレートでCSSの名前がかぶってしまっていたときも対処できます。

他の例に漏れず、screenやaltなどの属性を指定したい場合には第二引数に配列で記述することができます。

応用

アップローダーを作りたい。
アップローダーを設置して、たとえばユーザーのプロフィール画像などを表示したい。場合。
その場合はassets/imgの下にフォルダを作成することをおすすめします。

Uploadの使い方は後に詳しく書きますので今回は割愛(´@ω@`)

アップロード

// 初期設定
$config = array(
    'path' => DOCROOT.DS.'assets'.DS.'img'.DS.'profile',
    'normalize' => true,
    'ext_whitelist' => array('img', 'jpg', 'jpeg', 'gif', 'png'),
        );

        // アップロード基本プロセス実行
        Upload::process($config);

        // 検証
if (Upload::is_valid())
{
    // 設定を元に保存
    Upload::save();
}
// 正常系
foreach (Upload::get_files() as $file){...}

// 異常系
foreach (Upload::get_errors() as $file){...}

3行目に、assets/img/profileにファイルを保存する設定を書いています。
imgフォルダの下に置かないとAsset::img()が使えないようなので注意してください。
動的に画像アドレス読むの面倒くさいです。

表示

echo Asset::img('profile/hoge');

以上!
次はHtmlヘルパーとFormヘルパーについてヽ(´@ω@`)ノ
か、テンプレートファイルについてが先がいいでしょうか。ちょっと考えます。

22
21
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
22
21