'Zend_View_Helper_' (możesz określić własny
przedrostek podczas ustawiania ścieżki do klas helperów), a ostatni
segment nazwy klasy jest nazwą klasy helpera; ten segment powinien
być w postaci TitleCapped; pełna nazwa klasy wygląda więc tak:
Zend_View_Helper_FooBar. Ta klasa powinna zawierać
przynajmniej jedną metodę, nazwaną tak jak klasa helpera, ale już w
postaci camelCased: fooBar().
setHelperPath() aby nadpisać istniejące
ścieżki, domyślna ścieżka zawsze będzie ustawiona aby być pewnym, że
domyślne helpery będą zawsze działać.
$this->nazwaHelpera(). Obiekt Zend_View
załaduje klasę Zend_View_Helper_NazwaHelpera, utworzy
obiekt tej klasy i wywoła metodę nazwaHelpera().
Instancja obiektu istnieje teraz w instancji Zend_View i
będzie ona ponownie używana przy następnych wywołaniach
$this->nazwaHelpera().
Zend_View posiada wbudowany zbiór klas helperów, z
których większość odnosi się do generowania formularzy, a każda z
nich automatycznie filtruje dane wyjściowe. Dodatkowo dostępne są
klasy helperów służące do tworzenia adresów URL na podstawie tras,
do tworzenia list HTML oraz do deklarowania zmiennych. Obecnie
dostępne klasy helperów to:
declareVars(): Głównie używana gdy używamy metody
strictVars(), ta klasa helpera może być użyta
do zadeklarowania zmiennych szablonu, które zostały ustawione
lub nie, w obiekcie widoku. Możemy też użyć jej do ustawienia
domyślnych wartości. Tablice przekazane do metody jako argumenty
zostaną użyte do ustawienia domyślnych wartości; w przeciwnym
razie, gdy zmienna nie istnieje, zostanie ustawiona jako pusty
łańcuch znaków.
fieldset($name, $content, $attribs): Tworzy element
fieldset. Jeśli tablica $attribs zawiera
klucz 'legend', ta wartość zostanie użyta jako legenda pola
fieldset. Pole fieldset będzie zawierać zawartość przekazaną do
tego helpera przez zmienną $content.
form($name, $attribs, $content): Generuje formularz.
Wszystkie atrybuty z tablicy $attribs będą
zabezpieczone i renderowane jako atrybuty XHTML znacznika form.
Jeśli przekazana jest zmienna $content i ma inną
wartość niż false, to zawartość tej zmiennej zostanie
renderowana wraz ze znacznikiem otwierającym i zamykającym
formularz; jeśli zmienna $content ma wartość false
(domyślnie), zostanie zrenderowany tylko znacznik otwierający.
formButton($name, $value, $attribs): Tworzy element
<button />.
formCheckbox($name, $value, $attribs,
$options): Tworzy element <input type="checkbox"
/>.
formErrors($errors, $options): Generuje listę
nieuporządkowaną zawierająca informacje o błędach. Zmienna
$errors powinna być łańcuchem znaków lub
tablicą łańcuchów znaków; Zmienna $options
powinna zawierać atrybuty jakie chcesz umieścić w znaczniku
otwierającym listę.
setElementStart($string); domyślną
wartością jest '<ul class="errors"%s"><li>', gdzie %s
jest zastąpione atrybutami zdefiniowanymi w zmiennej
$options.
setElementSeparator($string); domyślną
wartością jest '</li><li>'.
setElementEnd($string); domyślną
wartością jest '</li></ul>'.
formFile($name, $value, $attribs): Tworzy element
<input type="file" />.
formHidden($name, $value, $attribs): Tworzy element
<input type="hidden" />.
formLabel($name, $value, $attribs): Tworzy element
<label>, nadając atrybutowi for wartość
zmiennej $name i ustawiając jako etykietę wartość
zmiennej $value.
Jeśli opcja disable zostanie przekazana w zmiennej
$attribs, żaden kod nie zostanie zwrócony.
formMultiCheckbox($name, $value, $attribs, $options,
$listsep): Tworzy listę elementów checkbox. Zmienna
$options powinna być asocjacyjną tablicą, i może
mieć dowolne rozmiary. Zmienna $value może być
pojedynczą wartością lub tablicą wartości, które odpowiadają
kluczom tablicy $options. Zmienna
$listsep jest separatorem elementów, domyślnie ma
wartość <br />. Domyślnie ten element jest traktowany jako
tablica; wszystkie pola mają te samą nazwę i będą wysłane jako
tablica.
formPassword($name, $value, $attribs): Tworzy
element <input type="password" />.
formRadio($name, $value, $attribs, $options):
Tworzy serię elementów <input type="radio" />, po jednym
dla każdego elementu tablicy $options. W tablicy $options, klucz
jest wartością przycisku radio, a wartość elementu tablicy
jest etykietą przycisku radio. Zmienna $value określa wartość
przycisku, który ma być początkowo zaznaczony.
formReset($name, $value, $attribs): Tworzy element
<input type="reset" />.
formSelect($name, $value, $attribs, $options):
Tworzy blok <select>...</select>, z elementami
<option> po jednym dla każdego elementu tablicy $options.
W tablicy $options klucz jest wartością elementu, a wartość
jest etykietą. Zmienna $value określa wartość elementu (lub
elementów), który ma być początkowo zaznaczony.
formSubmit($name, $value, $attribs): Tworzy element
<input type="submit" />.
formText($name, $value, $attribs): Tworzy element
<input type="text" />.
formTextarea($name, $value, $attribs): Tworzy
element <textarea>...</textarea>.
url($urlOptions, $name, $reset): Tworzy adres URL
na podstawie nazwy trasy. Parametr $urlOptions
powinien być tablicą asocjacyjną zawierającą pary klucz/wartość
używane przez daną trasę.
htmlList($items, $ordered, $attribs, $escape): generuje
uporządkowane oraz nieuporządkowane listy na podstawie
przekazanego do niej parametru $items.
Jeśli parametr $items jest wielowymiarową tablicą,
zostanie zbudowana lista zagnieżdżona. Jeśli flaga $escape
ma wartość true (domyślnie), każdy z elementów zostanie
zabezpieczony za pomocą mechanizmu zarejestrowanego w obiekcie
widoku; przekaż wartość false aby zezwolić na wyświetlanie kodu
html wewnątrz elementów list.
Zend_View ma szukać klas helperów.
Domyślnie Zend_View szuka klas helperów w katalogu
"Zend/View/Helper/*". Możesz wybrać inny katalog używając metod
setHelperPath() oraz addHelperPath().
Dodatkowo możesz określić przedrostek klas helperów znajdujących
się w podanej ścieżce aby utworzyć przestrzenie nazw dla klas
helperów. Domyślnie, gdy żaden przedrostek nie zostanie określony,
przyjęty zostanie przedrostek 'Zend_View_Helper_'.
addHelperPath(). Gdy dodajesz ścieżki na stos,
Zend_View będzie szukać klasy helpera począwszy od
ostatnio dodanej ścieżki. To pozwala na dodanie (lub nawet
nadpisanie) podstawowego pakietu klas helperów swoimi własnymi
klasami.
addHelperPath() oraz
setHelperPath()).
addHelperPath()
lub setHelperPath()).
Zend_View automatycznie załaduje klasę,
utworzy instancję, i uruchomi metodę.
twojHelper:
TwojHelper tyle razy ile zechcesz; instancja zostanie
utworzona raz i będzie ona istniała przez cały okres istnienia
instancji Zend_View.
Zend_View -- na przykład, jeśli potrzebujesz użyć
zarejestrowanego kodowania, lub chcesz renderować inny skrypt
widoku jako część klasy helpera. Aby uzyskać dostęp do obiektu
widoku, klasa helpera powinna posiadać metodę
setView($view), tak jak poniżej:
setView(),
będzie ona wywołana wtedy, gdy po raz pierwszy zostanie utworzona
instancja klasy helpera i przekazany zostanie obecny obiekt
widoku. Jest to po to, aby przechować obiekt widoku w klasie helpera,
a także po to, aby określić w jaki sposób powinno się uzyskiwać do
tego obiektu dostęp.
Zend_View_Helper_Abstract
nie musisz definiować tej metody, ponieważ jest ona zdefiniowana
przez klasę rozszerzaną.