Initiation aux templates en PHP avec Smarty


prcdentsommairesuivant

II. Retour sur les mtas-structures

La matrise des tableaux (initialisation et accs aux valeurs) me parat un pr-requis indispensable pour utiliser Smarty dans de bonnes conditions.

II-A. Les tableaux

Nous allons revoir les deux principaux types de tableau que l'on utilise en PHP: les tableaux indexs et les tableaux associatifs (paire cl/valeur).

II-A-1. Les tableaux indexes

L'utilisation la plus simple, chaque valeur ajoute au tableau est attribue un index que l'on utilisera pour accder la valeur.

 
Sélectionnez

$aMonTableauIndexe = array('Sylvain', 'Jean-Luc', 'Jean', 'Eric');
 
echo $aMonTableauIndexe[2]; // affiche 'Jean'
						

II-A-2. Les tableaux associatifs

Pour ce qui est des tableau associatifs, la syntaxe est quelque peu diffrente puisque l'on doit associer chaque cl une valeur.

 
Sélectionnez

$aMonTableauAsscoiatif = array(
	'Jean-Luc' => 'Michel',
	'Jean' => 'Peyroux',
	'Eric' => 'Pommereau',
	'Sylvain' => 'James'		
);
 
echo $aMonTableauAsscoiatif['Jean']; // Affiche 'Peyroux'	
						

II-B. Les objets (syntaxe PHP5)

Voici un petit exemple d'une classe reprsentant une personne.
Nous allons voir, dans un premier temps, la dfinition de la classe, puis son utilisation.
A la fin du script j'utilise la fonction print_r($objet) pour afficher le contenu de l'objet.

 
Sélectionnez
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 Chteau 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 Chteau des Rentiers 75013 PARIS
            [2] => Date de naissance: 23/11/1973
        )
 
)	
*/

II-C. Les fichiers xml (avex SimpleXml)

La librairie SimpleXML porte trs bien son nom. Grce SimpleXML vous allez charger un fichier XML (provenant d'une chane de caractres ou d'un fichier) et accder ses valeurs en deux coups de cuillres pot. Dans notre exemple nous allons charger un fichier XML et montrer comment accder une valeur de ce fichier.

personnes.xml
Sélectionnez
<?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 accder la valeur du fichier XML par l'intermdiaire de la librairie SimpleXML

Le fichier PHP
Sélectionnez
<?php
   $oFichierXml = simplexml_load_file('personnes.xml');
 
   // Lecture et affichage du nom ***************
   echo $oFichierXml->personne[0]->nom; // Affiche: 'POMMEREAU'
?>

prcdentsommairesuivant

Vous avez aimé ce tutoriel ? Alors partagez-le en cliquant sur les boutons suivants : Viadeo Twitter Facebook Share on Google+   

  

Copyright © 2008 Eric POMMEREAU. Aucune reproduction, même partielle, ne peut être faite de ce site ni de l'ensemble de son contenu : textes, documents, images, etc. sans l'autorisation expresse de l'auteur. Sinon vous encourez selon la loi jusqu'à trois ans de prison et jusqu'à 300 000 € de dommages et intérêts.