II. Retour sur les métastructures▲
La maîtrise des tableaux (initialisation et accès aux valeurs) me paraît un prérequis indispensable pour utiliser Smarty dans de bonnes conditions.
II-A. Les tableaux▲
Nous allons revoir les deux principaux types de tableaux que l'on utilise en PHP : les tableaux indexés et les tableaux associatifs (paire clé/valeur).
II-A-1. Les tableaux indexés▲
L'utilisation la plus simple, à chaque valeur ajoutée au tableau est attribué un index que l'on utilisera pour accéder à la valeur.
II-A-2. Les tableaux associatifs▲
Pour ce qui est des tableaux associatifs, la syntaxe est quelque peu différente puisque l'on doit associer à chaque clé une valeur.
II-B. Les objets (syntaxe PHP5)▲
Voici un petit exemple d'une classe représentant une personne.
Nous allons voir, dans un premier temps, la définition de la classe, puis son utilisation.
À la fin du script, j'utilise la fonction print_r($objet) pour afficher le contenu de l'objet.
class personne
{
public
$nom
=
""
;
public
$prenom
=
""
;
public
$aInfos
=
array
();
public
function
__construct
($sNom
,
$sPrenom
) {
$this
->
nom =
$sNom
;
$this
->
prenom =
$sPrenom
;
}
public
function
add_info($sInfo
) {
array_push($this
->
aInfos,
$sInfo
);
}
}
$oPersonne
=
new
personne('POMMEREAU'
,
'Eric'
);
$oPersonne
->
add_info('Fixe: 01.53.71.29.14'
);
$oPersonne
->
add_info('Adresse: 122, rue du Château des Rentiers 75013 PARIS'
);
$oPersonne
->
add_info('Date de naissance: 23/11/1973'
);
printf(
'<pre>%s</pre>'
,
print_r($oPersonne
,
1
)
);
/* AFFICHE **********************************
personne Object
(
[nom] => POMMEREAU
[prenom] => Eric
[aInfos] => Array
(
[0] => Fixe: 01.53.71.29.14
[1] => Adresse: 122, rue du Château des Rentiers 75013 PARIS
[2] => Date de naissance: 23/11/1973
)
)
*/
II-C. Les fichiers xml (avex SimpleXml)▲
La bibliothèque SimpleXML porte très bien son nom. Grâce à SimpleXML vous allez charger un fichier XML (provenant d'une chaîne de caractères ou d'un fichier) et accéder à ses valeurs en deux coups de cuillères à pot. Dans notre exemple nous allons charger un fichier XML et montrer comment accéder à une valeur de ce fichier.
<?xml version="1.0" encoding="iso-8859-1"?>
<personnes>
<personne>
<nom>
POMMEREAU</nom>
<prenom>
ERIC</prenom>
</personne>
<personne>
<nom>
JAMES</nom>
<prenom>
Sylvain</prenom>
</personne>
<personne>
<nom>
MICHEL</nom>
<prenom>
Jean-Luc</prenom>
</personne>
</personnes>
Maintenant le fichier PHP que l'on utilise pour accéder à la valeur du fichier XML par l'intermédiaire de la bibliothèque SimpleXML :
<?php
$oFichierXml
=
simplexml_load_file('personnes.xml'
);
// Lecture et affichage du nom ***************
echo $oFichierXml
->
personne[
0
]->
nom;
// Affiche: 'POMMEREAU'
?>