fooBar() が含まれていなければなりません。
setHelperPath() をコールして既存のパスを上書きしても、
このパスだけは残ります。これにより、
デフォルトのヘルパーは常に動作することが保証されます。
$this->helperName() をコールします。これをコールすると、裏側では
helperName() メソッドをコールします。
オブジェクトのインスタンスは $this->helperName() がコールされたときには再利用されます。
declareVars():
strictVars() を使用する際に同時に使用します。
このヘルパーを使用すると、テンプレート変数を宣言することができます。
この変数は、すでにビュースクリプトで設定されているものでもいないものでもかまいません。
また、同時にデフォルト値も設定します。
このメソッドへの引数として配列を渡すとデフォルト値を設定します。
それ以外の場合は、もしその変数が存在しない場合は空文字列を設定します。
fieldset($name, $content, $attribs):
XHTML の fieldset を作成します。$attribs に
'legend' というキーが含まれる場合、その値をフィールドセットの説明として使用します。
フィールドセットで囲む内容は、このヘルパーに渡した
$content です。
form($name, $attribs, $content):
XHTML の form を作成します。すべての $attribs
はエスケープされ、form タグの XHTML 属性としてレンダリングされます。
$content が存在してその値が false 以外の場合は、
その内容がフォームの開始タグと終了タグの間にレンダリングされます。
$content が false (デフォルト) の場合は、
フォームの開始タグのみを作成します。
formButton($name, $value, $attribs): <button /> 要素を作成します。
formCheckbox($name, $value, $attribs,
$options):
<input type="checkbox" /> 要素を作成します。
formErrors($errors, $options):
エラーの表示用に、XHTML の順序なしリストを作成します。
$errors は、文字列あるいは文字列の配列となります。
$options は、リストの開始タグの属性として設定したい内容です。
setElementStart($string);
デフォルトは '<ul class="errors"%s"><li>'
で、%s の部分には $options
で指定した属性が入ります。
setElementSeparator($string);
デフォルトは '</li><li>' です。
setElementEnd($string);
デフォルトは '</li></ul>' です。
formFile($name, $attribs): Creates an
type="file" /> 要素を作成します。
formHidden($name, $value, $attribs): <input
type="hidden" /> 要素を作成します。
formLabel($name, $value, $attribs):
<label> 要素を作成します。for 属性の値は
$name に、そしてラベルのテキストは
$value になります。
attribs に disable
を渡すと、結果を何も返しません。
formMultiCheckbox($name, $value, $attribs, $options,
$listsep): チェックボックスのリストを作成します。
$options は連想配列で、任意の深さにすることができます。
$value は単一の値か複数の値の配列で、これが
$options 配列のキーにマッチします。
$listsep は、デフォルトでは HTML の改行
("<br />") です。デフォルトでは、
この要素は配列として扱われます。
つまり、すべてのチェックボックスは同じ名前となり、
入力内容は配列形式で送信されます。
formPassword($name, $value, $attribs): <input
type="password" /> 要素を作成します。
formRadio($name, $value, $attribs, $options):
一連の <input type="radio" /> 要素を、
$options の要素ごとに作成します。$options は、
ラジオボタンの値をキー、ラベルを値とする配列となります。
$value はラジオボタンの初期選択状態を設定します。
formReset($name, $value, $attribs): <input
type="reset" /> 要素を作成します。
formSelect($name, $value, $attribs, $options):
<select>...</select> ブロックを作成します。
$options の要素ごとに <option> を作成します。
$options は、選択肢の値をキー、
ラベルを値とする配列となります。$value
は初期選択状態を設定します。
formSubmit($name, $value, $attribs): <input
type="submit" /> 要素を作成します。
formText($name, $value, $attribs): <input
type="text" /> 要素を作成します。
formTextarea($name, $value, $attribs):
<textarea>...</textarea> ブロックを作成します。
url($urlOptions, $name, $reset):
指定したルートにもとづく URL 文字列を作成します。
$urlOptions は、そのルートで使用する
キー/値 のペアの配列となります。
htmlList($items, $ordered, $attribs, $escape):
$items で渡した内容をもとに
順序つきリストあるいは順序なしリストを作成します。
$items が多次元配列の場合は、入れ子状のリストとなります。
$escape フラグを true (デフォルト) にすると、
各項目はビューオブジェクトに登録されているエスケープ方式でエスケープされます。
リスト内でマークアップを行いたい場合は false を渡します。
setHelperPath() および addHelperPath() メソッドを使用します。
さらに、クラスプレフィックスを指定することもできます。
これにより、ヘルパークラスに名前空間を設定できるようになります。
デフォルトでクラスプレフィックスを指定しなかった場合は、
'Zend_View_Helper_' であると見なされます。
addHelperPath() メソッドを使用すると、検索パスを「積み重ねる」
ことができます。これを使用すると、setView() メソッドが定義されています。
しかし、将来のリリースでは Strategy パターンを実装することを検討しており、
以下に示す命名規約の多くを単純化する予定です。
今のうちにこのようにしておくと、
将来のバージョンでもあなたの書いたコードがそのまま動くようになるでしょう。
addHelperPath() や
setHelperPath() にはプレフィックスを指定する必要があります。
最後のアンダースコアは含めても含めなくてもかまいません)。
SpecialPurpose ヘルパーのコードの例を示します。
SpecialPurpose
ヘルパーを必要なだけコールします。いちどインスタンスが作成された後は、
setView($view) メソッドを定義しなければなりません。
setView() メソッドを定義しておくと、
最初にインスタンスが作成される際に自動的にこのメソッドがコールされ、
現在のビューオブジェクトが引数として渡されます。
渡されたオブジェクトをクラス内でどのように管理するかは特に決まっていません。
お好みの方法で管理してください。