Pregunta

Estoy probando PHPTAL y quiero renderizar una tabla con rayas de cebra. Estoy recorriendo una simple matriz php assoc ($ _SERVER).

Tenga en cuenta que no quiero usar jQuery ni nada de eso, ¡estoy tratando de aprender el uso de PHPTAL!

Actualmente lo tengo funcionando así (demasiado detallado para mi gusto):

<tr tal:repeat="item server">
  <td tal:condition="repeat/item/odd" tal:content="repeat/item/key" class="odd">item key</td>
  <td tal:condition="repeat/item/even" tal:content="repeat/item/key" class="even">item key</td>
  <td tal:condition="repeat/item/odd" tal:content="item" class="odd">item value</td>
  <td tal:condition="repeat/item/even" tal:content="item" class="even">item value</td>
</tr>

Básicamente quiero algún tipo de asignación condicional sobre la marcha, pero no estoy seguro de la sintaxis.

¿Fue útil?

Solución

Puede crear un modificador de expresión escribiendo la función phptal_tales_evenodd () (consulte phptal_tales () en el manual):

<td tal:attributes="class evenodd:repeat/item/odd">

Otros consejos

Bueno, parece que tengo mi propia respuesta, aunque sigo pensando que esto es bastante feo:

<tr tal:repeat="item server">
  <td tal:content="repeat/item/key" tal:attributes="class php: repeat.item.odd ? 'odd' : 'even'">item key</td>
  <td tal:content="item" tal:attributes="class php: repeat.item.odd ? 'odd' : 'even'">item value</td>
</tr>

¿Alguien tiene algo más elegante buscando PHPTAL?

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top