基本構文 - PHPプロ!マニュアル

Smartyマニュアル

- 基本構文

第 3章基本構文

全てのテンプレートタグはデリミタによって囲まれます。 デフォルトではデリミタは {} ですが、これは 変更可能 です。

このマニュアルで挙げる例ではデフォルトのデリミタを利用しています。 Smarty では、デリミタ外の内容は静的コンテンツとして表示されます。 Smarty がテンプレ ートタグを見つけると、その解釈を試みて適切な出力に置換します。

コメント

テンプレートのコメントはまずアスタリスクで囲まれ、次にそれを デリミタ タグで囲みます。このような形式になります。

{* これはコメントです *}

Smarty のコメントは、テンプレートの最終的な出力には表示されません。この点は <!-- HTML のコメント --> とは異なります。 これは、テンプレート内での内部的なメモとして使用するのに便利です。 誰にもバレません ;-)

例 3-1. テンプレート内のコメント

{* これは Smarty コメントです。コンパイルされた結果には登場しません。 *}
<html>
<head>
<title>{$title}</title>
</head>
<body>

{* 別の Smarty コメント *}
<!-- HTML コメント。これはブラウザに送信されます -->

{* この、複数行の
   Smarty コメントは
   ブラウザへは送信されません
*}

{*********************************************************
クレジットブロックを含む複数行のコメント
  @ author:         bg@example.com
  @ maintainer:     support@example.com
  @ para:           var that sets block style
  @ css:            the style output
**********************************************************}

{* メインロゴなどを含むヘッダファイル *}
{include file='header.tpl'}


{* 開発メモ: 変数 $includeFile の値は foo.php で設定されています *}
<!-- 本体コンテンツブロックを表示します -->
{include file=$includeFile}

{* この <select> ブロックは余分 *}
{*
<select name="company">
  {html_options options=$vals selected=$selected_id}
</select>
*}

<!-- アフィリエイトのヘッダは無効にします -->
{* $affiliate|upper *}

{* コメントを入れ子にすることはできません *}
{*
<select name="company">
  {* <option value="0">-- none -- </option> *}
  {html_options options=$vals selected=$selected_id}
</select>
*}


{* テンプレート用の cvs タグ。以下の 36 はアメリカの通貨記号ですが、
. cvs がこれを変換してしまいます…… *}
{* &#36;Id: Exp &#36; *}
{* $Id: *}
</body>
</html>

閲覧履歴



Pick Up Q&A

Q
ログファイルの中の空のデータ行を削除したい
 このエントリーをはてなブックマークに追加 
A
ログのデータ個数(列数)が固定で、空のログが"<><><>"だと既知であれば if ($line === "<><><>") { continue; } で読み飛ばしてもいいのでは? ...

>>続きを読む

まずは配列や文字列の扱いから、じっくり勉強して行きましょう。

▲解説者:岡本(アシアル株式会社 教育コーディネーター兼 システムエンジニア)