このエントリーをはてなブックマークに追加

更新日: 2016年2月25日

実行時間: 0.0253

HTMLヘルパー

 HTMLヘルパーは「 system/helper/html_helper.php 」ファイルで、いくつかのHTMLタグを生成する
関数が定義されています。

HTMLヘルパーのロード

 「 CI_Loader 」クラスの「 helper() 」メソッドでロードします。

    $this->load->helper('html');

HTMLヘルパーの関数

heading($data = '', $h = '1', $attributes = '')

 「<h1>」~「<h6>」の見出しタグを生成して返します。

 第一引数に、タグで囲まれ見出しとして表示する文字列を指定します。

 第二引数には、見出しレベルを「1」~「6」の数字で指定します。デフォルトは「1」となります。

 第三引数には、タグの属性と属性値を文字列で指定することができます。

    echo heading('見出し1');
    // <h1>見出し1</h1>

    echo heading('見出し2', '2');
    // <h2>見出し2</h2>

    echo heading('見出し3', '3', 'class="heading_3" align="center"');
    // <h3 class="heading_3" align="center">見出し3</h3>

ul($list, $attributes = '')

 順序なしリストタグ「<ul>」と、子要素の「<li>」タグを生成して返します。

 第一引数に「<li>」タグのデータ文字列を配列で指定します。
 また、多次元配列とすることでネスト(入れ子)構造のリストを生成することができます。

 第二引数には、タグの属性と属性値を文字列、または、連想配列で指定することができます。

    $list = array(
        '野菜',
        '',
        '',
    );
    echo ul($list);
    /*
    <ul>
    <li>野菜</li>
    <li>肉</li>
    <li>魚</li>
    </ul>
    */
    $list = array(
        '野菜' => array( '人参', '南瓜', '大根', ),
        '' => array( '', '', '', ),
        '' => array( '', '', '', ),
    );
    echo ul($list);
    /*
    <ul>
    <li>野菜
    <ul>
    <li>人参</li>
    <li>南瓜</li>
    <li>大根</li>
    </ul>
    </li>
    <li>肉
    <ul>
    <li>牛</li>
    <li>豚</li>
    <li>鶏</li>
    </ul>
    </li>
    <li>魚
    <ul>
    <li>鰯</li>
    <li>鯖</li>
    <li>鯵</li>
    </ul>
    </li>
    </ul>
    */
    $list = array(
        '野菜',
        '',
        '',
    );
    $attr = array(
        'type' => 'square',
        'class' => 'u_list',
    );
    echo ul($list, $attr);
    /*
    <ul type="square" class="u_list">
    <li>野菜</li>
    <li>肉</li>
    <li>魚</li>
    </ul>
    */

ol($list, $attributes = '')

 順序リストタグ「<ol>」と、子要素の「<li>」タグを生成して返します。

 引数の指定は、「ul()」関数と同様です。

    $list = array(
        '野菜',
        '',
        '',
    );
    echo ol($list);
    /*
    <ol>
    <li>野菜</li>
    <li>肉</li>
    <li>魚</li>
    </ol>
    */
    $list = array(
        '野菜' => array( '人参', '南瓜', '大根', ),
        '' => array( '', '', '', ),
        '' => array( '', '', '', ),
    );
    echo ol($list);
    /*
    <ol>
    <li>野菜
    <ol>
    <li>人参</li>
    <li>南瓜</li>
    <li>大根</li>
    </ol>
    </li>
    <li>肉
    <ol>
    <li>牛</li>
    <li>豚</li>
    <li>鶏</li>
    </ol>
    </li>
    <li>魚
    <ol>
    <li>鰯</li>
    <li>鯖</li>
    <li>鯵</li>
    </ol>
    </li>
    </ol>
    */
    $list = array(
        '野菜',
        '',
        '',
    );
    $attr = array(
        'type' => 'i',
        'class' => 'o_list',
    );
    echo ol($list, $attr);
    /*
    <ol type="i" class="o_list">
    <li>野菜</li>
    <li>肉</li>
    <li>魚</li>
    </ol>
    */

br($num = 1)

 改行タグ「<br />」を生成して返します。

 引数に数値を指定すると、指定した数の「<br />」タグを生成します。

    echo br();
    // <br />

    echo br(3);
    // <br /><br /><br />

img($src = '', $index_page = FALSE)

 画像タグ「<img>」を生成して返します。

 第一引数には、「src=」属性の値を文字列で指定するか、「<img>」タグに含める属性と属性値の連想配列を 指定します。

 第二引数は、「src=」属性値にURIパス文字列のみ指定されていた場合に、サイトのURLを 「CI_Config」コアクラスの「site_url()」メソッドで補完するか、 TRUE、または、 FALSEで指定します。
 デフォルトはFALSEで「application/config/config.php」設定ファイルの 「$config['base_url']」設定値
によって補完されます。

    echo img('images/logo.gif');
    // <img src="http://www.ci-guide.info/images/logo.gif" alt=""/>

    $img = array(
        'src' => 'images/logo.gif',
        'alt' => 'ロゴ',
        'class' => 'img_logo',
    );
    echo img($img);
    /*
    <img src="http://www.ci-guide.info/images/logo.gif" alt="ロゴ" class="img_logo"/>
    */

 「mod_rewrite」を利用して、「index.php」を取り除く設定をしている場合、
