2017-06-27 8 views
0

J'attribue un array nommé $additional_infos du fichier php à un fichier de modèle smarty.Clé d'accès et valeur d'un tableau avec élément imbriqué et clé dans smarty template?

foreach ($results as $row) { 

    $additional_infos[] = array('informations_client' => $row['informations_client'], 'field_type' => $row['field_type']); 

} 

L'impression du tableau est comme ce

Array 
(
    [0] => Array 
     (
      [informations_client] => Nom 
      [field_type] => 1 
     ) 

    [1] => Array 
     (
      [informations_client] => Prénom 
      [field_type] => 1 
     ) 

    [2] => Array 
     (
      [informations_client] => Adresse 
      [field_type] => 2 
     ) 
) 

Je peux afficher ce dans le modèle comme celui-ci:

{foreach name=outer item=contact from=$additional_infos} 
    <hr /> 
    {foreach key=key item=item from=$contact} 
     {$key}: {$item}<br /> 
    {/foreach} 
{/foreach} 

Il fonctionne très bien:

informations_client: Nom 

field_type: 1 

informations_client: Prénom 

field_type: 1 

Je voudrais accéder directement au informations_client ou field_typ e mais j'ai des erreurs smarty.

Je voudrais utiliser quelque chose comme ça {$item. field_type}

Comment puis-je faire?

+1

Vous pouvez utiliser {$ item [ « field_type »]} –

+0

@PavelPetrov J'ai passé une heure sur ce sujet et a finalement décidé de trouver de l'aide sur le SO. Juste après que je pose ma question, je découvre que je pourrais accéder directement comme ceci dans un seul foreach: '{$ contact.informations_client}' –

Répondre

0

J'hésite à supprimer ma question depuis que j'ai trouvé une solution immédiatement après avoir posé la question (j'étais bloqué depuis une heure).

Je préfère poster ma réponse si cela peut aider. Peut-être qu'il pourrait être amélioré:

{foreach name=outer item=contact from=$additional_infos} 

    {$contact.informations_client} - {$contact.field_type} 

{/foreach}