既存のブロックを新しい内容で置き換えます。 この関数は、テンプレート内のブロックおよびそこに含まれるすべてのブロックを 新しいブロックで置き換えます。 つまり、テンプレートを動的に変更できるということです。
Sigma は入れ子状のブロックの状態を判断し、 どのブロックがどのブロックの配下にあるかを認識します。 この入れ子情報により、API を短くシンプルにできます。 ブロックを置換するということは、単に入れ子情報を更新する (比較的時間のかかる作業です) というだけではありません。 テンプレートの見た目が変わっても驚かないようにしましょう。
置換するブロックの名前。
新しい内容。
TRUE の場合は、パースしたブロックの内容を保持します。
表 47-1PEAR_Error の値
エラーコード | エラーメッセージ | 原因 | 対応 |
---|---|---|---|
SIGMA_BLOCK_NOT_FOUND | Cannot find block '$block' | ブロック $block がテンプレート内に存在しません | ブロックの名前を調べ、必要なブロックをすべてテンプレートに追加したかどうかを調べます |
SIGMA_BLOCK_DUPLICATE | The name of a block must be unique within a template. Block 'blockname' found twice. | 新しいブロックがサブブロックを含んでおり、それが既存の名前と重複しています | $template を調べ、ブロック名を別のものに変更します |
SIGMA_CALLBACK_SYNTAX_ERROR | Cannot parse template function: (error description) | テンプレート関数のパラメータが間違っています | テンプレート関数の定義を修正します。 クォートのしかた に注意してください |