「application/config/config.php」設定ファイルの「$config['base_url']」設定値は 空文字なので、「site_url()」メソッドが返す文字列には「index.php」は付加されません。

    echo img('images/logo.gif', FALSE);
    // <img src="http://www.ci-guide.info/images/logo.gif" alt=""/>

    echo img('images/logo.gif', TRUE);
    // <img src="http://www.ci-guide.info/images/logo.gif" alt=""/>

doctype($type = 'xhtml1-strict')

 「DOCTYPE」宣言を生成して返します。

 各バージョンの「DOCTYPE」は「application/config/doctypes.php」設定ファイルに定義されています。
 また、「application/config/環境/doctypes.php」 設定ファイルとして環境毎に定義することもできます。

 引数に、「application/config/doctypes.php」設定ファイルの連想配列で定義されている「DOCTYPE」宣言を値とする 添え字(インデックスキー)を指定することで、「DOCTYPE」宣言文字列を取得して返します。

    添え字 DOCTYPE宣言
    xhtml11 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
    xhtml11-strict <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
    xhtml11-trans <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    xhtml11-frame <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Frameset//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-frameset.dtd">
    html5 <!DOCTYPE html>
    html4-strict <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
    html4-trans <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
    html4-frame <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Frameset//EN" "http://www.w3.org/TR/html4/frameset.dtd">
    echo doctype('html5');
    // <!DOCTYPE html>

link_tag($href = '', $rel = 'stylesheet', $type = 'text/css', $title = '', $media = '', $index_page = FALSE)

 主に「<head>」タグの子要素として利用されるリンク「<link>」タグを生成して返します。

 第一引数には、「href=」属性値を文字列で指定するか、「<link>」タグに含める属性と属性値の連想配列を指定します。

 第二引数は、「rel=」属性値を文字列で指定します。デフォルトは「stylesheet」です。

 第三引数は、「type=」属性値を文字列で指定します。デフォルトは「text/css」です。

 第四引数は、「title=」属性値を文字列で指定します。

 第五引数は、「media=」属性値を文字列で指定します。

 第六引数は、「href=」属性値にURIパス文字列のみ指定されていた場合に、サイトのURLを 「CI_Config」コアクラスの「site_url()」メソッドで補完するか、 TRUE、または、 FALSEで指定します。
 デフォルトはFALSEで「application/config/config.php」設定ファイルの 「$config['base_url']」設定値
によって補完されます。

    echo link_tag('css/style.css');
    /*
    <link href="http://www.ci-guide.info/css/style.css" rel="stylesheet" type="text/css" />
    */

 第一引数に、連想配列を指定した場合は、第二引数から、第五引数は利用されないため第六引数に TRUEを指定する場合は、第二引数から、第五引数には NULLを指定します。

    $link_tag = array(
        'href' => 'css/style.css',
        'rel' => 'stylesheet',
        'type' => 'text/css',
    );
    echo link_tag($link_tag, NULL, NULL, NULL, NULL, TRUE, );
    /*
    <link href="http://www.ci-guide.info/css/style.css" rel="stylesheet" type="text/css" />
    */

meta($name = '', $content = '', $type = 'name', $newline = "\n")

 メタ情報タグ「<meta>」を生成して返します。

 引数は属性情報の連想配列からなる多次元配列か、属性情報をそれぞれ第一引数から第四引数で
指定します。

引数番号 説明
第一引数 「name」属性、または、「http-equive」属性の値 'Content-Type'
第二引数 「content」属性の属性値 'text/html; charset=utf8;'
第三引数 「name」属性か「http-equive」属性か指定
デフォルトは「name」
'http-equive'
第四引数 改行コード
デフォルトは「"\n"」」
"\r\n"
    echo meta('Content-Type', 'text/html; charset=utf8;', 'http-equive', "\r\n");
    // <meta http-equiv="Content-Type" content="text/html; charset=utf8;" />

 複数の「<meta>」タグを生成する場合は配列で指定します。
 一つの「<meta>」タグの情報は連想配列で構成します。

    $metas = array(
        array(
            'type' => 'http-equive',
            'name' => 'Content-Type',
            'content' => 'text/html; charset=utf8',
            'newline' => "\r\n",
         ),
        array(
            'type' => 'name',
            'name' => 'keywords',
            'content' => 'CodeIgniter Guide',
            'newline' => "\r\n",
         ),
        array(
            'type' => 'name',
            'name' => 'description',
            'content' => 'PHP軽量フレームワークCodeIgniterガイド!',
            'newline' => "\r\n",
         ),
    );
    echo meta($metas);
    /*
    <meta http-equiv="Content-Type" content="text/html; charset=utf8" />
    <meta name="keywords" content="CodeIgniter Guide" />
    <meta name="description" content="PHP軽量フレームワークCodeIgniterガイド!" />
    */

nbs($num = 1)

 スペース文字の実態参照「&nbsp;」を生成して返します。

 引数に数値を指定すると、指定した数の「&nbsp;」実態参照文字を生成します。

    echo nbs(3);
    // &nbsp;&nbsp;&nbsp;