1.8.2. 一般的なヘルパー

すべてのヘルパーは自動的に適切なエスケープを適用します。これはつまり、{{= ... }}を使って出力することができます。もし、{{h ... }}などを使うと、二重にエスケープして出力してしまいます。

PHPのテンプレートコードで、ヘルパーを$thisのメソッドとして指定することもできます。

1.8.2.1. anchor

<a>タグ用のヘルパーです。

{{= anchor (
    'http://qiqphp.com',            // (string) href
    'Qiq Project',                  // (string) text
    [                               // (array) optional attributes
        'id' => 'qiq-link'
    ]
) }}
<a href="http://qiqphp.com" id="qiq-link">Qiq for PHP</a>

アンカーテキストをエスケープせずに出力するには、擬似属性_rawを使用します。

{{= anchor (
    'http://qiqphp.com',            // (string) href
    '<em>qiq Project</em>',         // (string) text
    [                               // (array) optional attributes

        'id' => 'qiq-link'
        '_raw' => true
    ]
) }}
<a href="http://qiqphp.com" id="qiq-link"><em>Qiq for PHP</em></a>

(hrefと属性はちゃんとエスケープされます)

1.8.2.2. base

<base>タグのヘルパーです。

{{= base (
    '/base'                         // (string) href
) }}
<base href="/base" />

1.8.2.3. dl

<dl>タグに<dt>/<dd>アイテムを指定するためのヘルパーです。

{{= dl (
    [                               // (array) dt keys and dd values
        'foo' => 'Foo Def',
        'bar' => [
            'Bar Def A',
            'Bar Def B',
            'Bar Def C',
        ],
        'baz' => 'Baz Def',
    ],
    [                               // (array) optional attributes
        'id' => 'test'
    ],
) }}
<dl id="test">
    <dt>foo</dt>
        <dd>Foo Def</dd>
    <dt>bar</dt>
        <dd>Bar Def A</dd>
        <dd>Bar Def B</dd>
        <dd>Bar Def C</dd>
    <dt>baz</dt>
        <dd>Baz Def</dd>
</dl>

1.8.2.4. image

<img>タグのヘルパーです。

{{= image (
    '/images/hello.jpg',            // (string) image href src
    [                               // (array) optional attributes
        'id' => 'image-id'
    ]
) }}
<!-- if alt is not specified, uses the basename of the image href -->
<img src="/images/hello.jpg" alt="hello" id="image-id" />

1.8.2.5. items

一連の<li>タグのためのヘルパーです。

{{= items ([                        // (array) list items
    'foo',
    'bar',
    'baz'
]) }}
<li>foo</li>
<li>bar</li>
<li>baz</li>

1.8.2.6. link

<link>タグのヘルパーです。

{{= link ([                         // (array) attributes
    'rel' => 'prev',
    'href' => '/path/to/prev',
]) }}
<link rel="prev" href="/path/to/prev" />

1.8.2.7. linkStylesheet

<link>スタイルシートタグのためのヘルパー。

{{= linkStylesheet (
    '/css/print.css',               // (string) the stylesheet href
    [                               // (array) optional attributes
        'media' => 'print',
    ]
) }}
<link rel="stylesheet" href="/css/print.css" type="text/css" media="print" />

1.8.2.8. meta

<meta>タグのヘルパーです。

{{= meta ([                         // (array) attributes
    'charset' => 'utf-8'
]) }}
<meta charset="utf-8">

1.8.2.9. metaHttp

<meta http-equiv>タグ用のヘルパーです。

{{= metaHttp (
    'Location',                     // (string) http-equiv attribute
    '/redirect/to/here'             // (string) content attribute
) }}
<meta http-equiv="Location" content="/redirect/to/here">

1.8.2.10. metaName

<meta name>タグのヘルパーです。

{{= metaHttp (
    'author',                       // (string) name attribute
    'Qiq for PHP'                   // (string) content attribute
) }}
<meta name="author" content="Qiq for PHP">

1.8.2.11. ol

<li>を持つ<ol>タグのためのヘルパーです。

{{= ol (
    [                               // (array) list items
        'foo',
        'bar',
        'baz'
    ],
    [                               // (array) optional attributes
        'id' => 'foo-list'
    ]
) }}
<ol id="foo-list">
    <li>foo</li>
    <li>bar</li>
    <li>baz</li>
</ol>

1.8.2.12. script

<script>タグのヘルパーです。

{{= script (
    '/js/functions.js',             // (string) src attribute
    [                               // (array) other attributes
        'async' => true
    ]
) }}
<script src="/js/functions.js" type="text/javascript" async></script>

1.8.2.13. ul

<li>を持つ<ul>タグのためのヘルパーです。

{{= ul (
    [                               // (array) list items
        'foo',
        'bar',
        'baz'
    ],
    [                               // (array) optional attributes
        'id' => 'foo-list'
    ]
) }}
<ul id="foo-list">
    <li>foo</li>
    <li>bar</li>
    <li>baz</li>
</ul>