Zend_Tag

Einführung

Zend_Tag ist eine Komponenten Suite welche zwei Klassen anbietet um mit Tags zu arbeiten, Zend_Tag_Item und Zend_Tag_ItemList. Zusätzlich kommt sie mit dem Interface Zend_Tag_Taggable, welches es erlaubt jedes eigene Modell als markiertes Element, in Verbindung mit Zend_Tag, zu verwenden.

Zend_Tag_Item ist eine grundsätzliche Implementation eines markierten Elements, welche mit der essentiellen Funktionalität kommt, die notwendig ist um mit der Zend_Tag Suite zu arbeiten. Ein markierbares Element besteht immer aus einem Titel und einem relativen Gewicht (z.B. die Anzahl der Vorkommnisse). Es speichert auch Parameter welche von den unterschiedlichen Sub-Komponenten von Zend_Tag verwendet werden.

Um mehrere Element miteinander zu gruppieren, existiert Zend_Tag_ItemList als Array Iterator und bietet zusätzliche Funktionalitäten um die Werte des absoluten Gewichts, basierend auf dem angegebenen relativen Gewicht jedes Elements in diesem, zu kalkulieren.

Example #1 Verwenden von Zend_Tag

Dieses Beispiel zeigt wie eine Liste von Tags erstellt, und Werte des absoluten Gewichts auf diesen verteilt werden kann.

  1. // Erstellen des Elementliste
  2. $list = new Zend_Tag_ItemList();
  3.  
  4. // Hinzufügen der Tags zur Elementliste
  5. $list[] = new Zend_Tag_Item(array('title' => 'Code', 'weight' => 50));
  6. $list[] = new Zend_Tag_Item(array('title' => 'Zend Framework', 'weight' => 1));
  7. $list[] = new Zend_Tag_Item(array('title' => 'PHP', 'weight' => 5));
  8.  
  9. // Absolute Werte auf den Elementen verteilen
  10. $list->spreadWeightValues(array(1, 2, 3, 4, 5, 6, 7, 8, 9, 10));
  11.  
  12. // Die Werte mit ihren absoluten Werten ausgeben
  13. foreach ($list as $item) {
  14.     printf("%s: %d\n", $item->getTitle(), $item->getParam('weightValue'));
  15. }

Das wird die drei Elemente Code, Zend Framework und PHP, mit den absoluten Werten 10, 1 und 2, ausgeben.


Zend_Tag