Subversion Repositories Applications.framework

Compare Revisions

No changes between revisions

Ignore whitespace Rev 292 → Rev 293

/tags/v0.3-aleaume/framework/SquelettePhp.php
New file
0,0 → 1,73
<?php
// declare(encoding='UTF-8');
/**
* Classe SquelettePhp, traitant les squelette Php utilisant la syntaxe courte php ou pas.
* Ces méthodes sont statiques.
*
* @category php5
* @package Framework
* @author Jean-Pascal MILCENT <jpm@tela-botanica.org>
* @copyright Copyright (c) 2010, Tela Botanica (accueil@tela-botanica.org)
* @license http://www.cecill.info/licences/Licence_CeCILL_V2-fr.txt Licence CECILL
* @license http://www.gnu.org/licenses/gpl.html Licence GNU-GPL
* @version $Id$
* @link /doc/framework/
*/
class SquelettePhp {
 
/**
* Fonction prenant en paramètre un chemin de fichier squelette et un tableau associatif de données,
* en extrait les variables, charge le squelette et retourne le résultat des deux combinés.
*
* @param String $fichier le chemin du fichier du squelette
* @param Array $donnees un tableau associatif contenant les variables a injecter dans le squelette.
* @return boolean false si la vue n'existe pas, sinon la chaine résultat.
*/
public static function analyser($fichier, Array &$donnees = array()) {
$sortie = false;
if (file_exists($fichier)) {
// Extraction des variables du tableau de données
extract($donnees);
 
// Démarage de la bufferisation de sortie
ob_start();
// Si les tags courts sont activés
if ((bool) @ini_get('short_open_tag') === true) {
// Simple inclusion du squelette
include $fichier;
} else {
// Sinon, remplacement des tags courts par la syntaxe classique avec echo
$html_et_code_php = self::traiterTagsCourts($fichier);
// Pour évaluer du php mélangé dans du html il est nécessaire de fermer la balise php ouverte par eval
$html_et_code_php = '?>'.$html_et_code_php;
// Interprétation du html et du php dans le buffer
echo eval($html_et_code_php);
}
// Récupèration du contenu du buffer
$sortie = ob_get_contents();
// Suppression du buffer
@ob_end_clean();
} else {
$msg = "Le fichier du squelette '$fichier' n'existe pas.";
trigger_error($msg, E_USER_WARNING);
}
// Retourne le contenu
return $sortie;
}
 
/**
* Fonction chargeant le contenu du squelette et remplaçant les tags court php (<?= ...) par un tag long avec echo.
*
* @param String $chemin_squelette le chemin du fichier du squelette
* @return string le contenu du fichier du squelette php avec les tags courts remplacés.
*/
private static function traiterTagsCourts($chemin_squelette) {
$contenu = file_get_contents($chemin_squelette);
// Remplacement de tags courts par un tag long avec echo
$contenu = str_replace('<?=', '<?php echo ', $contenu);
// Ajout systématique d'un point virgule avant la fermeture php
$contenu = preg_replace("/;*\s*\?>/", "; ?>", $contenu);
return $contenu;
}
}
?>
Property changes:
Added: svn:keywords
+Id Author Date Revision HeadURL
\ No newline at end of property
/tags/v0.3-aleaume/framework/Registre.php
New file
0,0 → 1,69
<?php
// declare(encoding='UTF-8');
/**
* Classe Registre, qui permet un accès à différentes variables et paramètres à travers les autres classes.
* C'est un remplaçant à la variable magique $_GLOBALS de Php.
* C'est un singleton.
* Si vous avez besoin de modifier dynamiquement des paramètres de configuration, utiliser le @see Registe, il est fait pour ça.
* Si vous voulez paramètré votre application via le fichier config.ini, utilisez plutôt la classe @see Config.
*
* @category php 5.2
* @package Framework
* @author Jean-Pascal MILCENT <jmp@tela-botanica.org>
* @copyright Copyright (c) 2009, Tela Botanica (accueil@tela-botanica.org)
* @license http://www.cecill.info/licences/Licence_CeCILL_V2-fr.txt Licence CECILL
* @license http://www.gnu.org/licenses/gpl.html Licence GNU-GPL
* @version $Id$
* @link /doc/framework/
*
*/
class Registre {
 
/** Tableau associatif stockant les variables. */
private static $stockage = array();
/**
* Ajoute un objet au tableau selon un intitulé donné.
* @param string l'intitulé sous lequel l'objet sera conservé
* @param mixed l'objet à conserver
*/
public static function set($intitule, $objet) {
if (is_array($objet) && isset(self::$stockage[$intitule])) {
self::$stockage[$intitule] = array_merge((array) self::$stockage[$intitule], (array) $objet);
$message = "Le tableau $intitule présent dans le registre a été fusionné avec un nouveau tableau de même intitulé !";
trigger_error($message, E_USER_WARNING);
} else {
self::$stockage[$intitule] = $objet;
}
}
 
/**
* Renvoie le contenu associé à l'intitulé donné en paramètre.
* @return mixed l'objet associé à l'intitulé ou null s'il n'est pas présent
*/
public static function get($intitule) {
$retour = (isset(self::$stockage[$intitule])) ? self::$stockage[$intitule] : null;
return $retour;
}
 
/**
* Détruit l'objet associé à l'intitulé, n'a pas d'effet si il n'y a pas d'objet associé.
* @param string l'intitulé de l'entrée du registre à détruire.
*/
public static function detruire($intitule) {
if (isset(self::$stockage[$intitule])) {
unset(self::$stockage[$intitule]);
}
}
 
/**
* Teste si le registre contient une donnée pour un intitulé d'entrée donné.
* @param string l'intitulé de l'entrée du registre à tester.
* @return boolean true si un objet associé à cet intitulé est présent, false sinon
*/
public static function existe($intitule) {
$retour = (isset(self::$stockage[$intitule])) ? true : false;
return $retour;
}
}
?>
Property changes:
Added: svn:keywords
+Id Author Date Revision HeadURL
\ No newline at end of property
/tags/v0.3-aleaume/framework/.htaccess
New file
0,0 → 1,2
# Ce fichier est là pour éviter l'accès au fichier .ini depuis un navigateur.
deny from all
Property changes:
Added: svn:keywords
+Id Author Date Revision HeadURL
\ No newline at end of property
/tags/v0.3-aleaume/framework/CacheSqlite.php
New file
0,0 → 1,617
<?php
class CacheSqlite {
/**
* Options disponibles :
*
* ====> (string) stockage_chemin :
* Chemin vers le fichier contenant la base SQLite.
*
*
* ====> (int) defragmentation_auto :
* - Désactive / Régler le processus de défragmentation automatique
* - Le processus de défragmentation automatiques réduit la taille du fichier contenant la base de données
* quand un ajout ou une suppression de cache est réalisée :
* 0 => pas de défragmentation automatique
* 1 => défragmentation automatique systématique
* x (integer) > 1 => défragmentation automatique toutes les 1 fois (au hasard) sur x ajout ou suppression de cache
*
* @var array options disponibles
*/
protected $options = array(
'stockage_chemin' => null,
'defragmentation_auto' => 10
);
/**
* DB ressource
*
* @var mixed $db
*/
private $bdd = null;
 
/**
* Boolean to store if the structure has benn checked or not
*
* @var boolean $structure_ok
*/
private $structure_ok = false;
 
private $Cache = null;
/**
* Constructor
*
* @param array $options Associative array of options
* @throws Zend_cache_Exception
* @return void
*/
public function __construct(array $options = array(), Cache $cache) {
$this->Cache = $cache;
if (extension_loaded('sqlite')) {
$this->initialiserOptionsParConfig();
$this->setOptions($options);
} else {
$e = "Impossible d'utiliser le cache SQLITE car l'extenssion 'sqlite' n'est pas chargée dans l'environnement PHP courrant.";
trigger_error($e, E_USER_ERROR);
}
}
private function initialiserOptionsParConfig() {
while (list($nom, $valeur) = each($this->options)) {
if (Config::existe($nom)) {
$this->options[$nom] = Config::get($nom);
}
}
}
/**
* Destructor
*
* @return void
*/
public function __destruct() {
@sqlite_close($this->getConnexion());
}
private function setOptions($options) {
while (list($nom, $valeur) = each($options)) {
if (!is_string($nom)) {
trigger_error("Nom d'option incorecte : $nom", E_USER_WARNING);
}
$nom = strtolower($nom);
if (array_key_exists($nom, $this->options)) {
$this->options[$nom] = $valeur;
}
}
}
public function setEmplacement($emplacement) {
if (extension_loaded('sqlite')) {
$this->options['stockage_chemin'] = $emplacement;
} else {
trigger_error("Impossible d'utiliser le mode de sotckage SQLite car l'extenssion 'sqlite' n'est pas chargé dans ".
"l'environnement PHP courrant.", E_USER_ERROR);
}
}
 
/**
* Test if a cache is available for the given id and (if yes) return it (false else)
*
* @param string $id Cache id
* @param boolean $doNotTestCacheValidity If set to true, the cache validity won't be tested
* @return string|false Cached datas
*/
public function charger($id, $ne_pas_tester_validiter_du_cache = false) {
$this->verifierEtCreerStructureBdd();
$requete = "SELECT content FROM cache WHERE id = '$id'".
(($ne_pas_tester_validiter_du_cache) ? '' : ' AND (expire = 0 OR expire > '.time().')');
$resultat = $this->requeter($requete);
$ligne = @sqlite_fetch_array($resultat);
return ($ligne) ? $ligne['content'] : false;
}
 
/**
* Test if a cache is available or not (for the given id)
*
* @param string $id Cache id
* @return mixed|false (a cache is not available) or "last modified" timestamp (int) of the available cache record
*/
public function tester($id) {
$this->verifierEtCreerStructureBdd();
$requete = "SELECT lastModified FROM cache WHERE id = '$id' AND (expire = 0 OR expire > ".time().')';
$resultat = $this->requeter($requete);
$ligne = @sqlite_fetch_array($resultat);
return ($ligne) ? ((int) $ligne['lastModified']) : false;
}
 
/**
* Save some string datas into a cache record
*
* Note : $data is always "string" (serialization is done by the
* core not by the backend)
*
* @param string $data Datas to cache
* @param string $id Cache id
* @param array $tags Array of strings, the cache record will be tagged by each string entry
* @param int $specificLifetime If != false, set a specific lifetime for this cache record (null => infinite lifetime)
* @throws Zend_Cache_Exception
* @return boolean True if no problem
*/
public function sauver($donnees, $id, $tags = array(), $duree_vie_specifique = false) {
$this->verifierEtCreerStructureBdd();
//FIXME : si l'extension n'est pas installée, le cache passe tout de même par cette fonction et s'arrête à cet endroit.
$donnees = @sqlite_escape_string($donnees);
$timestamp_courrant = time();
$expiration = $this->Cache->getTimestampExpiration($duree_vie_specifique);
 
$this->requeter("DELETE FROM cache WHERE id = '$id'");
$sql = "INSERT INTO cache (id, content, lastModified, expire) VALUES ('$id', '$donnees', $timestamp_courrant, $expiration)";
$resultat = $this->requeter($sql);
if (!$resultat) {
// TODO : ajouter un log sauver() : impossible de stocker le cache d'id '$id'
Debug::printr("sauver() : impossible de stocker le cache d'id '$id'");
$resultat = false;
} else {
$resultat = true;
foreach ($tags as $tag) {
$resultat = $this->enregisterTag($id, $tag) && $resultat;
}
}
return $resultat;
}
 
/**
* Remove a cache record
*
* @param string $id Cache id
* @return boolean True if no problem
*/
public function supprimer($id) {
$this->verifierEtCreerStructureBdd();
$resultat = $this->requeter("SELECT COUNT(*) AS nbr FROM cache WHERE id = '$id'");
$resultat_nbre = @sqlite_fetch_single($resultat);
$suppression_cache = $this->requeter("DELETE FROM cache WHERE id = '$id'");
$suppression_tags = $this->requeter("DELETE FROM tag WHERE id = '$id'");
$this->defragmenterAutomatiquement();
return ($resultat_nbre && $suppression_cache && $suppression_tags);
}
 
/**
* Clean some cache records
*
* Available modes are :
* Zend_Cache::CLEANING_MODE_ALL (default) => remove all cache entries ($tags is not used)
* Zend_Cache::CLEANING_MODE_OLD => remove too old cache entries ($tags is not used)
* Zend_Cache::CLEANING_MODE_MATCHING_TAG => remove cache entries matching all given tags
* ($tags can be an array of strings or a single string)
* Zend_Cache::CLEANING_MODE_NOT_MATCHING_TAG => remove cache entries not {matching one of the given tags}
* ($tags can be an array of strings or a single string)
* Zend_Cache::CLEANING_MODE_MATCHING_ANY_TAG => remove cache entries matching any given tags
* ($tags can be an array of strings or a single string)
*
* @param string $mode Clean mode
* @param array $tags Array of tags
* @return boolean True if no problem
*/
public function nettoyer($mode = Cache::NETTOYAGE_MODE_TOUS, $tags = array()) {
$this->verifierEtCreerStructureBdd();
$retour = $this->nettoyerSqlite($mode, $tags);
$this->defragmenterAutomatiquement();
return $retour;
}
 
/**
* Return an array of stored cache ids
*
* @return array array of stored cache ids (string)
*/
public function getIds() {
$this->verifierEtCreerStructureBdd();
$resultat = $this->requeter('SELECT id FROM cache WHERE (expire = 0 OR expire > '.time().')');
$retour = array();
while ($id = @sqlite_fetch_single($resultat)) {
$retour[] = $id;
}
return $retour;
}
 
/**
* Return an array of stored tags
*
* @return array array of stored tags (string)
*/
public function getTags() {
$this->verifierEtCreerStructureBdd();
$resultat = $this->requeter('SELECT DISTINCT(name) AS name FROM tag');
$retour = array();
while ($id = @sqlite_fetch_single($resultat)) {
$retour[] = $id;
}
return $retour;
}
 
/**
* Return an array of stored cache ids which match given tags
*
* In case of multiple tags, a logical AND is made between tags
*
* @param array $tags array of tags
* @return array array of matching cache ids (string)
*/
public function getIdsAvecLesTags($tags = array()) {
$this->verifierEtCreerStructureBdd();
$premier = true;
$ids = array();
foreach ($tags as $tag) {
$resultat = $this->requeter("SELECT DISTINCT(id) AS id FROM tag WHERE name='$tag'");
if ($resultat) {
$lignes = @sqlite_fetch_all($resultat, SQLITE_ASSOC);
$ids_tmp = array();
foreach ($lignes as $ligne) {
$ids_tmp[] = $ligne['id'];
}
if ($premier) {
$ids = $ids_tmp;
$premier = false;
} else {
$ids = array_intersect($ids, $ids_tmp);
}
}
}
$retour = array();
if (count($ids) > 0) {
foreach ($ids as $id) {
$retour[] = $id;
}
}
return $retour;
}
 
/**
* Return an array of stored cache ids which don't match given tags
*
* In case of multiple tags, a logical OR is made between tags
*
* @param array $tags array of tags
* @return array array of not matching cache ids (string)
*/
public function getIdsSansLesTags($tags = array()) {
$this->verifierEtCreerStructureBdd();
$resultat = $this->requeter('SELECT id FROM cache');
$lignes = @sqlite_fetch_all($resultat, SQLITE_ASSOC);
$retour = array();
foreach ($lignes as $ligne) {
$id = $ligne['id'];
$correspondance = false;
foreach ($tags as $tag) {
$resultat = $this->requeter("SELECT COUNT(*) AS nbr FROM tag WHERE name = '$tag' AND id = '$id'");
if ($resultat) {
$nbre = (int) @sqlite_fetch_single($resultat);
if ($nbre > 0) {
$correspondance = true;
}
}
}
if (!$correspondance) {
$retour[] = $id;
}
}
return $retour;
}
 
/**
* Return an array of stored cache ids which match any given tags
*
* In case of multiple tags, a logical AND is made between tags
*
* @param array $tags array of tags
* @return array array of any matching cache ids (string)
*/
public function getIdsAvecUnTag($tags = array()) {
$this->verifierEtCreerStructureBdd();
$premier = true;
$ids = array();
foreach ($tags as $tag) {
$resultat = $this->requeter("SELECT DISTINCT(id) AS id FROM tag WHERE name = '$tag'");
if ($resultat) {
$lignes = @sqlite_fetch_all($resultat, SQLITE_ASSOC);
$ids_tmp = array();
foreach ($lignes as $ligne) {
$ids_tmp[] = $ligne['id'];
}
if ($premier) {
$ids = $ids_tmp;
$premier = false;
} else {
$ids = array_merge($ids, $ids_tmp);
}
}
}
$retour = array();
if (count($ids) > 0) {
foreach ($ids as $id) {
$retour[] = $id;
}
}
return $retour;
}
 
/**
* Return the filling percentage of the backend storage
*
* @throws Zend_Cache_Exception
* @return int integer between 0 and 100
*/
public function getPourcentageRemplissage() {
$dossier = dirname($this->options['stockage_chemin']);
$libre = disk_free_space($dossier);
$total = disk_total_space($dossier);
$pourcentage = 0;
if ($total == 0) {
trigger_error("Impossible d'utiliser la fonction disk_total_space", E_USER_WARNING);
} else {
$pourcentage = ($libre >= $total) ? 100 : ((int) (100. * ($total - $libre) / $total));
}
return $pourcentage;
}
 
/**
* Return an array of metadatas for the given cache id
*
* The array must include these keys :
* - expire : the expire timestamp
* - tags : a string array of tags
* - mtime : timestamp of last modification time
*
* @param string $id cache id
* @return array array of metadatas (false if the cache id is not found)
*/
public function getMetadonnees($id) {
$this->verifierEtCreerStructureBdd();
$tags = array();
$resultat = $this->requeter("SELECT name FROM tag WHERE id = '$id'");
if ($resultat) {
$lignes = @sqlite_fetch_all($resultat, SQLITE_ASSOC);
foreach ($lignes as $ligne) {
$tags[] = $ligne['name'];
}
}
$resultat = $this->requeter("SELECT lastModified, expire FROM cache WHERE id = '$id'");
if ($resultat) {
$ligne = @sqlite_fetch_array($resultat, SQLITE_ASSOC);
$resultat = array(
'tags' => $tags,
'mtime' => $ligne['lastModified'],
'expiration' => $ligne['expire']);
} else {
$resultat = false;
}
return $resultat;
}
 
/**
* Give (if possible) an extra lifetime to the given cache id
*
* @param string $id cache id
* @param int $extraLifetime
* @return boolean true if ok
*/
public function ajouterSupplementDureeDeVie($id, $supplement_duree_de_vie) {
$this->verifierEtCreerStructureBdd();
$augmentation = false;
$requete = "SELECT expire FROM cache WHERE id = '$id' AND (expire = 0 OR expire > ".time().')';
$resultat = $this->requeter($requete);
if ($resultat) {
$expiration = @sqlite_fetch_single($resultat);
$nouvelle_expiration = $expiration + $supplement_duree_de_vie;
$resultat = $this->requeter('UPDATE cache SET lastModified = '.time().", expire = $nouvelle_expiration WHERE id = '$id'");
$augmentation = ($resultat) ? true : false;
}
return $augmentation;
}
 
/**
* Return the connection resource
*
* If we are not connected, the connection is made
*
* @throws Zend_Cache_Exception
* @return resource Connection resource
*/
private function getConnexion() {
if (!is_resource($this->bdd)) {
if ($this->options['stockage_chemin'] === null) {
$e = "L'emplacement du chemin vers le fichier de la base de données SQLite n'a pas été défini";
trigger_error($e, E_USER_ERROR);
} else {
$this->bdd = sqlite_open($this->options['stockage_chemin']);
if (!(is_resource($this->bdd))) {
$e = "Impossible d'ouvrir le fichier '".$this->options['stockage_chemin']."' de la base de données SQLite.";
trigger_error($e, E_USER_ERROR);
$this->bdd = null;
}
}
}
return $this->bdd;
}
 
/**
* Execute une requête SQL sans afficher de messages d'erreur.
*
* @param string $requete requête SQL
* @return mixed|false resultats de la requête
*/
private function requeter($requete) {
$bdd = $this->getConnexion();
//Debug::printr($requete);
$resultat = (is_resource($bdd)) ? @sqlite_query($bdd, $requete, SQLITE_ASSOC, $e_sqlite) : false;
if (is_resource($bdd) && ! $resultat) {
Debug::printr("Erreur SQLITE :\n$e_sqlite\nPour la requête :\n$requete\nRessource : $bdd");
}
return $resultat;
}
 
/**
* Deal with the automatic vacuum process
*
* @return void
*/
private function defragmenterAutomatiquement() {
if ($this->options['defragmentation_auto'] > 0) {
$rand = rand(1, $this->options['defragmentation_auto']);
if ($rand == 1) {
$this->requeter('VACUUM');
@sqlite_close($this->getConnexion());
}
}
}
 
/**
* Register a cache id with the given tag
*
* @param string $id Cache id
* @param string $tag Tag
* @return boolean True if no problem
*/
private function enregisterTag($id, $tag) {
$requete_suppression = "DELETE FROM tag WHERE name = '$tag' AND id = '$id'";
$resultat = $this->requeter($requete_suppression);
$requete_insertion = "INSERT INTO tag(name,id) VALUES ('$tag','$id')";
$resultat = $this->requeter($requete_insertion);
if (!$resultat) {
// TODO : ajouter un log -> impossible d'enregistrer le tag=$tag pour le cache id=$id");
Debug::printr("Impossible d'enregistrer le tag=$tag pour le cache id=$id");
}
return ($resultat) ? true : false;
}
 
/**
* Build the database structure
*
* @return false
*/
private function creerStructure() {
$this->requeter('DROP INDEX IF EXISTS tag_id_index');
$this->requeter('DROP INDEX IF EXISTS tag_name_index');
$this->requeter('DROP INDEX IF EXISTS cache_id_expire_index');
$this->requeter('DROP TABLE IF EXISTS version');
$this->requeter('DROP TABLE IF EXISTS cache');
$this->requeter('DROP TABLE IF EXISTS tag');
$this->requeter('CREATE TABLE version (num INTEGER PRIMARY KEY)');
$this->requeter('CREATE TABLE cache(id TEXT PRIMARY KEY, content BLOB, lastModified INTEGER, expire INTEGER)');
$this->requeter('CREATE TABLE tag (name TEXT, id TEXT)');
$this->requeter('CREATE INDEX tag_id_index ON tag(id)');
$this->requeter('CREATE INDEX tag_name_index ON tag(name)');
$this->requeter('CREATE INDEX cache_id_expire_index ON cache(id, expire)');
$this->requeter('INSERT INTO version (num) VALUES (1)');
}
 
/**
* Check if the database structure is ok (with the good version)
*
* @return boolean True if ok
*/
private function verifierBddStructureVersion() {
$version_ok = false;
$resultat = $this->requeter('SELECT num FROM version');
if ($resultat) {
$ligne = @sqlite_fetch_array($resultat);
if ($ligne) {
if (((int) $ligne['num']) == 1) {
$version_ok = true;
} else {
// TODO : ajouter un log CacheSqlite::verifierBddStructureVersion() : vielle version de la structure de la base de données de cache détectée => le cache est entrain d'être supprimé
}
}
}
return $version_ok;
}
 
/**
* Clean some cache records
*
* Available modes are :
* Zend_Cache::CLEANING_MODE_ALL (default) => remove all cache entries ($tags is not used)
* Zend_Cache::CLEANING_MODE_OLD => remove too old cache entries ($tags is not used)
* Zend_Cache::CLEANING_MODE_MATCHING_TAG => remove cache entries matching all given tags
* ($tags can be an array of strings or a single string)
* Zend_Cache::CLEANING_MODE_NOT_MATCHING_TAG => remove cache entries not {matching one of the given tags}
* ($tags can be an array of strings or a single string)
* Zend_Cache::CLEANING_MODE_MATCHING_ANY_TAG => remove cache entries matching any given tags
* ($tags can be an array of strings or a single string)
*
* @param string $mode Clean mode
* @param array $tags Array of tags
* @return boolean True if no problem
*/
private function nettoyerSqlite($mode = Cache::NETTOYAGE_MODE_TOUS, $tags = array()) {
$nettoyage_ok = false;
switch ($mode) {
case Cache::NETTOYAGE_MODE_TOUS:
$suppression_cache = $this->requeter('DELETE FROM cache');
$suppression_tag = $this->requeter('DELETE FROM tag');
$nettoyage_ok = $suppression_cache && $suppression_tag;
break;
case Cache::NETTOYAGE_MODE_EXPIRATION:
$mktime = time();
$suppression_tag = $this->requeter("DELETE FROM tag WHERE id IN (SELECT id FROM cache WHERE expire > 0 AND expire <= $mktime)");
$suppression_cache = $this->requeter("DELETE FROM cache WHERE expire > 0 AND expire <= $mktime");
return $suppression_tag && $suppression_cache;
break;
case Cache::NETTOYAGE_MODE_AVEC_LES_TAGS:
$ids = $this->getIdsAvecLesTags($tags);
$resultat = true;
foreach ($ids as $id) {
$resultat = $this->supprimer($id) && $resultat;
}
return $resultat;
break;
case Cache::NETTOYAGE_MODE_SANS_LES_TAGS:
$ids = $this->getIdsSansLesTags($tags);
$resultat = true;
foreach ($ids as $id) {
$resultat = $this->supprimer($id) && $resultat;
}
return $resultat;
break;
case Cache::NETTOYAGE_MODE_AVEC_UN_TAG:
$ids = $this->getIdsAvecUnTag($tags);
$resultat = true;
foreach ($ids as $id) {
$resultat = $this->supprimer($id) && $resultat;
}
return $resultat;
break;
default:
break;
}
return $nettoyage_ok;
}
 
/**
* Check if the database structure is ok (with the good version), if no : build it
*
* @throws Zend_Cache_Exception
* @return boolean True if ok
*/
private function verifierEtCreerStructureBdd() {
if (! $this->structure_ok) {
if (! $this->verifierBddStructureVersion()) {
$this->creerStructure();
if (! $this->verifierBddStructureVersion()) {
$e = "Impossible de construire la base de données de cache dans ".$this->options['stockage_chemin'];
trigger_error($e, E_USER_WARNING);
$this->structure_ok = false;
}
}
$this->structure_ok = true;
}
return $this->structure_ok;
}
 
}
?>
/tags/v0.3-aleaume/framework/Chronometre.php
New file
0,0 → 1,121
<?php
// declare(encoding='UTF-8');
/** Chronometre permet de stocker et d'afficher les temps d'éxécution de script.
*
* Cette classe permet de réaliser un ensemble de mesure de temps prises à différents endroits d'un script.
* Ces mesures peuvent ensuite être affichées au sein d'un tableau XHTML.
*
* @category PHP 5.2
* @package Framework
* @author Jean-Pascal MILCENT <jpm@tela-botanica.org>
* @copyright Copyright (c) 2010, Tela Botanica (accueil@tela-botanica.org)
* @license http://www.gnu.org/licenses/gpl.html Licence GNU-GPL-v3
* @license http://www.cecill.info/licences/Licence_CeCILL_V2-fr.txt Licence CECILL-v2
* @version $Id$
* @link /doc/framework/
*/
class Chronometre {
/*** Attributs : ***/
private static $pointArretNumero = 1;
private static $temps = array();
 
/** Accesseurs :
*
* @param string $cle la cle associée à un chronomètre particulier
*
* @return int le temps écoulé
*/
private static function getTemps($cle = null) {
$temps = (is_null($cle)) ? self::$temps : self::$temps[$cle];
return $temps;
}
 
/** Setteur pour la variable temps
*
* @param array() $moment ajoute des points de chronométrage au tableau _temps
*
* @return null
*/
private static function setTemps($cle, $moment) {
array_push(self::$temps, array($cle => $moment));
}
 
/*** Méthodes : ***/
/**
* Effectue un chronometrage.
* Vous pouvez indiquer le nom du point de chronométrage.
* Si vous n'indiquez rien, un nombre sera généré en débutant à 1.
*
* @param string le nom du point de chronométrage
* @return null
*/
public static function chrono($cle = null) {
$cle = ($cle == null) ? self::$pointArretNumero++ : $cle;
$moment = microtime();
self::setTemps($cle, $moment);
}
/**
* Permet d'afficher les temps d'éxécution de différentes parties d'un script.
*
* Cette fonction permet d'afficher un ensemble de mesure de temps prises à différents endroits d'un script.
* Ces mesures sont affichées au sein d'un tableau XHTML dont on peut controler l'indentation des balises.
* Pour un site en production, il suffit d'ajouter un style #chrono {display:none;} dans la css.
* De cette façon, le tableau ne s'affichera pas. Le webmaster lui pourra rajouter sa propre feuille de style
* affichant le tableau.
* Le développeur initial de cette fonction est Loic d'Anterroches.
* Elle a été modifiée par Jean-Pascal Milcent.
*
* @author Loic d'Anterroches
* @author Jean-Pascal MILCENT <jpm@tela-botanica.org>
* @param string l'eventuel nom du point de chronométrage de fin.
* @return string la chaine XHTML de mesure des temps.
*/
public static function afficherChrono($cle = null) {
// Création du chrono de fin
self::chrono();
 
$total_tps_ecoule = 0;
// Récupération de la premiére mesure
$tab_depart = self::getTemps(0);
list ($usec, $sec) = explode(' ', $tab_depart['depart']);
 
// Ce temps correspond à tps_fin
$tps_debut = ((float) $usec + (float) $sec);
$tbody = '';
foreach (self::getTemps() as $tab_temps) {
foreach ($tab_temps as $cle => $valeur) {
list ($usec, $sec) = explode(' ', $valeur);
$tps_fin = ((float) $usec + (float) $sec);
 
$tps_ecoule = abs($tps_fin - $tps_debut);
$total_tps_ecoule += $tps_ecoule;
$tps_debut = $tps_fin;
// Gestion affichage
$total_tps_ecoule_fmt = number_format($total_tps_ecoule, 3, ',', ' ');
$tps_ecoule_fmt = number_format($tps_ecoule, 3, ',', ' ');
$tbody .= '<tr><th>'.$cle.'</th><td>'.$tps_ecoule_fmt.'</td><td>'.$total_tps_ecoule_fmt.'</td></tr>'."\n";
}
}
$total_tps_ecoule_final_fmt = number_format($total_tps_ecoule, 3, ',', ' ');
// Début création de l'affichage
$sortie = '<table id="chrono" lang="fr" summary="Résultat duchronométrage du programme affichant la page actuelle.">'."\n".
'<caption>Chronométrage</caption>'."\n".
'<thead>'."\n".
' <tr><th>Action</th><th>Temps écoulé (en s.)</th><th>Cumul du temps écoulé (en s.)</th></tr>'."\n".
'</thead>'."\n".
'<tbody>'."\n".
$tbody.
'</tbody>'."\n".
'<tfoot>'."\n".
' <tr><th>Total du temps écoulé (en s.)</th><td colspan="2">'.$total_tps_ecoule_final_fmt.'</td></tr>'."\n".
'</tfoot>'."\n".
'</table>'."\n";
 
return $sortie;
}
}
?>
Property changes:
Added: svn:keywords
+Id Author Date Revision HeadURL
\ No newline at end of property
/tags/v0.3-aleaume/framework/Debug.php
New file
0,0 → 1,186
<?php
// declare(encoding='UTF-8');
/**
* Classe fournissant des fonctions de débogage équivalante à var_dump et print_r.
* L'affichage et l'utilisation de ces fonctions sont améliorés via cette classe.
* Cette classe est inspirée de la classe Zend_Debug.
*
* @category PHP 5.2
* @package Framework
* @author Jean-Pascal MILCENT <jpm@tela-botanica.org>
* @copyright Copyright (c) 2009, Tela Botanica (accueil@tela-botanica.org)
* @license http://www.gnu.org/licenses/gpl.html Licence GNU-GPL-v3
* @license http://www.cecill.info/licences/Licence_CeCILL_V2-fr.txt Licence CECILL-v2
* @version $Id$
* @link /doc/framework/
*/
class Debug {
/** Paramètrer le fichier de config avec "php:Debug::MODE_ECHO" : les messages sont affichés en utilisant echo au moment
* où ils sont déclenchés dans le code.*/
const MODE_ECHO = 'echo';
/** Paramètrer le fichier de config avec "php:Debug::MODE_NOTICE" : les message sont stockés par le gestionnaire
* d'exception sous forme d'erreur de type E_USER_NOTICE et sont renvoyés sur la sortie standard à la fin de l'execution
* du programme (via echo).*/
const MODE_NOTICE = 'e_user_notice';
/** Paramètrer le fichier de config avec "php:Debug::MODE_ENTETE_HTTP" : les message sont stockés par le gestionnaire
* d'exception sous forme d'erreur de type E_USER_NOTICE et sont renvoyés dans un entête HTTP (X_REST_DEBOGAGE_MESSAGES)
* à la fin de l'execution du programme.
* Surtout utile pour le Serveur REST. */
const MODE_ENTETE_HTTP = 'entete_http';
/** Mode de php (cli ou sapi) */
protected static $mode = null;
/** Tableau des noms des paramètres à définir dans le fichier de config car obligatoirement nécessaire à cette classe.*/
private static $parametres_obligatoires = array('debogage', 'debogage_mode');
/**
* Accesseur pour le mode
* @return string le mode de php
*/
public static function getMode() {
if (self::$mode === null) {
self::$mode = PHP_SAPI;
}
return self::$mode;
}
 
/**
* Equivalent de var_dump
* @param mixed $variable la variable à dumper
* @param string $mot_cle le mot cle à associer à la variable
* @param boolean $echo si true on affiche le résultat, si false on ne renvoie que la chaine sans l'afficher
* @return string la chaine à afficher representant le dump ou null si echo
*/
public static function dump($variable, $mot_cle = null, $echo = false) {
// var_dump de la variable dans un buffer et récupération de la sortie
ob_start();
var_dump($variable);
$sortie = ob_get_clean();
 
// Pré-traitement de la sortie
$sortie = preg_replace("/\]\=\>\n(\s+)/m", "] => ", $sortie);
 
// Traitement général du débogage
return self::traiterDebogage($mot_cle, $sortie, $echo);
}
 
/**
* Equivalent de print_r.
* @param mixed $variable la variable à afficher
* @param string $mot_cle le mot cle à associer
* @param boolean $echo faire un echo ou non
* @return string la chaine contenant la variable printée ou null si echo
*/
public static function printr($variable, $mot_cle = null, $echo = false) {
// Récupération de la sortie
$sortie = print_r($variable, true);
 
// Traitement général du débogage
return self::traiterDebogage($mot_cle, $sortie, $echo);
}
/**
* Affichage d'informations sur l'espace mémoire occupé par une variable
*
* @link http://forum.webmaster-rank.info/developpement-site/code-taille-memoire-d-une-variable-en-php-t1344.html
* @since 0.3
*
* @param mixed $var la variable dont on veut connaître l'empreinte mémoire.
* @param string $mot_cle le mot cle à associer
* @param boolean $echo faire un echo ou non
*
* @return string la chaine d'information sur l'espace mémoire occupé ou bien null si echo
*/
public static function tailleMemoireVar($var, $mot_cle = null, $echo = false) {
$memoire_depart = memory_get_usage();
$temp = unserialize(serialize($var));
$taille = memory_get_usage() - $memoire_depart;
$sortie = Fichier::convertirTaille($taille);
return self::traiterDebogage($mot_cle, $sortie, $echo);
}
 
/**
* Affichage d'informations sur l'espace mémoire occupé par le script PHP
*
* @link http://forum.webmaster-rank.info/developpement-site/code-taille-memoire-d-une-variable-en-php-t1344.html
* @since 0.3
*
* @param string $mot_cle le mot cle à associer
* @param boolean $echo faire un echo ou non
*
* @return string la chaine d'information sur l'espace mémoire occupé ou bien null si echo
*/
public static function tailleMemoireScript($mot_cle = null, $echo = false) {
$sortie = 'Mémoire -- Utilisé : '.Fichier::convertirTaille(memory_get_usage(false)).
' || Alloué : '.
Fichier::convertirTaille(memory_get_usage(true)) .
' || MAX Utilisé : '.
Fichier::convertirTaille(memory_get_peak_usage(false)).
' || MAX Alloué : '.
Fichier::convertirTaille(memory_get_peak_usage(true)).
' || MAX autorisé : '.
ini_get('memory_limit');
// Traitement général du débogage
return self::traiterDebogage($mot_cle, $sortie, $echo);
}
/**
* Traite une chaine de débogage et les mots clés associés
* @param string $mot_cle le mot à associer à la chaine
* @param string $sortie le chaine de debogage
* @param boolean $echo faire un echo du resultat ou non
* @return string la chaine de debogage formatée ou bien null si echo
*/
private static function traiterDebogage($mot_cle, $sortie, $echo) {
Config::verifierPresenceParametres(self::$parametres_obligatoires);
$debogage = Config::get('debogage');
$mode = Config::get('debogage_mode');
$mot_cle = self::formaterMotCle($mot_cle);
$sortie = self::traiterSortieSuivantMode($mot_cle, $sortie);
 
// Affichage et/ou retour
if ($debogage == true) {
if ($echo === true || $mode == self::MODE_ECHO) {
echo $sortie;
return null;
} else if ($mode == self::MODE_NOTICE || $mode == self::MODE_ENTETE_HTTP) {
trigger_error($sortie, E_USER_NOTICE);
return null;
} else {
return $sortie;
}
}
}
 
/**
* formate un mot clé donné
* @param string $mot_cle le mot clé à formaté
* @return string le mot clé formaté ou bien un chaine vide le mot clé est null ou vide
*/
private static function formaterMotCle($mot_cle) {
return ($mot_cle === null) ? '' : rtrim($mot_cle).' ';
}
 
/**
* traite la sortie de la chaine de débogage suivant le mode de php
* @param string $mot_cle le mot clé associé à la chaine
* @param string $sortie la chaine de débogage
* @return string la sortie formatée pour le mode en cours
*/
private static function traiterSortieSuivantMode($mot_cle, $sortie) {
$corps = $mot_cle.PHP_EOL.$sortie;
if (self::getMode() == 'cli') {
$sortie = PHP_EOL.$corps.PHP_EOL;
} else {
$sortie = '<pre>'.$corps.'</pre>';
}
return $sortie;
}
}
?>
Property changes:
Added: svn:keywords
+Id Author Date Revision HeadURL
\ No newline at end of property
/tags/v0.3-aleaume/framework/Bdd.php
New file
0,0 → 1,412
<?php
// declare(encoding='UTF-8');
/**
* Classe Bdd, d'accés au base de données.
* Elle fait office d'abstraction légère de base de données en utilisant diverses possibilités d'accès aux
* bases de données (PDO, mysql, mysqli, SQLite3).
* Les valeurs pour le paramètre 'bdd_abstraction' du fichier config.ini sont : pdo, mysql, mysqli, sqlite3
* Vous pouvez aussi utiliser : "php:Bdd::ABSTRACTION_PDO","php:Bdd::ABSTRACTION_MYSQL", "php:Bdd::ABSTRACTION_MYSQLI",
* "php:Bdd::ABSTRACTION_SQLITE3".
* Elle peut être étendue, pour ajouter le support d'autres bases de données où prendre en compte des méthodes spécifique à
* un type d'abstraction.
*
* @category php 5.2
* @package Framework
* @author Aurélien PERONNET <aurelien@tela-botanica.org>
* @author Jean-Pascal MILCENT <jpm@tela-botanica.org>
* @copyright Copyright (c) 2010, Tela Botanica (accueil@tela-botanica.org)
* @license http://www.cecill.info/licences/Licence_CeCILL_V2-fr.txt Licence CECILL
* @license http://www.gnu.org/licenses/gpl.html Licence GNU-GPL
* @version $Id$
* @link /doc/framework/
*/
class Bdd {
/** Constante stockant le squelette du message en cas d'erreur de requête sql. */
const ERREUR_REQUETE_TPL = 'Requête echec.\nFichier : %s.\nLigne : %s.\nMessage : %s.\nRequête : %s';
/** Constante stockant le squelette du message en cas d'erreur de connexion à la base de données. */
const ERREUR_CONNEXION_TPL = 'Erreur de connexion à la base de données, vérifiez les paramètres du fichier de configuration.\nMessage : %S.';
/** Constante stockant le squelette du message en cas d'erreur de sélection de la base de données. */
const ERREUR_SELECTION_BDD_TPL = 'Erreur de sélection de la base de données, vérifiez les paramètres du fichier de configuration.\nMessage : %S.';
/** Constante stockant le code pour l'abstraction de PDO. */
const ABSTRACTION_PDO = 'pdo';
/** Constante stockant le code pour l'abstraction de mysql. */
const ABSTRACTION_MYSQL = 'mysql';
/** Constante stockant le code pour l'abstraction de mysqli. */
const ABSTRACTION_MYSQLI = 'mysqli';
/** Constante stockant le code pour l'abstraction de SQLite3. */
const ABSTRACTION_SQLITE3 = 'sqlite3';
/** Constante stockant le code pour le mode tableau associatif des résultats des requêtes. */
const MODE_ASSOC = 'ASSOC';
/** Constante stockant le code pour le mode objet des résultats des requêtes. */
const MODE_OBJET = 'OBJECT';
/** Mode de fetch associatif */
protected $ASSOC = '';
/** Mode de fetch objet */
protected $OBJECT = '';
 
/** abstraction de base de données utilisée */
protected $abstraction;
/** DSN pour accéder à la base de données */
protected $dsn;
/** Type de base de données (mysql, mysqli, etc ...) */
protected $type;
/** Hote herbergeant la base de données */
protected $hote;
/** Nom de la base de données à laquelle le modèle doit se connecter */
protected $bdd_nom;
/** Nom d'utilisateur */
protected $utilisateur;
/** Mot de passe */
protected $pass;
 
/** Encodage de la base de données */
protected $encodage = null;
/** Connexion à la base de données */
protected $connexion = null;
 
/** Tableau des noms des paramètres à définir dans le fichier de config car obligatoirement nécessaire à cette classe.*/
protected $parametres_obligatoires = array('bdd_abstraction', 'bdd_protocole', 'bdd_serveur', 'bdd_nom',
'bdd_utilisateur', 'bdd_mot_de_passe', 'bdd_encodage');
/** Constructeur par défaut, appelé à l'initialisation. */
public function __construct() {
Config::verifierPresenceParametres($this->parametres_obligatoires);
$this->abstraction = strtolower(Config::get('bdd_abstraction'));
$this->type = Config::get('bdd_protocole');
$this->hote = Config::get('bdd_serveur');
$this->bdd_nom = Config::get('bdd_nom');
$this->utilisateur = Config::get('bdd_utilisateur');
$this->pass = Config::get('bdd_mot_de_passe');
$this->encodage = Config::get('bdd_encodage');
 
$this->dsn = $this->type.':dbname='.$this->bdd_nom.';host='.$this->hote;
$this->initialiserProtocole();
}
 
/** Initialise les constantes de classe à leur bonne valeur et déclenche une erreur si le protocole n'est pas bien défini. */
protected function initialiserProtocole() {
switch ($this->abstraction) {
case self::ABSTRACTION_PDO :
$this->ASSOC = PDO::FETCH_ASSOC;
$this->OBJECT = PDO::FETCH_CLASS;
break;
case self::ABSTRACTION_MYSQL :
$this->ASSOC = 'mysql_fetch_assoc';
$this->OBJECT = 'mysql_fetch_object';
break;
case self::ABSTRACTION_MYSQLI :
$this->ASSOC = 'fetch_assoc';
$this->OBJECT = 'fetch_object';
break;
case self::ABSTRACTION_SQLITE3 :
$this->ASSOC = 'SQLITE3_ASSOC';
$this->OBJECT = 'SQLITE3_OBJECT';
break;
default:
$m = "Erreur : l'abstraction '{$this->abstraction}' n'est pas prise en charge";
trigger_error($m, E_USER_WARNING);
}
}
/**
* Connection à la base de données en utilisant les informations fournies par
* le fichier de configuration.
* Cette méthode est private et final car elle n'a pas vocation a être appelée par l'utilisateur.
*/
protected function connecter() {
if ($this->connexion == null) {
switch ($this->abstraction) {
case self::ABSTRACTION_PDO :
try {
$this->connexion = new PDO($this->dsn, $this->utilisateur, $this->pass);
} catch (PDOException $e) {
$e = sprintf(self::ERREUR_CONNEXION_TPL, $e->getMessage());
trigger_error($e, E_USER_WARNING);
}
break;
case self::ABSTRACTION_MYSQL :
$this->connexion = mysql_connect($this->hote, $this->utilisateur, $this->pass);
if ($this->connexion !== false) {
$selection = mysql_select_db($this->bdd_nom, $this->connexion);
if ($selection === false) {
$e = sprintf(self::ERREUR_SELECTION_BDD_TPL, mysql_error());
trigger_error($e, E_USER_WARNING);
}
} else {
$e = sprintf(self::ERREUR_CONNEXION_TPL, mysql_error());
trigger_error($e, E_USER_WARNING);
}
break;
case self::ABSTRACTION_MYSQLI :
$this->connexion = @new mysqli($this->hote, $this->utilisateur, $this->pass, $this->bdd_nom);
if ($this->connexion->connect_errno) {
$e = sprintf(self::ERREUR_CONNEXION_TPL, $this->connexion->connect_error);
trigger_error($e, E_USER_WARNING);
}
break;
case self::ABSTRACTION_SQLITE3 :
// cas particulier de sqllite, on considère que le nom de la base de données correspond au fichier à ouvrir
$this->connexion = new SQLite3($this->bdd_nom);
if (!$this->connexion) {
$e = sprintf(self::ERREUR_CONNEXION_TPL, '');
trigger_error($e, E_USER_WARNING);
}
break;
default:
$this->connexion = null;
}
if ($this->encodage != null) {
$this->requete("SET names '".$this->encodage."'");
}
}
}
/**
* @deprecated changement de nom. Disparaîtra dans la version 0.4. Utiliser à la place : @see requeter
*/
final protected function requete($requete) {
return $this->requeter($requete, $mode);
}
/**
* Execute une requête et retourne le résultat tel que renvoyé par l'abstraction courante.
*
* @param string la requête à effectuer
* @return mixed un objet contenant le résultat de la requête
*/
public function requeter($requete) {
$this->connecter();
 
$retour = null;
switch ($this->abstraction) {
case self::ABSTRACTION_PDO :
try {
$retour = $this->connexion->query($requete);
} catch (PDOException $e) {
$m = sprintf(self::ERREUR_REQUETE_TPL, $e->getFile(), $e->getLine(), $e->getMessage(), $requete);
trigger_error($m, E_USER_WARNING);
}
break;
case self::ABSTRACTION_MYSQL :
$retour = mysql_query($requete, $this->connexion);
break;
case self::ABSTRACTION_MYSQLI :
$retour = $this->connexion->query($requete);
break;
case self::ABSTRACTION_SQLITE3 :
$retour = $this->connexion->exec($requete);
break;
}
return $retour;
}
/**
* @deprecated changement de nom. Disparaîtra dans la version 0.4. Utiliser à la place : @see recuperer
*/
final protected function requeteUn($requete, $mode = self::MODE_ASSOC) {
return $this->recuperer($requete, $mode);
}
/**
* Execute une requête et retourne le premier résultat sous forme de tableau (par défaut) ou d'objet.
* Les noms des champs de la base de données correspondent aux noms des clés du tableau ou aux noms des attributs de l'objet.
*
* @param string la requête à effectuer
* @param string le mode de retour ASSOC (Bdd::MODE_ASSOC) pour un tableau ou OBJECT (Bdd::MODE_OBJET) pour un objet.
* @return mixed un objet ou un tableau contenant le résultat de la requête
*/
public function recuperer($requete, $mode = self::MODE_ASSOC) {
$this->connecter();
 
$retour = null;
switch ($this->abstraction) {
case self::ABSTRACTION_PDO :
try {
$resultat = $this->connexion->query($requete);
$retour = $resultat->fetch($this->$mode);
} catch (PDOException $e) {
$m = sprintf(self::ERREUR_REQUETE_TPL, $e->getFile(), $e->getLine(), $e->getMessage(), $requete);
trigger_error($m, E_USER_WARNING);
}
break;
case self::ABSTRACTION_MYSQL :
$res = mysql_query($requete, $this->connexion);
$fonction_fetch = $this->$mode;
$retour = $fonction_fetch($res);
break;
case self::ABSTRACTION_MYSQLI :
$res = $this->connexion->query($requete);
$fonction_fetch = $this->$mode;
$retour = $res->$fonction_fetch();
break;
case self::ABSTRACTION_SQLITE3 :
$retour = $this->connexion->querySingle($requete);
break;
}
return $retour;
}
/**
* @deprecated changement de nom. Disparaîtra dans la version 0.4. Utiliser à la place : @see recupererTous
*/
final protected function requeteTous($requete, $mode = self::MODE_ASSOC) {
return $this->recupererTous($requete, $mode);
}
/**
* Execute une requête et retourne un tableau de résultats. Un résultat peut être présentés sous forme
* de tableau (par défaut) ou d'objet.
* Les noms des champs de la base de données correspondent aux noms des clés du tableau résultat ou
* aux noms des attributs de l'objet résultat.
*
* @param string la requête à effectuer
* @param string le mode de retour des résultats : ASSOC (Bdd::MODE_ASSOC) pour un tableau ou OBJECT (Bdd::MODE_OBJET) pour un objet.
* @return array un tableau contenant les résultats sous forme d'objets ou de tableau (par défaut).
*/
public function recupererTous($requete, $mode = self::MODE_ASSOC) {
$this->connecter();
$retour = null;
switch ($this->abstraction) {
case self::ABSTRACTION_PDO :
try {
$resultat = $this->connexion->query($requete);
if ($resultat !== false) {
$retour = $resultat->fetchAll($this->$mode);
} else {
$retour = false;
}
} catch (PDOException $e) {
$m = sprintf(self::ERREUR_REQUETE_TPL, $e->getFile(), $e->getLine(), $e->getMessage(), $requete);
trigger_error($m, E_USER_WARNING);
}
break;
case self::ABSTRACTION_MYSQL :
$resultat = mysql_query($requete, $this->connexion);
$fonction_fetch = $this->$mode;
while ($ligne = $fonction_fetch($resultat)) {
$retour[] = $ligne;
}
break;
case self::ABSTRACTION_MYSQLI :
$resultat = $this->connexion->query($requete);
$function_fetch = $this->$mode;
while ($ligne = $resultat->$function_fetch()) {
$retour[] = $ligne;
}
break;
case self::ABSTRACTION_SQLITE3 :
$resultat = $this->connexion->query($requete);
while ($ligne = $resultat->fetch_array($this->ASSOC)) {
if ($mode == self::MODE_OBJET) {
// Cas particulier de sqllite qui n'a pas de fonction fetch_object
$ligneObjet = new stdClass();
foreach ($ligne as $colonne => $valeur) {
$ligneObjet->$colonne = $valeur;
}
$ligne = $ligneObjet;
}
$retour[] = $ligne;
}
break;
}
return $retour;
}
 
/**
* Protège une chaine de caractères avant l'insertion dans la base de données (ajout de quotes ou guillemets).
* @param string la chaine à protéger
* @return string la chaine protégée
*/
public function proteger($chaine) {
$this->connecter();
 
$retour = $chaine;
switch ($this->abstraction) {
case self::ABSTRACTION_PDO :
$retour = $this->connexion->quote($chaine);
break;
case self::ABSTRACTION_MYSQL :
$retour = '"'.mysql_real_escape_string($chaine, $this->connexion).'"';
break;
case self::ABSTRACTION_MYSQLI :
$retour = '"'.$this->connexion->real_escape_string($chaine).'"';
break;
case self::ABSTRACTION_SQLITE3 :
$retour = $this->connexion->escapeString($chaine);
break;
}
return $retour;
}
 
/**
* Retourne l'identifiant de la dernière ligne insérée, ou la dernière valeur d'une séquence d'objets, dépendamment, dans
* le cas de PDO, du driver utilisé. Les méthodes utilisées pour retourner l'identifiant peuvent avoir des comportements
* différent. Consulter la documentation PHP correspondant à l'abstraction choisie avant de l'utiliser :
* @link(http://fr.php.net/manual/fr/pdo.lastinsertid.php, PDO::lastInsertId([ string $name = NULL ]))
* @link(http://php.net/manual/en/mysqli.insert-id.php, mysqli->insert_id())
* @link(http://fr.php.net/manual/fr/function.mysql-insert-id.php, mysql_insert_id())
* @link(http://fr.php.net/manual/fr/sqlite3.lastinsertrowid.php, SQLite3::lastInsertRowID())
* @param mixed un paramètre éventuel à transmettre (en fonction de l'abstraction de BDD utilisée).
* @return mixed le dernier identifiant de clé primaire ajouté dans la base de données (string ou int).
*/
public function recupererIdDernierAjout($parametres = null) {
$this->connecter();
 
$retour = $chaine;
switch ($this->abstraction) {
case self::ABSTRACTION_PDO :
$retour = $this->connexion->lastInsertId($parametres);
break;
case self::ABSTRACTION_MYSQL :
$retour = mysql_insert_id($this->connexion);
break;
case self::ABSTRACTION_MYSQLI :
$retour = $this->connexion->insert_id();
break;
case self::ABSTRACTION_SQLITE3 :
$retour = $this->connexion->lastInsertRowID();
break;
}
return $retour;
}
/**
* Destructeur de classe, se contente de fermer explicitement la connexion à la base de donnée.
*/
public function __destruct() {
switch ($this->abstraction) {
case self::ABSTRACTION_PDO :
$this->connexion = null;
break;
case self::ABSTRACTION_MYSQL :
return mysql_close($this->connexion);
break;
case self::ABSTRACTION_MYSQLI :
$this->connexion->close();
break;
case self::ABSTRACTION_SQLITE3 :
$this->connexion->close();
break;
}
}
}
?>
Property changes:
Added: svn:keywords
+Id Author Date Revision HeadURL
\ No newline at end of property
/tags/v0.3-aleaume/framework/RestServeur.php
New file
0,0 → 1,488
<?php
/**
* Classe principale gérant les services web de type (@link(REST, http://fr.wikipedia.org/wiki/Rest).
*
* Elle contient :
* - les constantes indiquant les différentes (@link(méthode HTTP, http://fr.wikipedia.org/wiki/Http) prises en compte.
* - les @link(codes HTTP des réponses, http://fr.wikipedia.org/wiki/Liste_des_codes_HTTP)
*
* Ce serveur REST accepte 4 types de méthodes HTTP : GET, PUT, POST, DELETE.
* GET et POST ne pose généralement pas de problème pour les clients HTTP mais ce n'est pas forcément le cas pour PUT et DELETE.
* Vous pouvez donc pour réaliser :
* - DELETE : utiliser la méthode POST avec action=DELETE dans le corps de la requête.
* - PUT : utiliser la méthode POST avec une url ne contenant aucune indication de ressource.
* Une autre solution consiste à utiliser n'importe quelle méthode et à ajouter l'entête "X_HTTP_METHOD_OVERRIDE" avec pour
* valeur le nom de la méthode que vous souhaitez utiliser. Exemple d'entête : "X_HTTP_METHOD_OVERRIDE: PUT".
* Exemple : <code>curl -v -v -H "X_HTTP_METHOD_OVERRIDE: DELETE" "http://www.mondomaine.org/services/apiVersion/[mon-service]/"</code>
* Cela fonctionne avec Apache.
*
* Les classes des services web doivent avoir un nom au format ChatMot "MonService" et être appelée dans l'url par le même nom
* en minuscule où les mots sont séparés par des tirets "mon-service".
*
* Paramètres liés dans config.ini :
* - serveur.baseURL : morceau de l'url pour appeler le serveur relative au domaine. Exemple : pour http://www.tela-botanica.org/mon_serveur/
* mettre : "/mon_serveur/"
* - serveur.baseAlternativeURL : sur le même principe que ci-dessus permet d'affecter une deuxième url (pour gérer des raccourci via htaccess)
*
* Encodage en entrée : utf8
* Encodage en sortie : utf8
*
* @category Php 5.2
* @package Framework
* @author Jean-Pascal MILCENT <jpm@tela-botanica.org>
* @copyright Copyright (c) 2010, Tela Botanica (accueil@tela-botanica.org)
* @license GPL v3 <http://www.gnu.org/licenses/gpl.txt>
* @license CECILL v2 <http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt>
* @since 0.3
* @version $Id$
* @link /doc/framework/
*/
// TODO : gerer les retours : dans ce controleur : code retour et envoi ...
class RestServeur {
/** Nom de la méthode appelée dans un service pour éxécuter une requête de type GET. */
const METHODE_GET = 'consulter';
/** Nom de la méthode appelée dans un service pour éxécuter une requête de type POST. */
const METHODE_POST = 'modifier';
/** Nom de la méthode appelée dans un service pour éxécuter une requête de type DELETE. */
const METHODE_DELETE = 'supprimer';
/** Nom de la méthode appelée dans un service pour éxécuter une requête de type PUT. */
const METHODE_PUT = 'ajouter';
/** Code HTTP 200 indiquant le succès de l'accès à un service web par la méthode GET.
* L'utiliser lors d'une requète de type GET (consulter) pour indiquer le succès de l'opération.
* Sera renvoyée par défaut par PHP. */
const HTTP_CODE_OK = '200';
/** Code HTTP 201 indiquant que l'accès à un service web est un succès et que la ressource a été créée ou modifié.
* L'utiliser lors d'une requète de type PUT (ajouter) ou POST (modifier) pour indiquer le succès de l'opération. */
const HTTP_CODE_CREATION_OK = '201';
/** Code HTTP 204 indique que l'accès à un service web est un succès et qu'il n'y a pas de contenu à renvoyer.
* L'utiliser lors d'une requète de type DELETE (supprimer) pour indiquer le succès de l'opération. */
const HTTP_CODE_SUPPRESSION_OK = '204';
/** Code HTTP 400 indique que les paramètres envoyés au service contiennent des erreurs.
* L'utiliser pour indiquer l'échec de l'accès au service. La réponse pourra contenir un message expliquant la source
* de l'erreur. */
const HTTP_CODE_MAUVAISE_REQUETE = '400';
/** Code HTTP 401 indiquant que l'accès à un service web est refusé car l'authentification (obligatoire) a échoué pour
* accéder à la ressource. */
const HTTP_CODE_ACCES_NON_AUTORISE = '401';
/** Code HTTP 404 indiquant que la ressource indiquée par l'url est introuvable. */
const HTTP_CODE_RESSOURCE_INTROUVABLE = '404';
/** Code HTTP 405 indiquant soit :
* - que le service web ne possède pas d'accès la ressource correspondant à la méthode HTTP employée.
* - que la méthode HTTP enployée n'est pas en accord avec la ressource indiquée par l'url. */
const HTTP_CODE_METHODE_NON_AUTORISE = '405';
/** Code d'erreur HTTP 409 indiquant qu'un conflit est survenu vis à vis de la ressource.
* Par exemple, essayer de créer deux fois la même ressource ou bien tenter de modifier une ressource qui a été modifiée par
* ailleurs. */
const HTTP_CODE_CONFLIT = '409';
/** Code HTTP 411 indiquant que des paramètres passés dans le contenu de la requête sont nécessaires au service. */
const HTTP_CODE_CONTENU_REQUIS = '411';
/** Code d'erreur HTTP 500 Internal Server Error.
* L'utiliser quand le serveur ou un service soulève une erreur ou une exception. */
const HTTP_CODE_ERREUR = '500';
/** Mettre à true pour activer l'affichage des messages d'erreurs et de débogage.
* @var boolean */
private static $debogageActivation = false;
/** Indiquer le mode de débogage à utiliser (@see Debug).
* @var string */
private static $debogageMode = '';
/** La méthode de la requête HTTP utilisée.
* @var string */
private $methode = 'GET';
 
/** Le contenu brut du corps de la requête HTTP (s'il y en a).
* @var array */
private $requeteDonnees = null;
/** Le contenu sous forme de tableau de paires clés-valeurs du corps de la requête HTTP (s'il y en a).
* @var array */
private $requeteDonneesParsees = null;
 
/** Version de l'API demandée.
* Ex. http://www.mondomaine.org/services/[apiVersion]/mon-service/
* @var mixed Généralement deux nombres séparés par un point. Ex. : 1.0
*/
private $apiVersion = null;
 
/** Nom du service demandé.
* Ex. http://www.mondomaine.org/services/apiVersion/[mon-service]/
* @var string par défaut vaut null.
*/
private $service = null;
/** Morceaux de l'url servant à préciser la ressource concerné pour le service demandé.
* Ex. http://www.mondomaine.org/services/apiVersion/mon-service/[maRessource/maSousResource...]
* @var array
*/
private $ressources = array();
/** Partie de l'url situé après le '?' servant à paramétrer le service demandé.
* Ex. http://www.mondomaine.org/services/apiVersion/mon-service?monParametre1=maValeur1&monParametre2=maValeur2
* @var array
*/
private $parametres = array();
/** Tableau contenant les paramètres de configuration du serveur.
* @var array
*/
private static $config = array();
/** Codes HTTP. */
private static $http10 = array(
self::HTTP_CODE_OK => 'OK',
self::HTTP_CODE_CREATION_OK => 'Created',
self::HTTP_CODE_SUPPRESSION_OK => 'No Content',
self::HTTP_CODE_MAUVAISE_REQUETE => 'Bad Request',
self::HTTP_CODE_ACCES_NON_AUTORISE => 'Unauthorized',
self::HTTP_CODE_RESSOURCE_INTROUVABLE => 'Not Found',
self::HTTP_CODE_METHODE_NON_AUTORISE => 'Method Not Allowed',
self::HTTP_CODE_CONFLIT => 'Conflict',
self::HTTP_CODE_CONTENU_REQUIS => 'Length Required',
self::HTTP_CODE_ERREUR => 'Internal Server Error'
);
/** Tableau des noms des paramètres à définir dans le fichier de config car obligatoirement nécessaire à cette classe.*/
private $parametres_obligatoires = array('debogage', 'debogage_mode', 'serveur.baseURL', 'chemin_modules');
 
/**
* Analyse les données envoyées au serveur, enregistre la méthode HTTP utilisée pour appeler le serveur et parse
* l'url appelée pour trouver le service demandé.
*/
public function __construct() {
Config::verifierPresenceParametres($this->parametres_obligatoires);
self::$debogageActivation = Config::get('debogage');
self::$debogageMode = Config::get('debogage_mode');
 
if (isset($_SERVER['REQUEST_URI']) && isset($_SERVER['REQUEST_METHOD']) && isset($_SERVER['QUERY_STRING'])) {
$this->initialiserMethode();
$this->initialiserRequeteDonnees();
$urlParts = $this->decouperUrlChemin();
$this->initialiserApiVersion(array_shift($urlParts));
$this->initialiserServiceNom(array_shift($urlParts));
$this->initialiserRessource($urlParts);
$this->initialiserParametres();
Debug::printr($this);
// Enregistrement en première position des autoload de la méthode gérant les classes des services
spl_autoload_register(array(get_class(), 'chargerClasse'));
} else {
$e = "La classe Serveur du TBFRamework nécessite, pour fonctionner, l'accès aux variables serveurs REQUEST_URI, REQUEST_METHOD et QUERY_STRING.";
trigger_error($e, E_USER_ERROR);
}
}
private function initialiserMethode() {
if (isset($_SERVER['HTTP_X_HTTP_METHOD_OVERRIDE']) && count(trim($_SERVER['HTTP_X_HTTP_METHOD_OVERRIDE'])) > 0) {
$this->methode = trim($_SERVER['X_HTTP_METHOD_OVERRIDE']);
} else {
$this->methode = $_SERVER['REQUEST_METHOD'];
}
}
private function initialiserRequeteDonnees() {
if (isset($_SERVER['CONTENT_LENGTH']) && $_SERVER['CONTENT_LENGTH'] > 0) {
$this->requeteDonnees = '';
$httpContent = fopen('php://input', 'r');
while ($data = fread($httpContent, 1024)) {
$this->requeteDonnees .= $data;
}
fclose($httpContent);
}
}
private function decouperUrlChemin() {
if (strlen($_SERVER['QUERY_STRING']) == 0) {
$tailleURL = strlen($_SERVER['REQUEST_URI']);
} else {
$tailleURL = -(strlen($_SERVER['QUERY_STRING']) + 1);
}
$urlChaine = '';
if (strpos($_SERVER['REQUEST_URI'], Config::get('serveur.baseURL')) !== false) {
$urlChaine = substr($_SERVER['REQUEST_URI'], strlen(Config::get('serveur.baseURL')), $tailleURL);
} else if (strpos($_SERVER['REQUEST_URI'], Config::get('serveur.baseAlternativeURL')) !== false) {
$urlChaine = substr($_SERVER['REQUEST_URI'], strlen(Config::get('serveur.baseAlternativeURL')), $tailleURL);
}
return explode('/', $urlChaine);
}
private function initialiserApiVersion($apiVersion) {
if (isset($apiVersion) && !empty($apiVersion)) {
$this->apiVersion = $apiVersion;
self::$config['chemins']['api'] = Config::get('chemin_modules').$this->apiVersion.DS;
} else {
$e = "Aucune version d'API n'a été spécifié dans l'url qui doit avoir la forme suivante http://www.mondomaine.org/services/apiVersion/monService/";
trigger_error($e, E_USER_ERROR);
}
}
private function initialiserServiceNom($serviceNom) {
if (isset($serviceNom) && !empty($serviceNom)) {
$this->service = $this->traiterNomService($serviceNom);
} else {
$e = "Aucun service n'a été spécifié dans l'url qui doit avoir la forme suivante http://www.mondomaine.org/services/apiVersion/monService/";
trigger_error($e, E_USER_ERROR);
}
}
private function traiterNomService($serviceNom) {
return str_replace(' ', '', ucwords(str_replace('-', ' ', strtolower($serviceNom))));
}
private function initialiserRessource($urlParts) {
if (is_array($urlParts) && count($urlParts) > 0) {
foreach ($urlParts as $ressource) {
// Ne pas utiliser empty() car valeur 0 acceptée
if ($ressource != '') {
$this->ressources[] = urldecode($ressource);
}
}
}
}
private function initialiserParametres() {
$this->nettoyerGet();
$this->parametres = $_GET;
}
private function nettoyerGet() {
// Pas besoin d'utiliser urldecode car déjà fait par php pour les clés et valeur de $_GET
if (isset($_GET) && count($_GET) > 0) {
foreach ($_GET as $cle => $valeur) {
$verifier = array('NULL', "\n", "\r", "\\", "'", '"', "\x00", "\x1a", ';');
$_GET[$cle] = strip_tags(str_replace($verifier, '', $valeur));
}
}
}
/**
* La méthode __autoload() charge dynamiquement les classes trouvées dans le code.
* Cette fonction est appelée par php5 quand il trouve une instanciation de classe dans le code.
*
*@param string le nom de la classe appelée.
*@return void le fichier contenant la classe doit être inclu par la fonction.
*/
public static function chargerClasse($classe) {
if (class_exists($classe)) {
return null;
}
 
$chemins = array('', self::$config['chemins']['api']);
foreach ($chemins as $chemin) {
$chemin = $chemin.$classe.'.php';
if (file_exists($chemin)) {
require_once $chemin;
}
}
}
/**
* Execute la requête.
*/
function executer() {
switch ($this->methode) {
case 'GET':
$this->get();
break;
case 'POST':
$this->post();
break;
case 'DELETE':
$this->delete();
break;
case 'PUT':
$this->put();
break;
default :
$e = "La méthode HTTP '{$this->methode}' n'est pas prise en compte par ce serveur REST.";
trigger_error($e, E_USER_WARNING);
}
// Affichage des exceptions et erreurs générées par les services
$this->gererErreurs();
}
 
/**
* Execute a GET request. A GET request fetches a list of resource when no resource name is given, a list of element
* when a resource name is given, or a resource element when a resource and resource unique identifier are given. It does not change the
* database contents.
*/
private function get() {
if ($this->service != null) {
$Service = new $this->service(self::$config);
if (method_exists($Service, self::METHODE_GET)) {
$methodeGet = self::METHODE_GET;
$Service->$methodeGet($this->ressources, $this->parametres);
} else {
$e = "Le service '{$this->service}' ne contient pas la méthode '".self::METHODE_GET."' nécessaire ".
"lors de l'appel du service via la méthode HTTP GET.";
trigger_error($e, E_USER_ERROR);
}
}
}
 
private function post() {
$paires = $this->parserDonneesRequete();
 
if (count($paires) != 0) {
if (isset($paires['action']) && $paires['action'] == 'DELETE') {// Altnative à l'utilisation de DELETE
$this->delete();
} else if (count($this->ressources) == 0) {// Altnative à l'utilisation de PUT
$this->add();
} else {
if ($this->service != null) {
$Service = new $this->service(self::$config);
if (method_exists($Service, self::METHODE_POST)) {
$methodePost = self::METHODE_POST;
if ($Service->$methodePost($this->ressources, $paires)) {
$this->envoyerEnteteStatutHttp(self::HTTP_CODE_CREATION_OK);
}
} else {
$e = "Le service '{$this->service}' ne contient pas la méthode '".self::METHODE_POST."' nécessaire ".
"lors de l'appel du service via la méthode HTTP POST.";
trigger_error($e, E_USER_ERROR);
}
}
}
} else {
$this->envoyerEnteteStatutHttp(self::HTTP_CODE_CONTENU_REQUIS);
}
}
 
private function put() {
$paires = $this->parserDonneesRequete();
 
if (count($paires) != 0) {
if ($this->service != null) {
$Service = new $this->service(self::$config);
if (method_exists($Service, self::METHODE_PUT)) {
$methodePut = self::METHODE_PUT;
if ($Service->$methodePut($this->ressources, $paires)) {
$this->envoyerEnteteStatutHttp(self::HTTP_CODE_CREATION_OK);
}
} else {
$e = "Le service '{$this->service}' ne contient pas la méthode '".self::METHODE_PUT."' nécessaire ".
"lors de l'appel du service via la méthode HTTP PUT (ou équivalant).";
trigger_error($e, E_USER_ERROR);
}
}
} else {
$this->envoyerEnteteStatutHttp(self::HTTP_CODE_CONTENU_REQUIS);
}
}
 
private function delete() {
if (count($this->ressources) != 0) {
if ($this->service != null) {
$Service = new $this->service(self::$config);
if (method_exists($Service, self::METHODE_DELETE)) {
$methodeDelete = self::METHODE_DELETE;
if ($Service->$methodeDelete($this->ressources, $paires)) {
$this->envoyerEnteteStatutHttp(self::HTTP_CODE_SUPPRESSION_OK);
} else {
$this->envoyerEnteteStatutHttp(self::HTTP_CODE_RESSOURCE_INTROUVABLE);
}
} else {
$e = "Le service '{$this->service}' ne contient pas la méthode '".self::METHODE_DELETE."' nécessaire ".
"lors de l'appel du service via la méthode HTTP DELETE (ou équivalant).";
trigger_error($e, E_USER_ERROR);
}
}
} else {
$this->envoyerEnteteStatutHttp(self::HTTP_CODE_MAUVAISE_REQUETE);
}
}
/**
* Parse les données contenu dans le corps de la requête HTTP (= POST) en :
* - décodant les clés et valeurs.
* - supprimant les espaces en début et fin des clés et des valeurs.
*
* @return array Tableau de paires clé et valeur.
*/
private function parserDonneesRequete() {
$donnees = array();
if ($this->$requeteDonneesParsees != null) {
$donnees = $this->$requeteDonneesParsees;
} else if ($this->requeteDonnees != null) {
$paires = explode('&', $this->requeteDonnees);
foreach ($paires as $paire) {
list($cle, $valeur) = explode('=', $paire);
$cle = (isset($cle)) ? trim(urldecode($cle)) : '';
$valeur = (isset($valeur)) ? trim(urldecode($valeur)) : '';
$donnees[$cle] = $valeur;
}
$this->$requeteDonneesParsees = $donnees;
}
return $donnees;
}
/**
* Envoyer un entête HTTP (version 1.0) de statut.
* Il remplacera systématiquement tout entête HTTP de statut précédement envoyé.
* @param int $code entier indiquant le code du statut de l'entête HTTP à envoyer.
*/
public static function envoyerEnteteStatutHttp($code) {
if (isset(self::$http10[$code])) {
$txt = self::$http10[$code];
header("HTTP/1.0 $code $txt", true);
}
}
/**
* Si des exceptions ou des erreurs sont soulevées par le serveur ou les services, elles sont gérées par cette méthode.
* Si nous avec des erreurs d'un type différent d'E_USER_NOTICE (réservé au débogage), elle sont renvoyées sur la sortie
* standard (via echo).
* Si seulement des erreurs de type E_USER_NOTICE, sont présentes, elle sont envoyées en fonction du contenu du paramètre de
* config "debogage_mode" :
* - Debug::MODE_ECHO : les messages sont affichés en utilisant echo au moment où ils sont déclenchés dans le code.
* - Debug::MODE_NOTICE : les message sont stockés par le gestionnaire d'exception sous forme d'erreur de type
* E_USER_NOTICE et sont renvoyés sur la sortie standard à la fin de l'execution du programme (via echo).
* - Debug::MODE_ENTETE_HTTP : les message sont stockés par le gestionnaire d'exception sous forme d'erreur de type
* E_USER_NOTICE et sont renvoyés dans un entête HTTP (X_REST_DEBOGAGE_MESSAGES) à la fin de l'execution du programme.
* - Autre valeur : les messages sont formatés puis retournés par la fonction de débogage (à vous de les afficher).
*/
public static function gererErreurs() {
if (self::$debogageActivation && GestionnaireException::getExceptionsNbre() > 0) {
$exceptionsTriees = GestionnaireException::getExceptionsTriees();
reset($exceptionsTriees);
$debogageSeulement = true;
if (! (count($exceptionsTriees) == 1 && key($exceptionsTriees) == E_USER_NOTICE)) {
self::envoyerEnteteStatutHttp(self::HTTP_CODE_ERREUR);
$debogageSeulement = false;
}
$exceptionsFormatees = array();
foreach ($exceptionsTriees as $exceptions) {
foreach ($exceptions as $e) {
if ($debogageSeulement && self::$debogageMode == Debug::MODE_ENTETE_HTTP) {
$exceptionsFormatees[] = GestionnaireException::formaterExceptionTxt($e);
} else {
echo GestionnaireException::formaterExceptionXhtml($e);
}
}
}
if ($debogageSeulement && self::$debogageMode == Debug::MODE_ENTETE_HTTP) {
header('X_REST_DEBOGAGE_MESSAGES: '.json_encode($exceptionsFormatees));
}
}
}
}
?>
/tags/v0.3-aleaume/framework/Controleur.php
New file
0,0 → 1,122
<?php
// declare(encoding='UTF-8');
/**
* Classe Controleur, coeur d'une application, c'est normalement la seule classe d'une application
* qui devrait être appelée de l'extérieur.
* Elle est abstraite donc doit obligatoirement être étendue.
*
* @category php 5.2
* @package Framework
* @author Aurélien PERONNET <aurelien@tela-botanica.org>
* @author Jean-Pascal MILCENT <jpm@tela-botanica.org>
* @copyright Copyright (c) 2009, Tela Botanica (accueil@tela-botanica.org)
* @license http://www.cecill.info/licences/Licence_CeCILL_V2-fr.txt Licence CECILL
* @license http://www.gnu.org/licenses/gpl.html Licence GNU-GPL
* @version $Id$
* @link /doc/framework/
*
*/
abstract class Controleur {
/** Variable statique indiquant que les tableaux _GET et _POST ont déjà été encodé au format de l'appli. */
private static $encodage = false;
 
/** Chemin de base vers les classes métiers de la partie Modèle de l'application. */
private $base_chemin_modele = null;
/** Chemin de base vers les fichiers squelette de la partie Vue de l'application. */
private $base_chemin_squelette = null;
/** Chemin de base vers les classes controleurs de la partie Controleur de l'application. */
private $base_chemin_controleur = null;
/** Objet URL contant l'url de la base de l'application. */
private $base_url_applicaton = null;
 
/** Tableau des noms des paramètres à définir dans le fichier de config car obligatoirement nécessaire à cette classe.*/
protected $parametres_obligatoires = array('chemin_modeles', 'chemin_squelettes', 'chemin_controleurs', 'base_url_application');
/**
* Constructeur par défaut
*/
public function __construct() {
Config::verifierPresenceParametres($this->parametres_obligatoires);
$this->base_chemin_modele = Config::get('chemin_modeles');
$this->base_chemin_squelette = Config::get('chemin_squelettes');
$this->base_chemin_controleur = Config::get('chemin_controleurs');
$this->base_url_application = new Url(Config::get('base_url_application'));
}
 
/**
* Charge un modele donné et le rend disponible sous la forme $this->nom_modele
*
* @param string $nom_modele le nom du modèle à  charger
*
* @return boolean false si le chargement a échoué, sinon true.
*/
final public function chargerModele($nom_modele) {
$sortie = true;
if (!isset($this->$nom_modele)) {
$modele = $this->getModele($nom_modele);
if ($modele !== false) {
$this->$nom_modele = new $nom_modele;
} else {
$sortie = false;
}
}
return $sortie;
}
 
/**
* Retourne un modele donné
*
* @param string $nom_modele le nom du fichier modèle à charger sans son extension
* @param String $ext l'extension du fichier du modèel (par défaut : ".php"
*
* @return mixed false si le chargement a échoué, sinon l'objet du modèle demandé.
*/
final protected function getModele($nom_modele, $ext = '.php') {
$sortie = false;
$chemin_modele = $this->registre->get('base_chemin_modele').$nom_modele.$ext;
if (file_exists($chemin_modele)) {
include_once $chemin_modele;
if (class_exists($nom_modele)) {
$sortie = new $nom_modele;
}
}
return $sortie;
}
 
/**
* Fonction prenant en paramètre le nom d'un squelette et un tableau associatif de données,
* en extrait les variables, charge le squelette et retourne le résultat des deux combinés.
*
* @param String $nom_squelette le nom du squelette sans son extension
* @param Array $donnees un tableau associatif contenant les variables a injecter dans la vue
* @param String $ext l'extension du fichier du squelette (par défaut : ".tpl.html"
*
* @return boolean false si la vue n'existe pas, sinon la chaine résultat.
*/
final protected function getVue($nom_squelette, &$donnees = array(), $ext = '.tpl.html') {
$donnees = $this->preTraiterDonnees($donnees);
$chemin_squelette = $this->base_chemin_squelette.$nom_squelette.$ext;
$sortie = SquelettePhp::analyser($chemin_squelette, $donnees);
 
return $sortie;
}
 
/**
* Fonction prenant en paramètre un tableau de données et effectuant un traitement dessus.
* Cette fonction est à surcharger dans les classes filles pour automatiser un traitement
* avant chaque chargement de vue.
*
* @param Array $donnees Le tableau de données à traiter
*
* @return Array $donnees Le tableau de données traité
*/
protected function preTraiterDonnees(&$donnees) {
return $donnees;
}
}
?>
Property changes:
Added: svn:keywords
+Id Author Date Revision HeadURL
\ No newline at end of property
/tags/v0.3-aleaume/framework/Framework.php
New file
0,0 → 1,241
<?php
// declare(encoding='UTF-8');
/**
* Classe de base du Framework :
* - fournissant des infos sur l'application,
* - paramétrant l'environnement de l'appli et du framework,
* - réalisant des traitements sur les variables globales ($_GET, $_POST, $_COOKIE...)
*
* Cette classe contient la fonction de chargement automatique de classes.
* Ce fichier doit toujours rester à la racine du framework car il initialise le chemin
* de l'application en se basant sur son propre emplacement.
*
* @category PHP 5.2
* @package Framework
* @author Jean-Pascal MILCENT <jpm@tela-botanica.org>
* @copyright Copyright (c) 2010, Tela Botanica (accueil@tela-botanica.org)
* @license http://www.gnu.org/licenses/gpl.html Licence GNU-GPL-v3
* @license http://www.cecill.info/licences/Licence_CeCILL_V2-fr.txt Licence CECILL-v2
* @version $Id$
* @since 0.3
* @link /doc/framework/
*/
class Framework {
 
/** Variable statique indiquant que les tableaux _GET et _POST ont déjà été encodé au format de l'appli. */
private static $encodage = false;
/** Tableau d'informations sur l'application */
private static $info = null;
/** Chemin de base de l'application */
private static $chemin = null;
 
/** Tableau des noms des paramètres à définir dans le fichier de config car obligatoirement nécessaire à cette classe.*/
private static $parametres_obligatoires = array('chemin_controleurs', 'chemin_modeles', 'chemin_bibliotheque',
'url_arg_separateur_entree', 'url_arg_separateur_sortie',
'encodage_sortie', 'encodage_appli');
/**
* Initialise l'environnement nécessaire au Framework : constantes globales, méthodeles autoload, séparateur d'arguments
* d'url.
* Cette méthode est appelée automatiquement suite à la définition du chemin de l'application via Application::setChemin().
*/
private static function initialiserEnvironnement() {
self::enregistrerMethodesAutoload();
self::initialiserUrl();
}
/**
* Initialise différentes classes du Framework nécessaires pour le fonctionnement de l'application.
* Ces classes sont ensuites controlées via les fichiers de config.ini.
* Elle est appelée automatiquement suite à la définition du chemin de l'application via Application::setChemin().
*/
private static function initialiserFramework() {
GestionnaireException::configurer();
//Log::configurer();
self::verifierEtReencoderTableauRequete();
}
/**
* Redéfinit des constantes globales utiles pour le Framework et les applis.
*/
private static function definirConstantesGlobales() {
/** Redéfinition de la constante DIRECTORY_SEPARATOR en version abrégée DS */
if (!defined('DS')) {
define('DS', DIRECTORY_SEPARATOR);
}
/** Redéfinition de la constante PATH_SEPARATOR en version abrégée PS */
if (!defined('PS')) {
define('PS', PATH_SEPARATOR);
}
}
private static function enregistrerMethodesAutoload() {
spl_autoload_register(array(get_class(), 'autoloadFw'));
// Vérification des paramètres de configuration obligatoire pour assurer le fonctionnement du Framework
Config::verifierPresenceParametres(self::$parametres_obligatoires);
// Initialisation du gestionnaire d'erreur avant toute chose
GestionnaireException::initialiser();
spl_autoload_register(array(get_class(), 'autoloadAppliDefaut'));
// Autoload défini par l'application
if (function_exists('__autoload')) {
spl_autoload_register('__autoload');
}
}
/**
* Autoload pour le Framework.
*/
private static function autoloadFw($nom_classe_fw) {
$dossiers_classes = array( dirname(__FILE__).DS,
dirname(__FILE__).DS.'utilitaires'.DS);
foreach ($dossiers_classes as $chemin) {
$fichier_a_tester = $chemin.$nom_classe_fw.'.php';
if (file_exists($fichier_a_tester)) {
include_once $fichier_a_tester;
return null;
}
}
}
/**
* Autoload par défaut pour l'application
*/
private static function autoloadAppliDefaut($nom_classe) {
$dossiers_classes = array( Config::get('chemin_controleurs'),
Config::get('chemin_modeles'),
Config::get('chemin_bibliotheque'));
foreach ($dossiers_classes as $chemin) {
$fichier_a_tester = $chemin.$nom_classe.'.php';
if (file_exists($fichier_a_tester)) {
include_once $fichier_a_tester;
return null;
}
}
}
/**
* Initialise le format des urls.
*/
private static function initialiserUrl() {
ini_set('arg_separator.input', Config::get('furl_arg_separateur_entree'));
ini_set('arg_separator.output', Config::get('url_arg_separateur_sortie'));
}
/**
* Permet d'indiquer le chemin de base de l'Application.
* Cette méthode doit obligatoirement être utilisée par l'application pour que le Framework fonctionne correctement.
* @param string $chemin_fichier_principal chemin de base
*/
public static function setCheminAppli($chemin_fichier_principal) {
if (self::$chemin === null) {
if (!file_exists($chemin_fichier_principal)) {
trigger_error("Le fichier indiqué n'existe pas. Utilisez __FILE__ dans la méthode setCheminAppli().", E_USER_ERROR);
} else {
self::definirConstantesGlobales();
self::$chemin = dirname($chemin_fichier_principal).DS;
self::initialiserEnvironnement();
self::initialiserFramework();
}
} else {
trigger_error("Le chemin de l'application a déjà été enregistré auprès du Framework", E_USER_WARNING);
}
}
 
/**
* accesseur pour le chemin
* @return string le chemin
*/
public static function getCheminAppli() {
return self::$chemin;
}
 
/** Le tableau des informations sur l'application possède les clés suivantes :
* - nom : nom de l'application
* - abr : abréviation de l'application
* - encodage : encodage de l'application (ISO-8859-15, UTF-8...)
*
* @param array $info tableau fournissant des informations sur l'application
* @return void
*/
public static function setInfoAppli($info) {
if (self::$info === null) {
self::$info = $info;
} else {
trigger_error("Le informations de l'application ont déjà été enregistrées auprès du Framework", E_USER_WARNING);
}
}
 
/**
* Accesseur pour le tableau d'infos sur l'application.
* @param string $cle la clé à laquelle on veut accéder
*/
public static function getInfoAppli($cle = null) {
if ($cle !== null) {
if (isset(self::$info[$cle])) {
return self::$info[$cle];
}
} else {
return self::$info;
}
}
/**
* Procédure vérifiant l'encodage des tableaux $_GET et $_POST et les transcodant dans l'encodage de l'application
*/
protected static function verifierEtReencoderTableauRequete() {
if (self::$encodage == false && Config::get('encodage_sortie') != Config::get('encodage_appli')) {
$_POST = self::encoderTableau($_POST, Config::get('encodage_appli'), Config::get('encodage_sortie'));
$_GET = self::encoderTableau($_GET, Config::get('encodage_appli'), Config::get('encodage_sortie'));
// Traitement des magic quotes
self::verifierEtTraiterSlashTableauRequete();
self::$encodage = true;
}
}
/**
* Procédure vérifiant l'activation des magic quotes et remplacant les slash dans les tableaux de requete
*/
private static function verifierEtTraiterSlashTableauRequete() {
if (get_magic_quotes_gpc()) {
if (!function_exists('nettoyerSlashProfond')) {
function nettoyerSlashProfond($valeur) {
return ( is_array($valeur) ) ? array_map('nettoyerSlashProfond', $valeur) : stripslashes($valeur);
}
}
$_GET = array_map('nettoyerSlashProfond', $_GET);
$_POST = array_map('nettoyerSlashProfond', $_POST);
$_COOKIE = array_map('nettoyerSlashProfond', $_COOKIE);
}
}
 
/**
* Fonction récursive transcodant toutes les valeurs d'un tableau de leur encodage d'entrée vers un encodage de sortie donné
* @param $tableau Array Un tableau de données à encoder
* @param $encodage_sortie String l'encodage vers lequel on doit transcoder
* @param $encodage_entree String l'encodage original des chaines du tableau (optionnel)
* @return Array Le tableau encodé dans l'encodage de sortie
*
*/
final static protected function encoderTableau($tableau, $encodage_sortie, $encodage_entree = null) {
if (is_array($tableau)) {
foreach ($tableau as $cle => $valeur) {
if (is_array($valeur)) {
$tableau[$cle] = self::encoderTableau($valeur, $encodage_sortie, $encodage_entree);
} else {
$tableau[$cle] = mb_convert_encoding($valeur, $encodage_sortie, $encodage_entree);
}
}
}
return $tableau;
}
}
?>
Property changes:
Added: svn:keywords
+Id Author Date Revision HeadURL
\ No newline at end of property
/tags/v0.3-aleaume/framework/CacheFichier.php
New file
0,0 → 1,871
<?php
class CacheFichier {
/**
* Options disponibles
*
* ====> (string) stockage_chemin :
* Chemin vers le dossier devant contenir l'arborescence du cache.
*
* =====> (boolean) fichier_verrou :
* - Active / Désactive le verrouillage des fichiers
* - Peut éviter la corruption du cache dans de mauvaises circonstances, mais cela ne fonctionne pas sur des serveur
* multithread et sur les systèmes de fichiers NFS par exemple.
*
* =====> (boolean) controle_lecture :
* - Activer / désactiver le contrôle de lecture
* - S'il est activé, une clé de contrôle est ajoutée dans le fichier de cache et cette clé est comparée avec celle calculée
* après la lecture.
*
* =====> (string) controle_lecture_type :
* Type de contrôle de lecture (seulement si le contrôle de lecture est activé).
* Les valeurs disponibles sont:
* - «md5» pour un contrôle md5 (le meilleur mais le plus lent)
* - «crc32» pour un contrôle de hachage crc32 (un peu moins sécurisé, mais plus rapide, un meilleur choix)
* - «adler32» pour un contrôle de hachage adler32 (excellent choix aussi, plus rapide que crc32)
* - «strlen» pour un test de longueur uniquement (le plus rapide)
*
* =====> (int) dossier_niveau :
* - Permet de réglez le nombre de niveau de sous-dossier que contiendra l'arborescence des dossiers du cache.
* 0 signifie "pas de sous-dossier pour le cache",
* 1 signifie "un niveau de sous-dossier",
* 2 signifie "deux niveaux" ...
* Cette option peut accélérer le cache seulement lorsque vous avez plusieurs centaines de fichiers de cache.
* Seuls des tests spécifiques peuvent vous aider à choisir la meilleure valeur possible pour vous.
* 1 ou 2 peut être est un bon début.
*
* =====> (int) dossier_umask :
* - Umask pour les sous-dossiers de l'arborescence du cache.
*
* =====> (string) fichier_prefixe :
* - préfixe pour les fichiers du cache
* - ATTENTION : faite vraiment attention avec cette option, car une valeur trop générique dans le dossier cache du système
* (comme /tmp) peut provoquer des catastrophes lors du nettoyage du cache.
*
* =====> (int) fichier_umask :
* - Umask pour les fichiers de cache
*
* =====> (int) metadonnees_max_taille :
* - taille maximum pour le tableau de métadonnées du cache (ne changer pas cette valeur sauf si vous savez ce que vous faite)
*
* @var array options disponibles
*/
protected $options = array(
'stockage_chemin' => null,
'fichier_verrou' => true,
'controle_lecture' => true,
'controle_lecture_type' => 'crc32',
'dossier_niveau' => 0,
'dossier_umask' => 0700,
'fichier_prefixe' => 'tbf',
'fichier_umask' => 0600,
'metadonnees_max_taille' => 100
);
 
/**
* Array of metadatas (each item is an associative array)
*
* @var array
*/
protected $metadonnees = array();
 
private $Cache = null;
/**
* Constructor
*
* @param array $options associative array of options
* @throws Zend_Cache_Exception
* @return void
*/
public function __construct(array $options = array(), Cache $cache) {
$this->Cache = $cache;
$this->initialiserOptionsParConfig();
$this->setOptions($options);
 
if (isset($this->options['prefixe_fichier'])) {
if (!preg_match('~^[a-zA-Z0-9_]+$~D', $this->options['prefixe_fichier'])) {
trigger_error("Préfixe de nom de fichier invalide : doit contenir seulement [a-zA-Z0-9_]", E_USER_WARNING);
}
}
if ($this->options['metadonnees_max_taille'] < 10) {
trigger_error("Taille du tableau des méta-données invalide, elle doit être > 10", E_USER_WARNING);
}
if (isset($options['dossier_umask']) && is_string($options['dossier_umask'])) {
// See #ZF-4422
$this->options['dossier_umask'] = octdec($this->options['dossier_umask']);
}
if (isset($options['fichier_umask']) && is_string($options['fichier_umask'])) {
// See #ZF-4422
$this->options['fichier_umask'] = octdec($this->options['fichier_umask']);
}
}
private function initialiserOptionsParConfig() {
while (list($nom, $valeur) = each($this->options)) {
if (Config::existe($nom)) {
$this->options[$nom] = Config::get($nom);
}
}
}
private function setOptions($options) {
while (list($nom, $valeur) = each($options)) {
if (!is_string($nom)) {
trigger_error("Nom d'option incorecte : $nom", E_USER_WARNING);
}
$nom = strtolower($nom);
if (array_key_exists($nom, $this->options)) {
$this->options[$nom] = $valeur;
}
}
}
 
public function setEmplacement($emplacement) {
if (!is_dir($emplacement)) {
trigger_error("L'emplacement doit être un dossier.", E_USER_WARNING);
}
if (!is_writable($emplacement)) {
trigger_error("Le dossier de stockage du cache n'est pas accessible en écriture", E_USER_WARNING);
}
$emplacement = rtrim(realpath($emplacement), '\\/').DS;
$this->options['stockage_chemin'] = $emplacement;
}
 
/**
* Test if a cache is available for the given id and (if yes) return it (false else)
*
* @param string $id cache id
* @param boolean $doNotTestCacheValidity if set to true, the cache validity won't be tested
* @return string|false cached datas
*/
public function charger($id, $ne_pas_tester_validiter_du_cache = false) {
$donnees = false;
if ($this->tester($id, $ne_pas_tester_validiter_du_cache)) {
$metadonnees = $this->getMetadonneesFichier($id);
$fichier = $this->getFichierNom($id);
$donnees = $this->getContenuFichier($fichier);
if ($this->options['controle_lecture']) {
$cle_secu_donnees = $this->genererCleSecu($donnees, $this->options['controle_lecture_type']);
$cle_secu_controle = $metadonnees['hash'];
if ($cle_secu_donnees != $cle_secu_controle) {
// Probléme détecté par le contrôle de lecture !
// TODO : loguer le pb de sécu
$this->supprimer($id);
$donnees = false;
}
}
}
return $donnees;
}
 
/**
* Teste si un enregistrement en cache est disponible ou pas (pour l'id passé en paramètre).
*
* @param string $id identifiant de cache.
* @return mixed false (le cache n'est pas disponible) ou timestamp (int) "de dernière modification" de l'enregistrement en cache
*/
public function tester($id) {
clearstatcache();
return $this->testerExistenceCache($id, false);
}
 
/**
* Save some string datas into a cache record
*
* Note : $data is always "string" (serialization is done by the
* core not by the backend)
*
* @param string $data Datas to cache
* @param string $id Cache id
* @param array $tags Array of strings, the cache record will be tagged by each string entry
* @param int $specificLifetime If != false, set a specific lifetime for this cache record (null => infinite lifetime)
* @return boolean true if no problem
*/
public function sauver($donnees, $id, $tags = array(), $duree_vie_specifique = false) {
clearstatcache();
$fichier = $this->getFichierNom($id);
$chemin = $this->getChemin($id);
$resultat = true;
if ($this->options['dossier_niveau'] > 0) {
if (!is_writable($chemin)) {
// maybe, we just have to build the directory structure
$this->lancerMkdirEtChmodRecursif($id);
}
if (!is_writable($chemin)) {
$resultat = false;
}
}
if ($resultat === true) {
if ($this->options['controle_lecture']) {
$cle_secu = $this->genererCleSecu($donnees, $this->options['controle_lecture_type']);
} else {
$cle_secu = '';
}
$metadonnees = array(
'hash' => $cle_secu,
'mtime' => time(),
'expiration' => $this->Cache->getTimestampExpiration($duree_vie_specifique),
'tags' => $tags
);
 
if (! $resultat = $this->setMetadonnees($id, $metadonnees)) {
// TODO : ajouter un log
} else {
$resultat = $this->setContenuFichier($fichier, $donnees);
}
}
return $resultat;
}
 
/**
* Remove a cache record
*
* @param string $id cache id
* @return boolean true if no problem
*/
public function supprimer($id) {
$fichier = $this->getFichierNom($id);
$suppression_fichier = $this->supprimerFichier($fichier);
$suppression_metadonnees = $this->supprimerMetadonnees($id);
return $suppression_metadonnees && $suppression_fichier;
}
 
/**
* Clean some cache records
*
* Available modes are :
* 'all' (default) => remove all cache entries ($tags is not used)
* 'old' => remove too old cache entries ($tags is not used)
* 'matchingTag' => remove cache entries matching all given tags
* ($tags can be an array of strings or a single string)
* 'notMatchingTag' => remove cache entries not matching one of the given tags
* ($tags can be an array of strings or a single string)
* 'matchingAnyTag' => remove cache entries matching any given tags
* ($tags can be an array of strings or a single string)
*
* @param string $mode clean mode
* @param tags array $tags array of tags
* @return boolean true if no problem
*/
public function nettoyer($mode = Cache::NETTOYAGE_MODE_TOUS, $tags = array()) {
// We use this protected method to hide the recursive stuff
clearstatcache();
return $this->nettoyerFichiers($this->options['stockage_chemin'], $mode, $tags);
}
 
/**
* Return an array of stored cache ids
*
* @return array array of stored cache ids (string)
*/
public function getIds() {
return $this->analyserCache($this->options['stockage_chemin'], 'ids', array());
}
 
/**
* Return an array of stored tags
*
* @return array array of stored tags (string)
*/
public function getTags() {
return $this->analyserCache($this->options['stockage_chemin'], 'tags', array());
}
 
/**
* Return an array of stored cache ids which match given tags
*
* In case of multiple tags, a logical AND is made between tags
*
* @param array $tags array of tags
* @return array array of matching cache ids (string)
*/
public function getIdsAvecLesTags($tags = array()) {
return $this->analyserCache($this->options['stockage_chemin'], 'matching', $tags);
}
 
/**
* Return an array of stored cache ids which don't match given tags
*
* In case of multiple tags, a logical OR is made between tags
*
* @param array $tags array of tags
* @return array array of not matching cache ids (string)
*/
public function getIdsSansLesTags($tags = array()) {
return $this->analyserCache($this->options['stockage_chemin'], 'notMatching', $tags);
}
 
/**
* Return an array of stored cache ids which match any given tags
*
* In case of multiple tags, a logical AND is made between tags
*
* @param array $tags array of tags
* @return array array of any matching cache ids (string)
*/
public function getIdsAvecUnTag($tags = array()) {
return $this->analyserCache($this->options['stockage_chemin'], 'matchingAny', $tags);
}
 
/**
* Return the filling percentage of the backend storage
*
* @throws Zend_Cache_Exception
* @return int integer between 0 and 100
*/
public function getPourcentageRemplissage() {
$libre = disk_free_space($this->options['stockage_chemin']);
$total = disk_total_space($this->options['stockage_chemin']);
$pourcentage = 0;
if ($total == 0) {
trigger_error("Impossible d'utiliser la fonction disk_total_space", E_USER_WARNING);
} else {
$pourcentage = ($libre >= $total) ? 100 : ((int) (100. * ($total - $libre) / $total));
}
return $pourcentage;
}
 
/**
* Return an array of metadatas for the given cache id
*
* The array must include these keys :
* - expire : the expire timestamp
* - tags : a string array of tags
* - mtime : timestamp of last modification time
*
* @param string $id cache id
* @return array array of metadatas (false if the cache id is not found)
*/
public function getMetadonnees($id) {
if ($metadonnees = $this->getMetadonneesFichier($id)) {
if (time() > $metadonnees['expiration']) {
$metadonnees = false;
} else {
$metadonnees = array(
'expiration' => $metadonnees['expiration'],
'tags' => $metadonnees['tags'],
'mtime' => $metadonnees['mtime']
);
}
}
return $metadonnees;
}
 
/**
* Give (if possible) an extra lifetime to the given cache id
*
* @param string $id cache id
* @param int $extraLifetime
* @return boolean true if ok
*/
public function ajouterSupplementDureeDeVie($id, $supplement_duree_de_vie) {
$augmentation = true;
if ($metadonnees = $this->getMetadonneesFichier($id)) {
if (time() > $metadonnees['expiration']) {
$augmentation = false;
} else {
$metadonnees_nouvelle = array(
'hash' => $metadonnees['hash'],
'mtime' => time(),
'expiration' => $metadonnees['expiration'] + $supplement_duree_de_vie,
'tags' => $metadonnees['tags']
);
$augmentation = $this->setMetadonnees($id, $metadonnees_nouvelle);
}
}
return $augmentation;
}
 
/**
* Get a metadatas record
*
* @param string $id Cache id
* @return array|false Associative array of metadatas
*/
protected function getMetadonneesFichier($id) {
$metadonnees = false;
if (isset($this->metadonnees[$id])) {
$metadonnees = $this->metadonnees[$id];
} else {
if ($metadonnees = $this->chargerMetadonnees($id)) {
$this->setMetadonnees($id, $metadonnees, false);
}
}
return $metadonnees;
}
 
/**
* Set a metadatas record
*
* @param string $id Cache id
* @param array $metadatas Associative array of metadatas
* @param boolean $save optional pass false to disable saving to file
* @return boolean True if no problem
*/
protected function setMetadonnees($id, $metadonnees, $sauvegarde = true) {
if (count($this->metadonnees) >= $this->options['metadonnees_max_taille']) {
$n = (int) ($this->options['metadonnees_max_taille'] / 10);
$this->metadonnees = array_slice($this->metadonnees, $n);
}
$resultat = true;
if ($sauvegarde) {
$resultat = $this->sauverMetadonnees($id, $metadonnees);
}
if ($resultat == true) {
$this->metadonnees[$id] = $metadonnees;
}
return $resultat;
}
 
/**
* Drop a metadata record
*
* @param string $id Cache id
* @return boolean True if no problem
*/
protected function supprimerMetadonnees($id) {
if (isset($this->metadonnees[$id])) {
unset($this->metadonnees[$id]);
}
$fichier_meta = $this->getNomFichierMeta($id);
return $this->supprimerFichier($fichier_meta);
}
 
/**
* Clear the metadatas array
*
* @return void
*/
protected function nettoyerMetadonnees() {
$this->metadonnees = array();
}
 
/**
* Load metadatas from disk
*
* @param string $id Cache id
* @return array|false Metadatas associative array
*/
protected function chargerMetadonnees($id) {
$fichier = $this->getNomFichierMeta($id);
if ($resultat = $this->getContenuFichier($fichier)) {
$resultat = @unserialize($resultat);
}
return $resultat;
}
 
/**
* Save metadatas to disk
*
* @param string $id Cache id
* @param array $metadatas Associative array
* @return boolean True if no problem
*/
protected function sauverMetadonnees($id, $metadonnees) {
$fichier = $this->getNomFichierMeta($id);
$resultat = $this->setContenuFichier($fichier, serialize($metadonnees));
return $resultat;
}
 
/**
* Make and return a file name (with path) for metadatas
*
* @param string $id Cache id
* @return string Metadatas file name (with path)
*/
protected function getNomFichierMeta($id) {
$chemin = $this->getChemin($id);
$fichier_nom = $this->transformaterIdEnNomFichier('interne-meta---'.$id);
return $chemin.$fichier_nom;
}
 
/**
* Check if the given filename is a metadatas one
*
* @param string $fileName File name
* @return boolean True if it's a metadatas one
*/
protected function etreFichierMeta($fichier_nom) {
$id = $this->transformerNomFichierEnId($fichier_nom);
return (substr($id, 0, 21) == 'interne-meta---') ? true : false;
}
 
/**
* Remove a file
*
* If we can't remove the file (because of locks or any problem), we will touch
* the file to invalidate it
*
* @param string $file Complete file path
* @return boolean True if ok
*/
protected function supprimerFichier($fichier) {
$resultat = false;
if (is_file($fichier)) {
if ($resultat = @unlink($fichier)) {
// TODO : ajouter un log
}
}
return $resultat;
}
 
/**
* Clean some cache records (protected method used for recursive stuff)
*
* Available modes are :
* Zend_Cache::CLEANING_MODE_ALL (default) => remove all cache entries ($tags is not used)
* Zend_Cache::CLEANING_MODE_OLD => remove too old cache entries ($tags is not used)
* Zend_Cache::CLEANING_MODE_MATCHING_TAG => remove cache entries matching all given tags
* ($tags can be an array of strings or a single string)
* Zend_Cache::CLEANING_MODE_NOT_MATCHING_TAG => remove cache entries not {matching one of the given tags}
* ($tags can be an array of strings or a single string)
* Zend_Cache::CLEANING_MODE_MATCHING_ANY_TAG => remove cache entries matching any given tags
* ($tags can be an array of strings or a single string)
*
* @param string $dir Directory to clean
* @param string $mode Clean mode
* @param array $tags Array of tags
* @throws Zend_Cache_Exception
* @return boolean True if no problem
*/
protected function nettoyerFichiers($dossier, $mode = Cache::NETTOYAGE_MODE_TOUS, $tags = array()) {
if (!is_dir($dossier)) {
return false;
}
$resultat = true;
$prefixe = $this->options['fichier_prefixe'];
$glob = @glob($dossier.$prefixe.'--*');
if ($glob === false) {
// On some systems it is impossible to distinguish between empty match and an error.
return true;
}
foreach ($glob as $fichier) {
if (is_file($fichier)) {
$fichier_nom = basename($fichier);
if ($this->etreFichierMeta($fichier_nom)) {
// Pour le mode Cache::NETTOYAGE_MODE_TOUS, nous essayons de tous supprimer même les vieux fichiers méta
if ($mode != Cache::NETTOYAGE_MODE_TOUS) {
continue;
}
}
$id = $this->transformerNomFichierEnId($fichier_nom);
$metadonnees = $this->getMetadonneesFichier($id);
if ($metadonnees === FALSE) {
$metadonnees = array('expiration' => 1, 'tags' => array());
}
switch ($mode) {
case Cache::NETTOYAGE_MODE_TOUS :
if ($resultat_suppression = $this->supprimer($id)) {
// Dans ce cas seulement, nous acception qu'il y ait un problème avec la suppresssion du fichier meta
$resultat_suppression = $this->supprimerFichier($fichier);
}
$resultat = $resultat && $resultat_suppression;
break;
case Cache::NETTOYAGE_MODE_EXPIRATION :
if (time() > $metadonnees['expiration']) {
$resultat = $this->supprimer($id) && $resultat;
}
break;
case Cache::NETTOYAGE_MODE_AVEC_LES_TAGS :
$correspondance = true;
foreach ($tags as $tag) {
if (!in_array($tag, $metadonnees['tags'])) {
$correspondance = false;
break;
}
}
if ($correspondance) {
$resultat = $this->supprimer($id) && $resultat;
}
break;
case Cache::NETTOYAGE_MODE_SANS_LES_TAGS :
$correspondance = false;
foreach ($tags as $tag) {
if (in_array($tag, $metadonnees['tags'])) {
$correspondance = true;
break;
}
}
if (!$correspondance) {
$resultat = $this->supprimer($id) && $resultat;
}
break;
case Cache::NETTOYAGE_MODE_AVEC_UN_TAG :
$correspondance = false;
foreach ($tags as $tag) {
if (in_array($tag, $metadonnees['tags'])) {
$correspondance = true;
break;
}
}
if ($correspondance) {
$resultat = $this->supprimer($id) && $resultat;
}
break;
default:
trigger_error("Mode de nettoyage invalide pour la méthode nettoyer()", E_USER_WARNING);
break;
}
}
if ((is_dir($fichier)) and ($this->options['dossier_niveau'] > 0)) {
// Appel récursif
$resultat = $this->nettoyerFichiers($fichier.DS, $mode, $tags) && $resultat;
if ($mode == Cache::NETTOYAGE_MODE_TOUS) {
// Si mode == Cache::NETTOYAGE_MODE_TOUS, nous essayons de supprimer la structure aussi
@rmdir($fichier);
}
}
}
return $resultat;
}
 
protected function analyserCache($dossier, $mode, $tags = array()) {
if (!is_dir($dossier)) {
return false;
}
$resultat = array();
$prefixe = $this->options['fichier_prefixe'];
$glob = @glob($dossier.$prefixe.'--*');
if ($glob === false) {
// On some systems it is impossible to distinguish between empty match and an error.
return array();
}
foreach ($glob as $fichier) {
if (is_file($fichier)) {
$nom_fichier = basename($fichier);
$id = $this->transformerNomFichierEnId($nom_fichier);
$metadonnees = $this->getMetadonneesFichier($id);
if ($metadonnees === FALSE) {
continue;
}
if (time() > $metadonnees['expiration']) {
continue;
}
switch ($mode) {
case 'ids':
$resultat[] = $id;
break;
case 'tags':
$resultat = array_unique(array_merge($resultat, $metadonnees['tags']));
break;
case 'matching':
$correspondance = true;
foreach ($tags as $tag) {
if (!in_array($tag, $metadonnees['tags'])) {
$correspondance = false;
break;
}
}
if ($correspondance) {
$resultat[] = $id;
}
break;
case 'notMatching':
$correspondance = false;
foreach ($tags as $tag) {
if (in_array($tag, $metadonnees['tags'])) {
$correspondance = true;
break;
}
}
if (!$correspondance) {
$resultat[] = $id;
}
break;
case 'matchingAny':
$correspondance = false;
foreach ($tags as $tag) {
if (in_array($tag, $metadonnees['tags'])) {
$correspondance = true;
break;
}
}
if ($correspondance) {
$resultat[] = $id;
}
break;
default:
trigger_error("Mode invalide pour la méthode analyserCache()", E_USER_WARNING);
break;
}
}
if ((is_dir($fichier)) and ($this->options['dossier_niveau'] > 0)) {
// Appel récursif
$resultat_analyse_recursive = $this->analyserCache($fichier.DS, $mode, $tags);
if ($resultat_analyse_recursive === false) {
// TODO : ajoute un log
} else {
$resultat = array_unique(array_merge($resultat, $resultat_analyse_recursive));
}
}
}
return array_unique($resultat);
}
 
/**
* Make a control key with the string containing datas
*
* @param string $data Data
* @param string $controlType Type of control 'md5', 'crc32' or 'strlen'
* @throws Zend_Cache_Exception
* @return string Control key
*/
protected function genererCleSecu($donnees, $type_de_controle) {
switch ($type_de_controle) {
case 'md5':
return md5($donnees);
case 'crc32':
return crc32($donnees);
case 'strlen':
return strlen($donnees);
case 'adler32':
return hash('adler32', $donnees);
default:
trigger_error("Fonction de génération de clé de sécurité introuvable : $type_de_controle", E_USER_WARNING);
}
}
 
/**
* Transform a cache id into a file name and return it
*
* @param string $id Cache id
* @return string File name
*/
protected function transformaterIdEnNomFichier($id) {
$prefixe = $this->options['fichier_prefixe'];
$resultat = $prefixe.'---'.$id;
return $resultat;
}
 
/**
* Make and return a file name (with path)
*
* @param string $id Cache id
* @return string File name (with path)
*/
protected function getFichierNom($id) {
$path = $this->getChemin($id);
$fileName = $this->transformaterIdEnNomFichier($id);
return $path . $fileName;
}
 
/**
* Return the complete directory path of a filename (including hashedDirectoryStructure)
*
* @param string $id Cache id
* @param boolean $decoupage if true, returns array of directory parts instead of single string
* @return string Complete directory path
*/
protected function getChemin($id, $decoupage = false) {
$morceaux = array();
$chemin = $this->options['stockage_chemin'];
$prefixe = $this->options['fichier_prefixe'];
if ($this->options['dossier_niveau'] > 0) {
$hash = hash('adler32', $id);
for ($i = 0 ; $i < $this->options['dossier_niveau'] ; $i++) {
$chemin .= $prefixe.'--'.substr($hash, 0, $i + 1).DS;
$morceaux[] = $chemin;
}
}
return ($decoupage) ? $morceaux : $chemin;
}
 
/**
* Make the directory strucuture for the given id
*
* @param string $id cache id
* @return boolean true
*/
protected function lancerMkdirEtChmodRecursif($id) {
$resultat = true;
if ($this->options['dossier_niveau'] > 0) {
$chemins = $this->getChemin($id, true);
foreach ($chemins as $chemin) {
if (!is_dir($chemin)) {
@mkdir($chemin, $this->options['dossier_umask']);
@chmod($chemin, $this->options['dossier_umask']); // see #ZF-320 (this line is required in some configurations)
}
}
}
return $resultat;
}
 
/**
* Test if the given cache id is available (and still valid as a cache record)
*
* @param string $id Cache id
* @param boolean $doNotTestCacheValidity If set to true, the cache validity won't be tested
* @return boolean|mixed false (a cache is not available) or "last modified" timestamp (int) of the available cache record
*/
protected function testerExistenceCache($id, $ne_pas_tester_validiter_du_cache) {
$resultat = false;
if ($metadonnees = $this->getMetadonnees($id)) {
if ($ne_pas_tester_validiter_du_cache || (time() <= $metadonnees['expiration'])) {
$resultat = $metadonnees['mtime'];
}
}
return $resultat;
}
 
/**
* Return the file content of the given file
*
* @param string $file File complete path
* @return string File content (or false if problem)
*/
protected function getContenuFichier($fichier) {
$resultat = false;
if (is_file($fichier)) {
$f = @fopen($fichier, 'rb');
if ($f) {
if ($this->options['fichier_verrou']) @flock($f, LOCK_SH);
$resultat = stream_get_contents($f);
if ($this->options['fichier_verrou']) @flock($f, LOCK_UN);
@fclose($f);
}
}
return $resultat;
}
 
/**
* Put the given string into the given file
*
* @param string $file File complete path
* @param string $string String to put in file
* @return boolean true if no problem
*/
protected function setContenuFichier($fichier, $chaine) {
$resultat = false;
$f = @fopen($fichier, 'ab+');
if ($f) {
if ($this->options['fichier_verrou']) @flock($f, LOCK_EX);
fseek($f, 0);
ftruncate($f, 0);
$tmp = @fwrite($f, $chaine);
if (!($tmp === FALSE)) {
$resultat = true;
}
@fclose($f);
}
@chmod($fichier, $this->options['fichier_umask']);
return $resultat;
}
 
/**
* Transform a file name into cache id and return it
*
* @param string $fileName File name
* @return string Cache id
*/
protected function transformerNomFichierEnId($nom_de_fichier) {
$prefixe = $this->options['fichier_prefixe'];
return preg_replace('~^' . $prefixe . '---(.*)$~', '$1', $nom_de_fichier);
}
}
?>
/tags/v0.3-aleaume/framework/RestService.php
New file
0,0 → 1,91
<?php
/**
* Classe principale gérant les services.
* Paramètres liés dans config.ini :
* - serveur.baseURL
*
* Encodage en entrée : utf8
* Encodage en sortie : utf8
*
* @category Php 5.2
* @package Framework
* @author Jean-Pascal MILCENT <jpm@tela-botanica.org>
* @copyright Copyright (c) 2010, Tela Botanica (accueil@tela-botanica.org)
* @license GPL v3 <http://www.gnu.org/licenses/gpl.txt>
* @license CECILL v2 <http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt>
* @since 0.3
* @version $Id$
* @link /doc/framework/
*/
abstract class RestService {
/** Objet de connection à la base de données. */
protected $bdd;
public function __construct($config) {
$this->config = $config;
// Connection à la base de données
$this->bdd = new Bdd();
}
/**
* Méthode appelée lors d'une requête HTTP de type GET.
*
* Si la consultation est un succès, le code statut HTTP retourné devrait être 200.
*
* @param array Morceaux de l'url servant à préciser la ressource concerné pour le service demandé.
* @param array Partie de l'url situé après le '?' servant à paramétrer le service demandé.
* @return string une chaine indiquant le succès de l'opération et les données demandées.
*/
public function consulter($ressources, $parametres) {
RestServeur::envoyerEnteteStatutHttp(RestServeur::HTTP_CODE_METHODE_NON_AUTORISE);
echo "Le service '".get_class($this)."' n'autorise pas la consultation.";
}
/**
* Méthode appelée lors d'une requête HTTP de type POST.
*
* La ressource à modifier est indiquée via l'url. Les données devant servir à la mise à jours sont passées dans le corps
* de la requête.
* Si la modification est un succès, le code statut HTTP retourné devrait être 201.
*
* @param array Morceaux de l'url servant à préciser la ressource concerné pour le service demandé.
* @param array les données transférées dans le corps de la requête devant servir à la modification.
* @return mixed une chaine indiquant le succès de l'opération ou rien.
*/
public function modifier($ressources, $requeteDonnees) {
RestServeur::envoyerEnteteStatutHttp(RestServeur::HTTP_CODE_METHODE_NON_AUTORISE);
echo "Le service '".get_class($this)."' n'autorise pas la modification.";
}
/**
* Méthode appelée lors d'une requête HTTP de type PUT.
*
* L'identifiant de la ressource à ajouter est indiqué via l'url si on le connait par avance. Sinon, il doit être créé par
* le service. Dans ce dernier cas, le nouvel identifiant devrait être renvoyé dans le corps de la réponse.
* Si l'ajout est un succès, le code statut HTTP retourné devrait être 201.
*
* @param array Morceaux de l'url servant à préciser la ressource concerné pour le service demandé.
* @param array les données transférées dans le corps de la requête devant servir à l'ajout.
* @return string l'identifiant créé.
*/
public function ajouter($ressources, $requeteDonnees) {
RestServeur::envoyerEnteteStatutHttp(RestServeur::HTTP_CODE_METHODE_NON_AUTORISE);
echo "Le service '".get_class($this)."' n'autorise pas la création.";
}
/**
* Méthode appelée lors d'une requête HTTP de type DELETE (ou POST avec action=DELETE dans le corps de la requete).
*
* Si la suppression est un succès, le code statut HTTP retourné devrait être 204.
*
* @param array Morceaux de l'url servant à préciser la ressource concerné pour le service demandé.
* @return mixed une chaine indiquant le succès de l'opération ou rien.
*/
public function supprimer($ressources) {
RestServeur::envoyerEnteteStatutHttp(RestServeur::HTTP_CODE_METHODE_NON_AUTORISE);
echo "Le service '".get_class($this)."' n'autorise pas la suppression.";
}
}
?>
/tags/v0.3-aleaume/framework/Url.php
New file
0,0 → 1,416
<?php
// declare(encoding='UTF-8');
/**
* Classe Url, gérant le découpage des paramètres, leurs modification etc...
* Traduction et conversion d'une classe (NET_Url2) issue de Pear
*
* @category Php 5.2
* @package Framework
* @author Christian SCHMIDT <schmidt@php.net> (Auteur classe originale)
* @author Aurélien PERONNET <aurelien@tela-botanica.org>
* @author Jean-Pascal MILCENT <jpm@tela-botanica.org>
* @copyright Copyright (c) 2010, Tela Botanica (accueil@tela-botanica.org)
* @license http://www.cecill.info/licences/Licence_CeCILL_V2-fr.txt Licence CECILL
* @license http://www.gnu.org/licenses/gpl.html Licence GNU-GPL
* @version SVN: $Id$
* @link /doc/framework/
*/
class Url {
 
/**
* Répresenter les tableaux dans les requêtes en utilisant la notation php []. Par défaut à true.
*/
const OPTION_UTILISER_CROCHETS = 'utiliser_crochets';
 
/**
* URL-encoder les clés des variables dans les requêtes. Par défaut à true.
*/
const OPTION_ENCODER_CLES = 'encoder_cles';
 
/**
* Séparateurs de variables lors du parsing de la requête. Chaque caractère
* est considéré comme un séparateur. Par défaut, spécifié par le paramêtre
* arg_separator.input dans php.ini (par défaut "&").
*/
const OPTION_SEPARATEUR_ENTREE = 'separateur_entree';
 
/**
* Séparateur de variables lors de la génération de la requête. Par défaut, spécifié
* par le paramètre arg_separator.output dans php.ini (par défaut "&").
*/
const OPTION_SEPARATEUR_SORTIE = 'separateur_sortie';
 
/**
* Options par défaut correspondant au comportement de php
* vis à vis de $_GET
*/
private $options = array(
self::OPTION_UTILISER_CROCHETS => true,
self::OPTION_ENCODER_CLES => true,
self::OPTION_SEPARATEUR_ENTREE => '&',
self::OPTION_SEPARATEUR_SORTIE => '&');
 
/**
* @var string|bool
*/
private $schema = false;
 
/**
* @var string|bool
*/
private $infoUtilisateur = false;
 
/**
* @var string|bool
*/
private $hote = false;
 
/**
* @var int|bool
*/
private $port = false;
 
/**
* @var string
*/
private $chemin = '';
 
/**
* @var string|bool
*/
private $requete = false;
 
/**
* @var string|bool
*/
private $fragment = false;
 
/** Tableau des noms des paramètres à définir dans le fichier de config car obligatoirement nécessaire à cette classe.*/
private $parametres_obligatoires = array('url_arg_separateur_entree', 'url_arg_separateur_sortie');
/**
* @param string $url une URL relative ou absolue
* @param array $options
*/
public function __construct($url, $options = null) {
Config::verifierPresenceParametres($this->parametres_obligatoires);
$this->setOption(self::OPTION_SEPARATEUR_ENTREE, Config::get('url_arg_separateur_entree'));
$this->setOption(self::OPTION_SEPARATEUR_SORTIE, Config::get('url_arg_separateur_sortie'));
if (is_array($options)) {
foreach ($options as $nomOption => $valeur) {
$this->setOption($nomOption);
}
}
 
if (preg_match('@^([a-z][a-z0-9.+-]*):@i', $url, $reg)) {
$this->schema = $reg[1];
$url = substr($url, strlen($reg[0]));
}
 
if (preg_match('@^//([^/#?]+)@', $url, $reg)) {
$this->setAutorite($reg[1]);
$url = substr($url, strlen($reg[0]));
}
 
$i = strcspn($url, '?#');
$this->chemin = substr($url, 0, $i);
$url = substr($url, $i);
 
if (preg_match('@^\?([^#]*)@', $url, $reg)) {
$this->requete = $reg[1];
$url = substr($url, strlen($reg[0]));
}
 
if ($url) {
$this->fragment = substr($url, 1);
}
}
/**
* Renvoie la valeur de l'option specifiée.
*
* @param string $nomOption Nom de l'option demandée
*
* @return mixed
*/
public function getOption($nomOption) {
return isset($this->options[$nomOption]) ? $this->options[$nomOption] : false;
}
 
/**
* Met à jour la valeur de l'option spécifiée.
*
* @param string $nomOption une des constantes commençant par self::OPTION_
* @param mixed $valeur valeur de l'option
*
* @return void
* @see self::OPTION_STRICTE
* @see self::OPTION_UTILISER_CROCHETS
* @see self::OPTION_ENCODER_CLES
*/
public function setOption($nomOption, $valeur) {
if (!array_key_exists($nomOption, $this->options)) {
return false;
}
$this->options[$nomOption] = $valeur;
}
 
/**
* Renvoie la partie autorité, i.e. [ infoUtilisateur "@" ] hote [ ":" port ], ou
* false si celle-ci est absente.
*
* @return string|bool
*/
private function getAutorite() {
if (!$this->hote) {
return false;
}
 
$autorite = '';
 
if ($this->infoUtilisateur !== false) {
$autorite .= $this->infoUtilisateur . '@';
}
 
$autorite .= $this->hote;
 
if ($this->port !== false) {
$autorite .= ':' . $this->port;
}
 
return $autorite;
}
 
/**
* @param string|false $autorite
*
* @return void
*/
private function setAutorite($autorite) {
$this->user = false;
$this->pass = false;
$this->hote = false;
$this->port = false;
if (preg_match('@^(([^\@]+)\@)?([^:]+)(:(\d*))?$@', $autorite, $reg)) {
if ($reg[1]) {
$this->infoUtilisateur = $reg[2];
}
 
$this->hote = $reg[3];
if (isset($reg[5])) {
$this->port = intval($reg[5]);
}
}
}
 
/**
* Renvoie vrai ou faux suivant que l'instance en cours représente une URL relative ou absolue.
*
* @return bool
*/
private function etreAbsolue() {
return (bool) $this->schema;
}
/**
* La suppression des segments à points est décrite dans la RFC 3986, section 5.2.4, e.g.
* "/foo/../bar/baz" => "/bar/baz"
*
* @param string $chemin un chemin
*
* @return string un chemin
*/
private static function supprimerSegmentsAPoints($chemin) {
$sortie = '';
 
// Assurons nous de ne pas nous retrouver piégés dans une boucle infinie due à un bug de cette méthode
$j = 0;
while ($chemin && $j++ < 100) {
if (substr($chemin, 0, 2) == './') {// Étape A
$chemin = substr($chemin, 2);
} else if (substr($chemin, 0, 3) == '../') {
$chemin = substr($chemin, 3);
} else if (substr($chemin, 0, 3) == '/./' || $chemin == '/.') {// Étape B
$chemin = '/' . substr($chemin, 3);
} else if (substr($chemin, 0, 4) == '/../' || $chemin == '/..') {// Étape C
$chemin = '/' . substr($chemin, 4);
$i = strrpos($sortie, '/');
$sortie = $i === false ? '' : substr($sortie, 0, $i);
} else if ($chemin == '.' || $chemin == '..') {// Étape D
$chemin = '';
} else {// Étape E
$i = strpos($chemin, '/');
if ($i === 0) {
$i = strpos($chemin, '/', 1);
}
if ($i === false) {
$i = strlen($chemin);
}
$sortie .= substr($chemin, 0, $i);
$chemin = substr($chemin, $i);
}
}
 
return $sortie;
}
/**
* (Re-)Création de la partie requête de l'URL à partir des données du tableau (passé en paramètre).
*
* @param array (nom => valeur) tableau de clés & valeurs pour la partie requête de l'url.
* @return void (Re-)Création de la partie requête.
*/
public function setRequete(Array $parametres) {
if (!$parametres) {
$this->requete = false;
} else {
foreach ($parametres as $nom => $valeur) {
if ($this->getOption(self::OPTION_ENCODER_CLES)) {
$nom = rawurlencode($nom);
}
 
if (is_array($valeur)) {
foreach ($valeur as $k => $v) {
if ($this->getOption(self::OPTION_UTILISER_CROCHETS)) {
$parties[] = sprintf('%s[%s]=%s', $nom, $k, $v);
} else {
$parties[] = $nom.'='.$v;
}
}
} else if (!is_null($valeur)) {
$parties[] = $nom . '=' . $valeur;
} else {
$parties[] = $nom;
}
}
$this->requete = implode($this->getOption(self::OPTION_SEPARATEUR_SORTIE), $parties);
}
}
/**
* (Re-)Création de la partie requête de l'URL à partir de la fusion du tableau (passé en paramètre) et
* les valeurs présentes dans $_GET.
*
* @param array (nom => valeur) tableau de clés & valeurs pour la partie requête de l'url.
* @return void (Re-)Création de la partie requête.
*/
public function fusionnerRequete(Array $parametres) {
if ($parametres) {
$requete = $parametres + $_GET;
$this->setRequete($requete);
}
}
 
/**
* Normalise les données de l'instance d'Url faisant appel à cette méthode.
*
* @return void l'instance d'Url courrante est normalisée.
*/
public function normaliser() {
// Voir RFC 3886, section 6
 
// les cchémas sont insesibles à la casse
if ($this->schema) {
$this->schema = strtolower($this->schema);
}
 
// les noms d'hotes sont insensibles à la casse
if ($this->hote) {
$this->hote = strtolower($this->hote);
}
 
// Supprimer le numéro de port par défaut pour les schemas connus (RFC 3986, section 6.2.3)
if ($this->port && $this->schema && $this->port == getservbyname($this->schema, 'tcp')) {
$this->port = false;
}
 
// normalisation dans le cas d'un encodage avec %XX pourcentage (RFC 3986, section 6.2.2.1)
foreach (array('infoUtilisateur', 'hote', 'chemin') as $partie) {
if ($this->$partie) {
$this->$partie = preg_replace('/%[0-9a-f]{2}/ie', 'strtoupper("\0")', $this->$partie);
}
}
 
// normalisation des segments du chemin (RFC 3986, section 6.2.2.3)
$this->chemin = self::supprimerSegmentsAPoints($this->chemin);
 
// normalisation basée sur le schéma (RFC 3986, section 6.2.3)
if ($this->hote && !$this->chemin) {
$this->chemin = '/';
}
}
 
/**
* Renvoie une instance d'objet Url representant l'URL canonique du script PHP en cours d'éxécution.
*
* @return Url retourne un objet Url ou null en cas d'erreur.
*/
public static function getCanonique() {
$url = null;
if (!isset($_SERVER['REQUEST_METHOD'])) {
trigger_error("Le script n'a pas été appellé à travers un serveur web", E_USER_WARNING);
} else {
// À partir d'une URL relative
$url = new self($_SERVER['PHP_SELF']);
$url->schema = isset($_SERVER['HTTPS']) ? 'https' : 'http';
$url->hote = $_SERVER['SERVER_NAME'];
$port = intval($_SERVER['SERVER_PORT']);
if ($url->schema == 'http' && $port != 80 || $url->schema == 'https' && $port != 443) {
$url->port = $port;
}
}
return $url;
}
 
/**
* Renvoie une instance d'objet Url representant l'URL utilisée pour récupérer la requête en cours.
*
* @return Url retourne un objet Url ou null en cas d'erreur.
*/
public static function getDemande() {
$url = null;
if (!isset($_SERVER['REQUEST_METHOD'])) {
trigger_error("Le script n'a pas été appellé à travers un serveur web", E_USER_WARNING);
} else {
// On part d'une URL relative
$url = new self($_SERVER['REQUEST_URI']);
$url->schema = isset($_SERVER['HTTPS']) ? 'https' : 'http';
// On met à jour les valeurs de l'hôte et si possible du port
$url->setAutorite($_SERVER['HTTP_hote']);
}
return $url;
}
 
/**
* Renvoie un représentation sous forme de chaine de l'URL.
*
* @return string l'url
*/
public function getURL() {
// Voir RFC 3986, section 5.3
$url = '';
if ($this->schema !== false) {
$url .= $this->schema . ':';
}
 
$autorite = $this->getAutorite();
if ($autorite !== false) {
$url .= '//' . $autorite;
}
$url .= $this->chemin;
 
if ($this->requete !== false) {
$url .= '?' . $this->requete;
}
 
if ($this->fragment !== false) {
$url .= '#' . $this->fragment;
}
 
return $url;
}
}
?>
Property changes:
Added: svn:keywords
+Id Author Date Revision HeadURL
\ No newline at end of property
/tags/v0.3-aleaume/framework/Cache.php
New file
0,0 → 1,507
<?php
// declare(encoding='UTF-8');
/**
* Classe Cache permettant de mettre en cache des données.
* Basée sur les principes de Zend_Cache (Copyright (c) 2005-2010, Zend Technologies USA, Inc. All rights reserved.)
*
* @category php 5.2
* @package Framework
* @author Jean-Pascal MILCENT <jpm@tela-botanica.org>
* @copyright Copyright (c) 2010, Tela Botanica (accueil@tela-botanica.org)
* @license http://framework.zend.com/license/new-bsd Licence New BSD
* @license http://www.cecill.info/licences/Licence_CeCILL_V2-fr.txt Licence CECILL
* @license http://www.gnu.org/licenses/gpl.html Licence GNU-GPL
* @version $Id$
* @link /doc/framework/
*/
class Cache {
/** Socke les enregistrements du cache dans des fichiers textes de façon extremement simple. */
const STOCKAGE_MODE_SIMPLE = "FichierSimple";
/** Socke les enregistrements du cache dans des fichiers textes. */
const STOCKAGE_MODE_FICHIER = "Fichier";
/** Socke les enregistrements du cache dans une base de données SQLite. */
const STOCKAGE_MODE_SQLITE = "Sqlite";
/** 'tous' (par défaut) : supprime tous les enregistrements. */
const NETTOYAGE_MODE_TOUS = "tous";
/** 'expiration' : supprime tous les enregistrements dont la date d'expériration est dépassée. */
const NETTOYAGE_MODE_EXPIRATION = "expiration";
/** 'avecLesTags' : supprime tous les enregistrements contenant tous les tags indiqués. */
const NETTOYAGE_MODE_AVEC_LES_TAGS = "avecLesTags";
/** 'sansLesTags' : supprime tous les enregistrements contenant aucun des tags indiqués. */
const NETTOYAGE_MODE_SANS_LES_TAGS = "sansLesTags";
/** 'avecUnTag' : supprime tous les enregistrements contenant au moins un des tags indiqués. */
const NETTOYAGE_MODE_AVEC_UN_TAG = "avecUnTag";
/**
* Dernier identifiant de cache utilisé.
*
* @var string $dernier_id
*/
private $dernier_id = null;
/**
* Les options disponibles pour le cache :
* ====> (string) stockage_mode :
* Indique le mode de stockage du cache à utiliser parmis :
* - Cache::STOCKAGE_MODE_FICHIER : sous forme d'une arborescence de fichiers et dossier
* - Cache::STOCKAGE_MODE_SQLITE : sous forme d'une base de données SQLite
*
* ====> (string) stockage_chemin :
* Chemin vers :
* - Cache::STOCKAGE_MODE_FICHIER : le dossier devant contenir l'arborescence.
* - Cache::STOCKAGE_MODE_SQLITE : le fichier contenant la base SQLite.
*
* ====> (boolean) controle_ecriture :
* - Active / Désactive le controle d'écriture (le cache est lue jute après l'écriture du fichier pour détecter sa corruption)
* - Activer le controle d'écriture ralentira légèrement l'écriture du fichier de cache mais pas sa lecture
* Le controle d'écriture peut détecter la corruption de fichier mais ce n'est pas un système de controle parfait.
*
* ====> (boolean) mise_en_cache :
* - Active / Désactive la mise en cache
* (peut être très utile pour le débogage des scripts utilisant le cache
*
* =====> (string) cache_id_prefixe :
* - préfixe pour les identifiant de cache ( = espace de nom)
*
* ====> (boolean) serialisation_auto :
* - Active / Désactive la sérialisation automatique
* - Peut être utilisé pour sauver directement des données qui ne sont pas des chaines (mais c'est plus lent)
*
* ====> (int) nettoyage_auto :
* - Désactive / Régler le processus de nettoyage automatique
* - Le processus de nettoyage automatiques détruit les fichier trop vieux (pour la durée de vie donnée)
* quand un nouveau fichier de cache est écrit :
* 0 => pas de nettoyage automatique
* 1 => nettoyage automatique systématique
* x (integer) > 1 => nettoyage automatique toutes les 1 fois (au hasard) sur x écriture de fichier de cache
*
* ====> (int) duree_de_vie :
* - Durée de vie du cache (en secondes)
* - Si null, le cache est valide indéfiniment.
*
* @var array $options les options disponibles pour le cache .
*/
protected $options = array(
'stockage_mode' => self::STOCKAGE_MODE_FICHIER,
'stockage_chemin' => null,
'controle_ecriture' => true,
'mise_en_cache' => true,
'cache_id_prefixe' => null,
'serialisation_auto' => false,
'nettoyage_auto' => 10,
'duree_de_vie' => 3600,
);
protected $stockage = null;
public function __construct($options = array(), $options_stockage = array()) {
$this->initialiserOptionsParConfig();
$this->setOptions($options);
if ($this->options['stockage_mode'] == self::STOCKAGE_MODE_FICHIER) {
$this->stockage = new CacheFichier($options_stockage, $this);
$this->stockage->setEmplacement($this->options['stockage_chemin']);
} else if ($this->options['stockage_mode'] == self::STOCKAGE_MODE_SQLITE) {
$this->stockage = new CacheSqlite($options_stockage, $this);
$this->stockage->setEmplacement($this->options['stockage_chemin']);
} else {
trigger_error("Ce mode de stockage n'existe pas ou ne supporte pas la création par le constructeur", E_USER_WARNING);
}
}
private function initialiserOptionsParConfig() {
while (list($nom, $valeur) = each($this->options)) {
if (Config::existe($nom)) {
$this->options[$nom] = Config::get($nom);
}
}
}
private function setOptions($options) {
while (list($nom, $valeur) = each($options)) {
if (!is_string($nom)) {
trigger_error("Nom d'option incorecte : $nom", E_USER_WARNING);
}
$nom = strtolower($nom);
if (array_key_exists($nom, $this->options)) {
$this->options[$nom] = $valeur;
}
}
}
/**
* Permet de (re-)définir l'emplacement pour le stockage du cache.
* En fonction du mode de stockage utilisé , l'emplacement indiqué correspondra au chemin du :
* - dossier où stocker les fichiers pour le mode "fichier".
* - fichier de la base de données pour le mode "sqlite".
* @param string $emplacement chemin vers dossier (Cache::STOCKAGE_MODE_FICHIER) ou fichier base Sqlite (Cache::STOCKAGE_MODE_SQLITE)
* @return void
*/
public function setEmplacement($emplacement) {
if ($emplacement != null) {
$this->executerMethodeStockage('setEmplacement', array($emplacement));
} else {
trigger_error("L'emplacement ne peut pas être null.", E_USER_WARNING);
}
}
public static function fabriquer($mode, $options = array()) {
if ($mode == self::STOCKAGE_MODE_SIMPLE) {
return new CacheSimple($options);
} else {
trigger_error("Le mode '$mode' de stockage n'existe pas ou ne supporte pas la création par fabrique", E_USER_WARNING);
}
return false;
}
/**
* Teste si un cache est disponible pour l'identifiant donné et (si oui) le retourne (false dans le cas contraire)
*
* @param string $id Identifiant de cache.
* @param boolean $ne_pas_tester_validiter_du_cache Si mis à true, la validité du cache n'est pas testée
* @return mixed|false Cached datas
*/
public function charger($id, $ne_pas_tester_validiter_du_cache = false) {
$donnees = false;
if ($this->options['mise_en_cache'] === true) {
$id = $this->prefixerId($id);
$this->dernier_id = $id;
self::validerIdOuTag($id);
$donnees = $this->executerMethodeStockage('charger', array($id, $ne_pas_tester_validiter_du_cache));
$donnees = $this->deserialiserAutomatiquement($donnees);
}
return $donnees;
}
/**
* Test if a cache is available for the given id
*
* @param string $id Cache id
* @return int|false Last modified time of cache entry if it is available, false otherwise
*/
public function tester($id) {
$resultat = false;
if ($this->options['mise_en_cache'] === true) {
$id = $this->prefixerId($id);
self::validerIdOuTag($id);
$this->dernier_id = $id;
$resultat = $this->executerMethodeStockage('tester', array($id));
}
return $resultat;
}
/**
* Sauvegarde en cache les données passées en paramètre.
*
* @param mixed $donnees Données à mettre en cache (peut être différent d'une chaine si serialisation_auto vaut true).
* @param string $id Identifiant du cache (s'il n'est pas définit, le dernier identifiant sera utilisé).
* @param array $tags Mots-clés du cache.
* @param int $duree_de_vie_specifique Si != false, indique une durée de vie spécifique pour cet enregistrement en cache (null => durée de vie infinie)
* @return boolean True si aucun problème n'est survenu.
*/
public function sauver($donnees, $id = null, $tags = array(), $duree_de_vie_specifique = false) {
$resultat = true;
if ($this->options['mise_en_cache'] === true) {
$id = ($id === null) ? $this->dernier_id : $this->prefixerId($id);
self::validerIdOuTag($id);
self::validerTableauDeTags($tags);
$donnees = $this->serialiserAutomatiquement($donnees);
$this->nettoyerAutomatiquement();
$resultat = $this->executerMethodeStockage('sauver', array($donnees, $id, $tags, $duree_de_vie_specifique));
if ($resultat == false) {
// Le cache étant peut être corrompu, nous le supprimons
$this->supprimer($id);
} else {
$resultat = $this->controlerEcriture($id, $donnees);
}
}
return $resultat;
}
/**
* Supprime un enregistrement en cache.
*
* @param string $id Identificant du cache à supprimer.
* @return boolean True si ok
*/
public function supprimer($id) {
$resultat = true;
if ($this->options['mise_en_cache'] === true) {
$id = $this->prefixerId($id);
self::validerIdOuTag($id);
$resultat = $this->executerMethodeStockage('supprimer', array($id));
}
return $resultat;
}
/**
* Nettoyage des enregistrements en cache
*
* Mode de nettoyage disponibles :
* 'tous' (défaut) => supprime tous les enregistrements ($tags n'est pas utilisé)
* 'expiration' => supprime tous les enregistrements dont la date d'expériration est dépassée ($tags n'est pas utilisé)
* 'avecLesTag' => supprime tous les enregistrements contenant tous les tags indiqués
* 'sansLesTag' => supprime tous les enregistrements contenant aucun des tags indiqués
* 'avecUnTag' => supprime tous les enregistrements contenant au moins un des tags indiqués
*
* @param string $mode mode de nettoyage
* @param array|string $tags peut être un tableau de chaîne ou une simple chaine.
* @return boolean True si ok
*/
public function nettoyer($mode = self::NETTOYAGE_MODE_TOUS, $tags = array()) {
$resultat = true;
if ($this->options['mise_en_cache'] === true) {
if (!in_array($mode, array(Cache::NETTOYAGE_MODE_TOUS,
Cache::NETTOYAGE_MODE_EXPIRATION,
Cache::NETTOYAGE_MODE_AVEC_LES_TAGS,
Cache::NETTOYAGE_MODE_SANS_LES_TAGS,
Cache::NETTOYAGE_MODE_AVEC_UN_TAG))) {
trigger_error("Le mode de nettoyage du cache indiqué n'est pas valide", E_USER_WARNING);
}
self::validerTableauDeTags($tags);
$resultat = $this->executerMethodeStockage('nettoyer', array($mode, $tags));
}
return $resultat;
}
 
/**
* Return an array of stored cache ids
*
* @return array array of stored cache ids (string)
*/
public function getIds() {
$ids = $this->executerMethodeStockage('getIds');
$ids = $this->supprimerPrefixe($ids);
return $ids;
}
 
/**
* Return an array of stored tags
*
* @return array array of stored tags (string)
*/
public function getTags() {
return $this->executerMethodeStockage('getTags');
}
/**
* Return an array of stored cache ids which match given tags
*
* In case of multiple tags, a logical AND is made between tags
*
* @param array $tags array of tags
* @return array array of matching cache ids (string)
*/
public function getIdsAvecLesTags($tags = array()) {
$ids = $this->executerMethodeStockage('getIdsAvecLesTags', array($tags));
$ids = $this->supprimerPrefixe($ids);
return $ids;
}
 
/**
* Return an array of stored cache ids which don't match given tags
*
* In case of multiple tags, a logical OR is made between tags
*
* @param array $tags array of tags
* @return array array of not matching cache ids (string)
*/
public function getIdsSansLesTags($tags = array()) {
$ids = $this->executerMethodeStockage('getIdsSansLesTags', array($tags));
$ids = $this->supprimerPrefixe($ids);
return $ids;
}
 
/**
* Return an array of stored cache ids which match any given tags
*
* In case of multiple tags, a logical OR is made between tags
*
* @param array $tags array of tags
* @return array array of matching any cache ids (string)
*/
public function getIdsAvecUnTag($tags = array()) {
$ids = $this->executerMethodeStockage('getIdsAvecUnTag', array($tags));
$ids = $this->supprimerPrefixe($ids);
return $ids;
}
 
/**
* Return the filling percentage of the backend storage
*
* @return int integer between 0 and 100
*/
public function getPourcentageRemplissage() {
return $this->executerMethodeStockage('getPourcentageRemplissage');
}
 
/**
* Return an array of metadatas for the given cache id
*
* The array will include these keys :
* - expire : the expire timestamp
* - tags : a string array of tags
* - mtime : timestamp of last modification time
*
* @param string $id cache id
* @return array array of metadatas (false if the cache id is not found)
*/
public function getMetadonnees($id) {
$id = $this->prefixerId($id);
return $this->executerMethodeStockage('getMetadonnees', array($id));
}
 
/**
* Give (if possible) an extra lifetime to the given cache id
*
* @param string $id cache id
* @param int $extraLifetime
* @return boolean true if ok
*/
public function ajouterSupplementDureeDeVie($id, $supplement_duree_de_vie) {
$id = $this->prefixerId($id);
return $this->executerMethodeStockage('ajouterSupplementDureeDeVie', array($id, $supplement_duree_de_vie));
}
 
/**
* Fabrique et retourne l'identifiant du cache avec son préfixe.
*
* Vérifie l'option 'cache_id_prefixe' et retourne le nouvel id avec préfixe ou simplement l'id lui même si elle vaut null.
*
* @param string $id Identifiant du cache.
* @return string Identifiant du cache avec ou sans préfixe.
*/
private function prefixerId($id) {
$nouvel_id = $id;
if (($id !== null) && isset($this->options['cache_id_prefixe'])) {
$nouvel_id = $this->options['cache_id_prefixe'].$id;
}
return $nouvel_id;
}
private function executerMethodeStockage($methode, $params = null) {
if (method_exists($this->stockage, $methode)) {
if ($params == null) {
$resultat = call_user_func(array($this->stockage, $methode));
} else {
$resultat = call_user_func_array(array($this->stockage, $methode), $params);
}
} else {
$resultat = false;
trigger_error("La méthode '$methode' n'existe pas dans la classe '".get_class($this)."'.", E_USER_WARNING);
}
return $resultat;
}
private function supprimerPrefixe($ids) {
// Il est nécessaire de retirer les cache_id_prefixe des ids (voir #ZF-6178, #ZF-7600)
if (isset($this->options['cache_id_prefixe']) && $this->options['cache_id_prefixe'] !== '') {
$prefixe =& $this->options['cache_id_prefixe'];
$prefixe_longueur = strlen($prefixe);
foreach ($ids as &$id) {
if (strpos($id, $prefixe) === 0) {
$id = substr($id, $prefixe_longueur);
}
}
}
return $ids;
}
private function controlerEcriture($id, $donnees_avant_ecriture) {
$resultat = true;
if ($this->options['controle_ecriture']) {
$donnees_apres_ecriture = $this->executerMethodeStockage('charger', array($id, true));
if ($donnees_avant_ecriture != $donnees_apres_ecriture) {
$this->executerMethodeStockage('supprimer', array($id));
$resultat = false;
}
}
return $resultat;
}
private function deserialiserAutomatiquement($donnees) {
if ($donnees !== false && $this->options['serialisation_auto']) {
// we need to unserialize before sending the result
$donnees = unserialize($donnees);
}
return $donnees;
}
private function serialiserAutomatiquement($donnees) {
if ($this->options['serialisation_auto']) {
// we need to serialize datas before storing them
$donnees = serialize($donnees);
} else {
if (!is_string($donnees)) {
trigger_error("Les données doivent être une chaîne de caractères ou vous devez activez l'option serialisation_auto = true", E_USER_WARNING);
}
}
return $donnees;
}
private function nettoyerAutomatiquement() {
if ($this->options['nettoyage_auto'] > 0) {
$rand = rand(1, $this->options['nettoyage_auto']);
if ($rand == 1) {
$this->nettoyer(self::NETTOYAGE_MODE_EXPIRATION);
}
}
}
/**
* Valide un identifiant de cache ou un tag (securité, nom de fichiers fiables, préfixes réservés...)
*
* @param string $chaine Identificant de cache ou tag
* @return void
*/
protected static function validerIdOuTag($chaine) {
if (!is_string($chaine)) {
trigger_error('Id ou tag invalide : doit être une chaîne de caractères', E_USER_ERROR);
}
if (substr($chaine, 0, 9) == 'internal-') {
trigger_error('"internal-*" identifiants ou tags sont réservés', E_USER_WARNING);
}
if (!preg_match('~^[a-zA-Z0-9_]+$~D', $chaine)) {
trigger_error("Id ou tag invalide '$chaine' : doit contenir seulement [a-zA-Z0-9_]", E_USER_WARNING);
}
}
 
/**
* Valide un tableau de tags (securité, nom de fichiers fiables, préfixes réservés...)
*
* @param array $tags tableau de tags
* @return void
*/
protected static function validerTableauDeTags($tags) {
if (!is_array($tags)) {
trigger_error("Tableau de tags invalide : doit être un tableau 'array'", E_USER_WARNING);
}
foreach ($tags as $tag) {
self::validerIdOuTag($tag);
}
reset($tags);
}
/**
* Calcule et retourne le timestamp d'expiration
*
* @return int timestamp d'expiration (unix timestamp)
*/
public function getTimestampExpiration($duree_de_vie) {
if ($duree_de_vie === false) {
if (isset($this->options['duree_de_vie']) && is_int($this->options['duree_de_vie'])) {
$duree_de_vie = (int) $this->options['duree_de_vie'];
} else {
$duree_de_vie = 3600;
}
}
$timestamp = ($duree_de_vie === null) ? 9999999999 : (time() + $duree_de_vie);
return $timestamp;
}
}
/tags/v0.3-aleaume/framework/config.defaut.ini
New file
0,0 → 1,261
; Encodage : UTF-8
; Attention : Renommer ce fichier en config.ini
 
; +------------------------------------------------------------------------------------------------------+
; Général
; ds : Séparateur de dossier
; ps : Séparateur de chemin
; eol : Fin de ligne de fichier
 
ds = DIRECTORY_SEPARATOR
ps = PATH_SEPARATOR
eol = PHP_EOL
 
; +------------------------------------------------------------------------------------------------------+
; URLs
; url_arg_separateur_entree : Le séparateur des arguments d'une url à parser (par défaut, utiliser : "php:ini_get('arg_separator.input')")
; url_arg_separateur_sortie : Le séparateur utilisé pour séparer les arguments d'une URL générée (défaut, utiliser : "php:ini_get('arg_separator.output')")
; url_base : URL de base de l'application. Si vide : fonctionnement Stand-alone
; Peut utiliser un objet Net_URL comme ceci : "php:$mon_objet_net_url->getUrl()"
 
url_arg_separateur_entree = "&amp;"
url_arg_separateur_sortie = "&amp;"
url_base = ""
 
; +------------------------------------------------------------------------------------------------------+
; Débogage
; fw_debogage : Indique si oui ou non on veut afficher le débogage.
; Indique sous quelle forme les méssages de débogage doivent s'afficher :
; - "php:Debug::MODE_ECHO" : le message est affiché en utilisant echo
; - "php:Debug::MODE_NOTICE" : le message est affiché en utilisant une erreur de type notice
; - "php:Debug::MODE_ENTETE_HTTP" : les messages sont envoyés dans un entête HTTP "X_REST_DEBOGAGE".
; - "Autre valeur" : les messages sont formatés puis retournés par la méthode de débogage utilisée.
; fw_debogage_contexte : Indique si oui ou non on veut afficher le contexte de débogage.
; fw_debogage_niveau : Niveau d'erreur à employer pour le code PHP. Voir le manuel de PHP pour les différents niveaux disponibles.
 
 
debogage = true
debogage_mode = "php:Debug::MODE_ECHO"
debogage_contexte = false
debogage_niveau = 30719
 
; +------------------------------------------------------------------------------------------------------+
; Benchmark
; fw_benchmark_chrono : Indique si oui ou nom on veut afficher le tableau de chronométrage de l'application. (BENCHMARK)
benchmark_chrono = true
 
; +------------------------------------------------------------------------------------------------------+
; Log
; log_debogage : Indique si oui ou non on veut activer la journalisation des erreurs.
; log_script : Indique si oui (true) ou non (false) les scripts doivent loguer les messages
; log_taille_max : Indique la taille max d'un fichier log (en octets)
 
log_debogage = false
log_script = true
log_taille_max = 1000000
 
; +------------------------------------------------------------------------------------------------------+
; Chemins, dossiers et fichiers
; fichier_config : Nom des fichiers de config recherché. Défini par défaut dans la classe Config
; chemin_framework : Chemin vers le dossier du framework. Défini par défaut dans la classe Config
; dossier_bibliotheque : Nom du dossier de la bibliotheque de codes de l'application.
; dossier_composants : Nom du dossier des composants graphiques de l'application.
; dossier_configurations : Nom du dossier des controleurs de l'application.
; dossier_controleurs : Nom du dossier des controleurs de l'application.
; dossier_i18n : Nom du dossier des traductions de l'application.
; dossier_modeles : Nom du dossier des modèles de l'application.
; dossier_squelettes :Nom du dossier des squelettes de l'application.
; dossier_logs : Nom du dossier des logs de l'application.
; dossier_modules : Nom du dossier contenant les modules (sous partie d'une application, scripts ou services web).
 
; fichier_config = "config%s.ini"
; chemin_framework = "php:dirname(__FILE__).DS"
 
dossier_bibliotheque = bibliotheque
dossier_composants = composants
dossier_configurations = configurations
dossier_controleurs = controleurs
dossier_i18n = i18n
dossier_modeles = modeles
dossier_squelettes = squelettes
dossier_logs = logs
dossier_modules = modules
 
; chemin_appli :Chemin vers le dossier de l'appli.
; chemin_bibliotheque : Chemin vers le dossier de la bibliotheque de codes de l'application.
; chemin_composants : Chemin vers le dossier des composants graphiques de l'application.
; chemin_configurations : Chemin vers le dossier des configurations de l'application.
; chemin_controleurs : Chemin vers le dossier des controleurs de l'application.
; chemin_i18n : Chemin vers le dossier des traductions de l'application.
; chemin_modeles : chemin vers le dossier des modèles de l'application.
; chemin_squelettes : Chemin vers le dossier des squelettes de l'application.
; chemin_logs : Chemin vers le dossier des logs de l'application.
; chemin_modules : Chemin vers les dossiers spécifiques aux scripts CLI.
 
chemin_appli = "php:Framework::getCheminAppli()"
chemin_bibliotheque = "{ref:chemin_appli}{ref:dossier_bibliotheque}{ref:ds}"
chemin_composants = "{ref:chemin_appli}{ref:dossier_composants}{ref:ds}"
chemin_configurations = "{ref:chemin_appli}{ref:dossier_configurations}{ref:ds}"
chemin_controleurs = "{ref:chemin_appli}{ref:dossier_controleurs}{ref:ds}"
chemin_i18n = "{ref:chemin_appli}{ref:dossier_i18n}{ref:ds}"
chemin_modeles = "{ref:chemin_appli}{ref:dossier_modeles}{ref:ds}"
chemin_squelettes = "{ref:chemin_appli}{ref:dossier_squelettes}{ref:ds}"
chemin_logs = "{ref:chemin_appli}{ref:dossier_logs}{ref:ds}"
chemin_modules = "{ref:chemin_appli}{ref:dossier_modules}{ref:ds}"
 
; +------------------------------------------------------------------------------------------------------+
; Paramètrage de la base de données.
; bdd_abstraction : abstraction de la base de données.
; bdd_protocole : Protocole de la base de données.
; bdd_serveur : Nom du serveur de bases de données.
; bdd_utilisateur : Nom de l'utilisateur de la base de données.
; bdd_mot_de_passe : Mot de passe de l'utilisateur de la base de données.
; bdd_nom : Nom de la base de données principale.
; bdd_encodage : Encodage de la base de données principale. Normalement le même que l'application mais au format base de
; données : voir ici : http://dev.mysql.com/doc/refman/5.0/en/charset-charsets.html
; et là: http://www.postgresql.org/docs/8.1/static/multibyte.html pour les correspondances
bdd_abstraction = pdo
bdd_protocole = mysql
bdd_serveur = localhost
bdd_utilisateur = ""
bdd_mot_de_passe = ""
bdd_nom = ""
bdd_encodage = "utf8"
 
; +------------------------------------------------------------------------------------------------------+
; Encodage
; encodage_appli : encodage de l'application, des fichiers php, squelettes de l'application
; encodage_sortie : Encodage des donnés renvoyées au navigateur
; (faire attention à la correspondane avec les .htaccess et les balises meta du html des squelettes)
 
encodage_appli = "UTF-8"
encodage_sortie = "UTF-8"
 
; +------------------------------------------------------------------------------------------------------+
; I18n
; i18n_url_parametre : nom du paramètre GET contenant la langue demandée
; i18n_langue_defaut : Indique la langue par défaut
; i18n_locale : Indique la locale à utiliser pour le système (alphabet, date, nombre...)
; i18n_systeme_locale : Paramètres indiquant à PHP qu'elle est la locale à utiliser (par défaut français UTF-8).
; i18n_timezone : Indique la zone horaire
; i18n_systeme_timezone : Définit la zone horaire pour le framework et son application
 
i18n_url_parametre = "langue"
i18n_langue_defaut = "fr"
i18n_locale = "fr_FR.UTF-8"
i18n_systeme_locale = "php:setlocale(LC_ALL, '{ref:i18n_locale}')"
i18n_timezone = "Europe/Paris"
i18n_systeme_timezone = "php:date_default_timezone_set('{ref:i18n_timezone}');"
 
; +------------------------------------------------------------------------------------------------------+
; Cache
; ====> (string) stockage_mode :
; Indique le mode de stockage du cache à utiliser parmis :
; - Cache::STOCKAGE_MODE_FICHIER : sous forme d'une arborescence de fichiers et dossier
; - Cache::STOCKAGE_MODE_SQLITE : sous forme d'une base de données SQLite
; ====> (string) stockage_chemin :
; Chemin vers :
; - Cache::STOCKAGE_MODE_FICHIER : le dossier devant contenir l'arborescence.
; - Cache::STOCKAGE_MODE_SQLITE : le fichier contenant la base SQLite.
; ====> (boolean) controle_ecriture :
; - Active / Désactive le controle d'écriture (le cache est lue jute après l'écriture du fichier pour détecter sa corruption)
; - Activer le controle d'écriture ralentira légèrement l'écriture du fichier de cache mais pas sa lecture
; Le controle d'écriture peut détecter la corruption de fichier mais ce n'est pas un système de controle parfait.
; ====> (boolean) mise_en_cache :
; - Active / Désactive la mise en cache
; (peut être très utile pour le débogage des scripts utilisant le cache
; ====> (string) cache_id_prefixe :
; - préfixe pour les identifiant de cache ( = espace de nom)
; ====> (boolean) serialisation_auto :
; - Active / Désactive la sérialisation automatique
; - Peut être utilisé pour sauver directement des données qui ne sont pas des chaines (mais c'est plus lent)
; ====> (int) nettoyage_auto :
; - Désactive / Régler le processus de nettoyage automatique
; - Le processus de nettoyage automatiques détruit les fichier trop vieux (pour la durée de vie donnée)
; quand un nouveau fichier de cache est écrit :
; 0 => pas de nettoyage automatique
; 1 => nettoyage automatique systématique
; x (integer) > 1 => nettoyage automatique toutes les 1 fois (au hasard) sur x écriture de fichier de cache
; ====> (int) duree_de_vie :
; - Durée de vie du cache (en secondes)
; - Si null, le cache est valide indéfiniment.
 
stockage_mode = "php:Cache::STOCKAGE_MODE_SQLITE"
stockage_chemin = "php:Fichier::getDossierTmp().DS.'cache.sqlite'"
controle_ecriture = "php:TRUE"
mise_en_cache = "php:TRUE"
cache_id_prefixe = "php:NULL"
serialisation_auto = "php:FALSE"
nettoyage_auto = 10
duree_de_vie = 3600
 
; Si cache de type FICHIER, paramètres supplémentaires :
; =====> (boolean) fichier_verrou :
; - Active / Désactive le verrouillage des fichiers
; - Peut éviter la corruption du cache dans de mauvaises circonstances, mais cela ne fonctionne pas sur des serveur
; multithread et sur les systèmes de fichiers NFS par exemple.
; =====> (boolean) controle_lecture :
; - Activer / désactiver le contrôle de lecture
; - S'il est activé, une clé de contrôle est ajoutée dans le fichier de cache et cette clé est comparée avec celle calculée
; après la lecture.
; =====> (string) controle_lecture_type :
; Type de contrôle de lecture (seulement si le contrôle de lecture est activé).
; Les valeurs disponibles sont:
; - «md5» pour un contrôle md5 (le meilleur mais le plus lent)
; - «crc32» pour un contrôle de hachage crc32 (un peu moins sécurisé, mais plus rapide, un meilleur choix)
; - «adler32» pour un contrôle de hachage adler32 (excellent choix aussi, plus rapide que crc32)
; - «strlen» pour un test de longueur uniquement (le plus rapide)
; =====> (int) dossier_niveau :
; - Permet de réglez le nombre de niveau de sous-dossier que contiendra l'arborescence des dossiers du cache.
; 0 signifie "pas de sous-dossier pour le cache",
; 1 signifie "un niveau de sous-dossier",
; 2 signifie "deux niveaux" ...
; Cette option peut accélérer le cache seulement lorsque vous avez plusieurs centaines de fichiers de cache.
; Seuls des tests spécifiques peuvent vous aider à choisir la meilleure valeur possible pour vous.
; 1 ou 2 peut être est un bon début.
; =====> (int) dossier_umask :
; - Umask pour les sous-dossiers de l'arborescence du cache.
; =====> (string) fichier_prefixe :
; - préfixe pour les fichiers du cache
; - ATTENTION : faite vraiment attention avec cette option, car une valeur trop générique dans le dossier cache du système
; (comme /tmp) peut provoquer des catastrophes lors du nettoyage du cache.
; =====> (int) fichier_umask :
; - Umask pour les fichiers de cache
; =====> (int) metadonnees_max_taille :
; - taille maximum pour le tableau de métadonnées du cache (ne changer pas cette valeur sauf si vous savez ce que vous faite)
fichier_verrou = "php:TRUE"
controle_lecture = "php:TRUE"
controle_lecture_type = "crc32"
dossier_niveau = 2
dossier_umask = 0707
fichier_prefixe = "tbf"
fichier_umask = 0606
metadonnees_max_taille = 100
 
; Si cache de type SQLITE, paramètres supplémentaires :
; ====> (int) defragmentation_auto :
; - Désactive / Régler le processus de défragmentation automatique
; - Le processus de défragmentation automatiques réduit la taille du fichier contenant la base de données
; quand un ajout ou une suppression de cache est réalisée :
; 0 => pas de défragmentation automatique
; 1 => défragmentation automatique systématique
; x (integer) > 1 => défragmentation automatique toutes les 1 fois (au hasard) sur x ajout ou suppression de cache
 
defragmentation_auto = 10
 
; +------------------------------------------------------------------------------------------------------+
; Identifications
; identification : Indiquer ici si l'utilisateur est identifié ou pas.
; Peut utiliser un objet Auth comme ceci : "php:$mon_objet_auth->getAuth()"
 
identification = true
 
; +------------------------------------------------------------------------------------------------------+
; Serveur REST
; Les paramètres ci-dessous sont à définir obligatoirement dans votre dossier de services web REST.
; serveur.baseURL : morceau de l'url pour appeler le serveur relative au domaine.
; Exemple : pour http://www.tela-botanica.org/mon_serveur/ mettre : "/mon_serveur/"
; serveur.baseAlternativeURL : (optionnel) sur le même principe que ci-dessus permet d'affecter une deuxième base relative d'url
; (pour gérer des raccourci via htaccess par exemple)
Property changes:
Added: svn:keywords
+Id Author Date Revision HeadURL
\ No newline at end of property
/tags/v0.3-aleaume/framework/Script.php
New file
0,0 → 1,289
<?php
// declare(encoding='UTF-8');
/**
* Script est une classe abstraite qui doit être implémenté par les classes éxecutant des scripts en ligne de commande.
*
* @category PHP 5.2
* @package Framework
* @author Jean-Pascal MILCENT <jpm@tela-botanica.org>
* @author Delphine CAUQUIL <delphine@tela-botanica.org>
* @copyright Copyright (c) 2010, Tela Botanica (accueil@tela-botanica.org)
* @license http://www.gnu.org/licenses/gpl.html Licence GNU-GPL-v3
* @license http://www.cecill.info/licences/Licence_CeCILL_V2-fr.txt Licence CECILL-v2
* @since 0.3
* @version $Id$
* @link /doc/framework/
*/
 
abstract class Script {
/** Niveau de message de type LOG */
const MSG_LOG = 0;
/** Niveau de message de type ERREUR */
const MSG_ERREUR = 1;
/** Niveau de message de type AVERTISSEMENT */
const MSG_AVERTISSEMENT = 2;
/** Niveau de message de type INFORMATION */
const MSG_INFO = 3;
 
/** Inititulé des différents types de message. */
private static $msg_niveaux_txt = array('LOG', 'ERREUR','AVERTISSEMENT', 'INFO');
/**
* Le nom du script tel que passé dans la ligne de commande.
* @var string
*/
private $script_nom = null;
/**
* Paramêtres par défaut disponibles pour la ligne de commande
* le tableau se construit de la forme suivante :
* - clé = nom du paramêtre '-foo'
* - value = contient un nouveau tableau composé de cette façon :
* - booléen: true si le paramêtre est obligatoire
* - booléen ou var : true si le paramêtre nécessite un valeur à sa suite ou la valeur par défaut
* - string: description du contenu du paramêtre
* Les paramêtres optionels devraient être déclaré à la fin du tableau.
* Le dernier parametre du tableau peut avoir la valeur '...',
* il contiendra alors l'ensemble des paramêtres suivant trouvés sur la ligne de commande.
* @var array
*/
private $parametres_autorises_defaut = array(
'-a' => array(true, true, 'Action à réaliser'),
'-v' => array(false, '1', 'Mode verbeux : 1 ou 2'));
/**
* Paramêtres autorisés par le script.
* le tableau est de la forme suivante :
* - clé = nom du paramêtre '-foo'
* - value = contient un nouveau tableau composé de cette façon :
* - booléen: true si le paramêtre est obligatoire
* - booléen ou var : true si le paramêtre nécessite un valeur à sa suite ou la valeur par défaut
* - string: description du contenu du paramêtre
* Les paramêtres optionels devraient être déclaré à la fin du tableau.
* Le dernier parametre du tableau peut avoir la valeur '...',
* il contiendra alors l'ensemble des paramêtres suivant trouvés sur la ligne de commande.
* @var array
*/
protected $parametres_autorises = null;
/**
* Contient les valeurs des paramêtres récupérés de la ligne de commande :
* le tableau se construit de la forme suivnate :
* - clé = nom du paramêtre '-foo'
* - valeur = la valeur récupérée sur la ligne de commande
* @var array
*/
private $parametres_cli = null;
/**
* Contient le tableau des paramètres disponible après vérification :
* le tableau est de la forme suivante :
* - clé = nom du paramêtre '-foo'
* - valeur = la valeur récupérée sur la ligne de commande
* @var array
*/
protected $parametres = null;
/** Tableau associatif permettant de stocker l'avancement dans une boucle.
* La clé est un md5 du message à afficher au démarrage de la boucle.
* @var array
*/
private static $avancement = array();
/** Tableau des noms des paramètres à définir dans le fichier de config car obligatoirement nécessaire à cette classe.*/
private static $parametres_obligatoires = array('chemin_modules', 'log_script');
public function __construct($script_nom, $parametres_cli) {
$this->script_nom = $script_nom;
$this->parametres_cli = $parametres_cli;
Config::verifierPresenceParametres(self::$parametres_obligatoires);
$fichier_ini_script = $this->getScriptChemin().'config.ini';
Config::charger($fichier_ini_script);
$this->chargerParametresAutorises();
$this->chargerParametres();
}
private static function getMsgNiveauTxt($niveau) {
return self::$msg_niveaux_txt[$niveau];
}
protected function getScriptNom() {
return $this->script_nom;
}
protected function getScriptChemin($doit_exister = true) {
$chemin = Config::get('chemin_modules').$this->getScriptNom().DS;
if (!file_exists($chemin) && $doit_exister) {
trigger_error("Erreur: le module '".$this->getScriptNom()."' n'existe pas ($chemin)\n", E_USER_ERROR);
}
return $chemin;
}
protected function getParametre($parametre) {
$retour = false;
if (!is_null($parametre)) {
$parametre = ltrim($parametre, '-');
if (isset($this->parametres[$parametre])) {
$retour = $this->parametres[$parametre];
} else {
trigger_error("Erreur: la ligne de commande ne contenait pas le paramêtre '$parametre'\n", E_USER_WARNING);
}
}
return $retour;
}
abstract public function executer();
private function chargerParametresAutorises() {
foreach ($this->parametres_autorises_defaut as $c => $v) {
if (isset($this->parametres_autorises[$c])) {
trigger_error("Erreur: le script '".$this->getScriptNom()."' ne peut définir le paramêtre '$c' car il existe déjà\n", E_USER_ERROR);
} else {
$this->parametres_autorises[$c] = $v;
}
}
}
private function chargerParametres() {
$parametres_cli = $this->parametres_cli;
 
// Récupération des paramêtresgetMsgNiveauTxt
foreach ($this->parametres_autorises as $p_nom => $p_val) {
if (count($parametres_cli) == 0) {
if ($p_val[0]) {
trigger_error("Erreur: paramêtre manquant '".$p_nom."' \n", E_USER_WARNING);
}
}
if ($p_nom == '...') {
$this->parametres['...'] = array();
foreach ($parametres_cli as $arg) {
$this->parametres['...'][] = $arg;
}
$parametres_cli = array();
break;
} else {
if (isset($parametres_cli[$p_nom])) {
// Attribution de la valeur issue de la ligne de commande
$this->parametres[ltrim($p_nom, '-')] = $parametres_cli[$p_nom];
unset($parametres_cli[$p_nom]);
} else {
// Attribution de la valeur par défaut
if ($p_val[1] !== true) {
$this->parametres[ltrim($p_nom, '-')] = $p_val[1];
unset($parametres_cli[$p_nom]);
}
}
}
}
// Gestion de l'excédant de paramêtres
if (count($parametres_cli)) {
trigger_error("Erreur: trop de paramêtres\n", E_USER_ERROR);
}
}
/**
* Affiche un message d'erreur formaté.
* Si le paramétre de verbosité (-v) vaut 1 ou plus, le message est écrit dans le fichier de log et afficher dans la console.
*
* @param string le message d'erreur avec des %s.
* @param array le tableau des paramêtres à insérer dans le message d'erreur.
* @return void.
*/
protected function traiterErreur($message, $tab_arguments = array()) {
$this->traiterMessage($message, $tab_arguments, self::MSG_ERREUR);
}
/**
* Affiche un message d'avertissement formaté.
* Si le paramétre de verbosité (-v) vaut 1, le message est écrit dans le fichier de log.
* Si le paramétre de verbosité (-v) vaut 2 ou plus, le message est écrit dans le fichier de log et afficher dans la console.
*
* @param string le message d'erreur avec des %s.
* @param array le tableau des paramêtres à insérer dans le message d'erreur.
* @return void.
*/
protected function traiterAvertissement($message, $tab_arguments = array()) {
$this->traiterMessage($message, $tab_arguments, self::MSG_AVERTISSEMENT);
}
/**
* Retourne un message d'information formaté.
* Si le paramétre de verbosité (-v) vaut 1 ou 2 , le message est écrit dans le fichier de log.
* Si le paramétre de verbosité (-v) vaut 3 ou plus, le message est écrit dans le fichier de log et afficher dans la console.
*
* @param string le message d'information avec des %s.
* @param array le tableau des paramêtres à insérer dans le message d'erreur.
* @return void.
*/
protected function traiterInfo($message, $tab_arguments = array()) {
$this->traiterMessage($message, $tab_arguments, self::MSG_INFO);
}
/**
* Retourne un message formaté en le stockant dans un fichier de log si nécessaire.
*
* @param string le message d'erreur avec des %s.
* @param array le tableau des paramêtres à insérer dans le message d'erreur.
* @param int le niveau de verbosité à dépasser pour afficher les messages.
* @return void.
*/
private function traiterMessage($message, $tab_arguments, $niveau = self::MSG_LOG) {
$log = $this->formaterMsg($message, $tab_arguments, $niveau);
if ($this->getParametre('v') > ($niveau - 1)) {
echo $log;
if (Config::get('log_script')) {
// TODO : lancer le log
}
}
}
/**
* Retourne un message d'information formaté.
*
* @param string le message d'information avec des %s.
* @param array le tableau des paramêtres à insérer dans le message d'erreur.
* @return string le message d'erreur formaté.
*/
protected function formaterMsg($message, $tab_arguments = array(), $niveau = null) {
$texte = vsprintf($message, $tab_arguments);
$prefixe = date('Y-m-j_H:i:s', time());
$prefixe .= is_null($niveau) ? ' : ' : ' - '.self::getMsgNiveauTxt($niveau).' : ';
$log = $prefixe.$texte."\n";
return $log;
}
/**
* Utiliser cette méthode dans une boucle pour afficher un message suivi du nombre de tour de boucle effectué.
* Vous devrez vous même gérer le retour à la ligne à la sortie de la boucle.
*
* @param string le message d'information.
* @param int le nombre de départ à afficher.
* @return void le message est affiché dans la console.
*/
protected function afficherAvancement($message, $depart = 0) {
if (! isset(self::$avancement[$message])) {
self::$avancement[$message] = $depart;
echo "$message : ";
$actuel =& self::$avancement[$message];
echo $actuel++;
} else {
$actuel =& self::$avancement[$message];
// Cas du passage de 99 (= 2 caractères) à 100 (= 3 caractères)
$passage = 0;
if (strlen((string) ($actuel - 1)) < strlen((string) ($actuel))) {
$passage = 1;
}
echo str_repeat(chr(8), (strlen((string) $actuel) - $passage));
echo $actuel++;
}
}
}
?>
/tags/v0.3-aleaume/framework/Config.php
New file
0,0 → 1,281
<?php
// declare(encoding='UTF-8');
/**
* Config permet de charger automatiquement les fichiers ini du Framework et de l'application.
* Elle offre l'accès en lecture seule aux paramètres de config.
* C'est une Singleton.
* Si vous avez besoin de modifier dynamiquement des paramètres de configuration, utiliser le @see Registe, il est fait pour ça.
*
* @category PHP 5.2
* @package Framework
* @author Jean-Pascal MILCENT <jpm@tela-botanica.org>
* @copyright Copyright (c) 2009, Tela Botanica (accueil@tela-botanica.org)
* @license http://www.gnu.org/licenses/gpl.html Licence GNU-GPL-v3
* @license http://www.cecill.info/licences/Licence_CeCILL_V2-fr.txt Licence CECILL-v2
* @version $Id$
* @link /doc/framework/
*/
 
class Config {
 
/** Instance de la classe pointant sur elle même (pour le pattern singleton). */
private static $instance = null;
 
/** Paramètres de configuration. */
private static $parametres = array();
 
private function __construct() {
// Définition de paramètres avant chargement du config.ini
self::$parametres = array(
'fichier_config' => 'config%s.ini',
'chemin_framework' => dirname(__FILE__).DS
);
 
// Chargement du fichier config.ini du Framework
$existe = self::parserFichierIni(self::$parametres['chemin_framework'].sprintf(self::$parametres['fichier_config'], ''));
if ($existe === false) {
trigger_error("Veuillez configurer le Framework en renommant le fichier config.defaut.ini en config.ini.", E_USER_ERROR);
}
 
// Chargement du fichier config.ini par défaut de l'application
$chemin_config_defaut_appli = self::$parametres['chemin_configurations'].sprintf(self::$parametres['fichier_config'], '');
self::parserFichierIni($chemin_config_defaut_appli);
 
// Chargement des fichiers config.ini contextuels
if (PHP_SAPI == 'cli') {// mode console
foreach ($_SERVER['argv'] as $cle => $valeur) {
if ($valeur == '-contexte') {
chargerFichierContexte($_SERVER['argv'][($cle+1)]);
break;
}
}
} else {// mode web
// Pour Papyrus
if (defined('PAP_VERSION')) {
self::chargerFichierContexte('papyrus');
}
// Via le fichie .ini par défaut de l'appli
if (Config::existeValeur('info.contexte', self::$parametres)) {
self::chargerFichierContexte(Config::get('info.contexte'));
}
 
// Chargement du contexte présent dans le GET
if (isset($_GET['contexte'])) {
$_GET['contexte'] = strip_tags($_GET['contexte']);
self::chargerFichierContexte($_GET['contexte']);
}
 
// Chargement du contexte présent dans le POST
if (isset($_POST['contexte'])) {
$_POST['contexte'] = strip_tags($_POST['contexte']);
self::chargerFichierContexte($_POST['contexte']);
}
}
}
 
/**
* Charge le fichier de config correspondant au contexte
* @param string $contexte le contexte
*/
private static function chargerFichierContexte($contexte) {
$chemin_config_appli_contextuel = self::$parametres['chemin_configurations'];
$chemin_config_appli_contextuel .= sprintf(self::$parametres['ffichier_config'], '_'.$contexte);
self::parserFichierIni($chemin_config_appli_contextuel);
}
 
/**
* Parse le fichier ini donné en paramètre
* @param string $fichier_ini nom du fichier ini à parser
* @return array tableau contenant les paramètres du fichier ini
*/
private static function parserFichierIni($fichier_ini) {
$retour = false;
if (file_exists($fichier_ini)) {
$ini = parse_ini_file($fichier_ini, true);
$ini = self::analyserTableauIni($ini);
self::fusionner($ini);
$retour = true;
}
return $retour;
}
 
/**
* Fusionne un tableau de paramètres avec le tableau de paramètres global
* @param array $ini le tableau à fusionner
*/
private static function fusionner(array $ini) {
self::$parametres = array_merge(self::$parametres, $ini);
}
 
/**
* Renvoie la valeur demandée grâce une chaîne de paramètres
* @param string $param la chaine de paramètres
* @param array $config le tableau de paramètre
* @return string la valeur de la chaine demandée
*/
private static function getValeur($param, $config) {
if ($param === null) {
return null;
} else {
if (isset($config[$param])) {
return $config[$param];
} else if (strpos($param, '.') !== false) {
$pieces = explode('.', $param, 2);
if (strlen($pieces[0]) && strlen($pieces[1])) {
if (isset($config[$pieces[0]])) {
if (is_array($config[$pieces[0]])) {
return self::getValeur($pieces[1], $config[$pieces[0]]);
}
}
}
} else {
return null;
}
}
}
 
/**
* Teste si param existe dans le tableau config
* @param string $param nom du paramètre
* @param array tableau de configuration
*/
private static function existeValeur($param, $config) {
$retour = false;
if (self::getValeur($param, $config) !== null) {
$retour = true;
}
return $retour;
}
 
/**
* Vérifie si l'instance de classe à été crée, si non la crée
*/
private static function verifierCreationInstance() {
if (empty(self::$instance)) {
self::$instance = new Config();
}
}
 
/**
* Analyse un tableau de paramètres.
* @param array $config le tableau de paramètres
* @return array le tableau analysé
*/
private static function analyserTableauIni($config = array()) {
foreach ($config as $cle => &$valeur) {
if (is_array($valeur)) {
$config[$cle] = self::analyserTableauIni($valeur);
} else {
self::evaluerReferences($config, $cle);
self::evaluerPhp($config, $cle);
self::evaluerCle($config, $cle, $config[$cle]);
}
}
return $config;
}
 
/**
* Dans le cas des chaine de configuration à sous clé (ex.: cle.souscle)
* évalue les valeurs correspondantes et crée les sous tableaux associés.
* @param array $config tableau de configuration (par référence)
* @param string $cle la cle dans le tableau
* @param string $valeur la valeur à affecter
*/
private static function evaluerCle(&$config, $cle, $valeur) {
if (strpos($cle, '.') !== false) {
unset($config[$cle]);
$pieces = explode('.', $cle, 2);
if (strlen($pieces[0]) && strlen($pieces[1])) {
if (isset($config[$pieces[0]]) && !is_array($config[$pieces[0]])) {
$m = "Ne peut pas créer de sous-clé pour '{$pieces[0]}' car la clé existe déjà";
trigger_error($m, E_USER_WARNING);
} else {
$config[$pieces[0]][$pieces[1]] = $valeur;
$config[$pieces[0]] = self::evaluerCle($config[$pieces[0]], $pieces[1], $valeur);
}
} else {
$m = "Clé invalide '$cle'";
trigger_error($m, E_USER_WARNING);
}
} else {
$config[$cle] = $valeur;
}
return $config;
}
 
/**
* Évalue les valeurs de références à une clé dans le tableau config (cas du ref:cle).
* @param array $config tableau de configuration
* @param string $cle la clé dont il faut évaluer les références
*/
private static function evaluerReferences(&$config, $cle) {
if (preg_match_all('/{ref:([A-Za-z0-9_.-]+)}/', $config[$cle], $correspondances, PREG_SET_ORDER)) {
foreach ($correspondances as $ref) {
$config[$cle] = str_replace($ref[0], self::getValeur($ref[1], $config), $config[$cle]);
}
}
}
 
/**
* Évalue le code php contenu dans un clé tu tableau config.
* @param array $config tableau de configuration (par référence)
* @param string $cle le clé du tableau dont il faut évaluer la valeur
*/
private static function evaluerPhp(&$config, $cle) {
if (preg_match('/^php:(.+)$/', $config[$cle], $correspondances)) {
eval('$config["'.$cle.'"] = '.$correspondances[1].';');
}
}
 
/**
* Charge un fichier ini dans le tableau des paramètres de l'appli.
* @param string $fichier_ini le nom du fichier à charger
* @return array le fichier ini parsé
*/
public static function charger($fichier_ini) {
self::verifierCreationInstance();
return self::parserFichierIni($fichier_ini);
}
 
/**
* Accesseur pour la valeur d'un paramètre.
* @param string $param le nom du paramètre
* @return string la valeur du paramètre
*/
public static function get($param = null) {
self::verifierCreationInstance();
return self::getValeur($param, self::$parametres);
}
 
/**
* Vérifie si la valeur d'un paramètre existe.
* @param string $param le nom du paramètre
* @return boolean vrai si le paramètre existe, false sinon
*/
public static function existe($param) {
self::verifierCreationInstance();
return self::existeValeur($param, self::$parametres);
}
/**
* Vérifie que tous les paramêtres de config nécessaires au fonctionnement d'une classe existe dans les fichiers
* de configurations.
* L'utilisation de cette méthode depuis la classe Config évite de faire appel à une classe supplémentaire.
*
* @param array $parametres tableau des noms des paramètres de la config à verifier.
* @return boolean true si tous les paramétres sont présents sinon false.
*/
public static function verifierPresenceParametres(Array $parametres) {
$ok = true;
foreach ($parametres as $param) {
if (is_null(self::get($param))) {
$classe = get_class();
$m = "L'utilisation de la classe $classe nécessite de définir '$param' dans un fichier de configuration.";
trigger_error($m, E_USER_ERROR);
$ok = false;
}
}
return $ok;
}
}
?>
Property changes:
Added: svn:keywords
+Id Author Date Revision HeadURL
\ No newline at end of property
/tags/v0.3-aleaume/framework/GestionnaireException.php
New file
0,0 → 1,232
<?php
// declare(encoding='UTF-8');
/**
* Classe de gestion des exceptions.
* C'est un Singleton.
*
* @category PHP 5.2
* @package Framework
* @author Aurélien PERONNET <aurelien@tela-botanica.org>
* @author Jean-Pascal MILCENT <jmp@tela-botanica.org>
* @copyright Copyright (c) 2009, Tela Botanica (accueil@tela-botanica.org)
* @license http://www.cecill.info/licences/Licence_CeCILL_V2-fr.txt Licence CECILL
* @license http://www.gnu.org/licenses/gpl.html Licence GNU-GPL
* @version $Id$$
* @link /doc/framework/
*
*/
class GestionnaireException {
const MODE_CLI = 'cli';
/** Liste des exceptions enregistrées */
private static $exceptions = array();
 
/** Détermine si l'on affiche ou non le contexte */
private static $contexte = false;
 
/** Détermine si l'on loggue ou non les erreurs */
private static $logger = false;
 
/** Détermine si l'affichage des erreurs est forcé (true) ou pas (false) à la destruction de la classe */
private static $afficher = false;
 
/** Definit si php est lancé en ligne de commande ou en mode serveur */
private static $mode = null ;
 
/** Tableau des noms des paramètres à définir dans le fichier de config car obligatoirement nécessaire à cette classe.*/
private static $parametres_obligatoires = array('debogage', 'debogage_contexte', 'log_debogage');
/** Initialise le Gestionnaire d'exceptions et d'erreur sans tenir comptes des paramêtres de config. */
public static function initialiser() {
self::$mode = php_sapi_name();
// Désactivation des balises HTML dans les messages d'erreur de PHP en mode ligne de commande
if (self::$mode == self::MODE_CLI) {
ini_set('html_errors', 0);
}
set_exception_handler(array(get_class(),'gererException'));
set_error_handler(array(get_class(),'gererErreur'));
}
/** Configure le Gestionnaire d'exceptions et d'erreur à partir des paramêtres de config. */
public static function configurer() {
Config::verifierPresenceParametres(self::$parametres_obligatoires);
self::$contexte = Config::get('debogage_contexte');
self::$logger = Config::get('log_debogage');
self::$afficher = Config::get('debogage');
}
/**
* Renvoie le nombre d'exceptions et d'erreurs levées.
* @see getExceptions() pour obtenir les exceptions formatées.
* @since 0.3
* @return int le nombre d'exception actuellement levées
*/
public static function getExceptionsNbre() {
return count(self::$exceptions);
}
/**
* Renvoie le booleen définissant si l'on affiche le contexte ou non
* @return bool true si on affiche le contexte sinon false.
*/
public static function getContexte() {
return self::$contexte;
}
 
/**
* Definit si l'on veut afficher le contexte ou non
* @param bool true si on veut afficher le contexte, false sinon, par défaut vaut false
*/
public static function setContexte($contexte) {
self::$contexte = $contexte;
}
 
/**
* Fonction de gestion des exceptions, remplace le handler par défaut.
* Si une boucle génère de multiple exception (ou erreur) identique une seule sera stockée.
* @param Exception $e l'exception à traiter
*/
public static function gererException(Exception $e) {
$cle = hash('md5', $e->getMessage().'-'.$e->getFile().'-'.$e->getLine());
if (!isset(self::$exceptions[$cle])) {
self::$exceptions[$cle] = $e;
self::loggerException($e);
}
}
 
/**
* Gère les erreurs en les convertissant en exceptions (remplace la fonction gestion d'erreurs native de php)
* @param int $niveau le niveau de l'erreur
* @param string $message le message associé à l'erreur
* @param string $fichier le nom du fichier où l'erreur s'est produite
* @param int $ligne la ligne où l'erreur s'est produite
* @param string $contexte le contexte associé à l'erreur
*/
public static function gererErreur($niveau, $message, $fichier, $ligne, $contexte){
// Si un rapport d'erreur existe, création d'une exception
if (error_reporting() != 0) {
$e = new ErrorException($message, 0, $niveau, $fichier, $ligne);
self::gererException($e);
}
return null;
}
 
/**
* Renvoie les exceptions au format (X)HTML ou bien au format texte suivant le mode d'utilisation de PHP.
* @since 0.3
* @deprecated
* @see getExceptionsFormatees()
* @return string les exceptions formatées en texte ou (X)HTML.
*/
public static function getExceptions() {
return self::getExceptionsFormatees();
}
/**
* Renvoie les exceptions au format (X)HTML ou bien au format texte suivant le mode d'utilisation de PHP.
* @since 0.3
* @return string les exceptions formatées en texte ou (X)HTML.
*/
public static function getExceptionsFormatees() {
$retour = '';
if (self::getExceptionsNbre() > 0) {
foreach (self::$exceptions as $cle => $e) {
switch (self::$mode) {
case self::MODE_CLI :
$retour .= self::formaterExceptionTxt($e);
break;
default:
$retour .= self::formaterExceptionXhtml($e);
}
// Nous vidons le tableau des exceptions au fur et à mesure pour éviter le réaffichage avec le destructeur.
unset(self::$exceptions[$cle]);
}
}
return $retour;
}
/**
* Renvoie le tableau d'objets Exception générées par le script PHP triées du niveau de sévérité le plus élevé au moins élevé.
* Format du tableau :
* array{sévérité_1 = array{Exception1, Exception2, Exception3,...}, sévérité_1 = array{Exception1, Exception2, ...}, ...};
* ATTENTION : si vous utilisez cette méthode, c'est à vous de gérer l'affichage des Exceptions. Le gestionnaire d'exception
* n'enverra plus rien au navigateur ou à la console.
* @since 0.3
* @return array le tableau trié d'objet Exception.
*/
public static function getExceptionsTriees() {
$retour = array();
if (self::getExceptionsNbre() > 0) {
foreach (self::$exceptions as $cle => $e) {
$retour[$e->getSeverity()][] = $e;
// Nous vidons le tableau des exceptions au fur et à mesure pour éviter le réaffichage avec le destructeur.
unset(self::$exceptions[$cle]);
}
ksort($retour);
}
return $retour;
}
 
/**
* Logue une exception donnée sous une forme lisible si self::logger vaut true.
* @param Exception $e l'exception à logger
*/
private static function loggerException(Exception $e) {
if (self::$logger) {
$message = self::formaterExceptionTxt($e);
Log::ajouterEntree('erreurs', $message);
}
}
/**
* Formate en texte une exception passée en paramètre.
* @since 0.3
* @param Exception l'exception à formater.
*/
public static function formaterExceptionTxt(Exception $e) {
$message = '';
$message .= $e->getMessage()."\n";
$message .= 'Fichier : '.$e->getFile()."\n";
$message .= 'Ligne : '.$e->getLine()."\n";
if (self::getContexte()) {
$message .= 'Contexte : '."\n".print_r($e->getTraceAsString(), true)."\n";
}
$message .= "\n";
return $message;
}
/**
* Formate en (X)HTML une exception passée en paramètre.
* @since 0.3
* @param Exception l'exception à formater.
*/
public static function formaterExceptionXhtml(Exception $e) {
$message = '';
$message .= '<div class="debogage">'."\n";
$message .= $e->getMessage()."\n";
$message .= '<span class="debogage_fichier">'.'Fichier : '.$e->getFile().'</span>'."\n";
$message .= '<span class="debogage_ligne">'.'Ligne : '.$e->getLine().'</span>'."\n";
if (self::getContexte()) {
$message .= '<pre>'."\n";
$message .= '<strong>Contexte : </strong>'."\n".print_r($e->getTraceAsString(), true)."\n";
$message .= '</pre>'."\n";
}
$message .= '</div>'."\n";
return $message;
}
/**
* Lors de la destruction de la classe si des exceptions n'ont pas été affichées, et si le débogage est à true, elles sont
* affichées.
*/
public function __destruct() {
// Si des erreurs n'ont pas été affichée nous forçons leur affichage
if (self::$afficher && self::getExceptionsNbre() > 0) {
echo self::getExceptionsFormatees();
}
}
 
}
?>
Property changes:
Added: svn:keywords
+Id Author Date Revision HeadURL
\ No newline at end of property
/tags/v0.3-aleaume/framework/Cli.php
New file
0,0 → 1,101
<?php
// declare(encoding='UTF-8');
/**
* CLI permet de récupérer les paramètres passés en ligne de commande pour instancier une classe héritant de la classe abstraite
* Script.
* Elle va déclencher l'éxecution du script via l'appel de la méthode executer().
* C'est une Singleton.
*
* @category PHP 5.2
* @package Framework
* @author Jean-Pascal MILCENT <jpm@tela-botanica.org>
* @author Delphine CAUQUIL <delphine@tela-botanica.org>
* @copyright Copyright (c) 2010, Tela Botanica (accueil@tela-botanica.org)
* @license http://www.gnu.org/licenses/gpl.html Licence GNU-GPL-v3
* @license http://www.cecill.info/licences/Licence_CeCILL_V2-fr.txt Licence CECILL-v2
* @since 0.3
* @version $Id$
* @link /doc/framework/
*/
 
class Cli {
/** Tableau des noms des paramètres à définir dans le fichier de config car obligatoirement nécessaire à cette classe.*/
private static $parametres_obligatoires = array('chemin_modules');
/**
* Execute la ligne de commande en récupérant le nom du script à lancer et ses paramètres.
* Instancie la classe du script à lancer et appelle la méthode executer().
* @return void
*/
public static function executer() {
if ($_SERVER['argc'] < 2){
trigger_error("Erreur: vous n'avez pas indiqué le nom du script. Voir '".$_SERVER['argv'][0]." help'.\n", E_USER_ERROR);
}
// Récupération de la ligne de commande
$argv = $_SERVER['argv'];
// Nous dépilons le nom du fichier qui initialise le framework et appele cette méthode.
array_shift($argv);
// Nous dépilons le nom du script à lancer
$script = array_shift($argv);
// Récupération des paramètres d'execution du script
$parametres = self::getParametres($argv);
// Chargement du script à lancer
$Script = Cli::charger($script, $parametres);
if (!is_null($Script)) {
$Script->executer();
}
// Affichage des exceptions et erreurs générées par le script
echo GestionnaireException::getExceptions();
// Fin d'execution
exit(0);
}
private static function charger($script_nom, $parametres) {
$Script = null;
Config::verifierPresenceParametres(self::$parametres_obligatoires);
$classe_nom = self::obtenirNomClasse($script_nom);
$dossier_nom = strtolower($script_nom);
$fichier_script = Config::get('chemin_modules').$dossier_nom.DS.$classe_nom.'.php';
if (!file_exists($fichier_script)){
trigger_error("Erreur : script '$fichier_script' inconnu!\n", E_USER_ERROR);
} else {
require_once $fichier_script;
if (!class_exists( $classe_nom)) {
trigger_error("Erreur: impossible de trouver la classe de la commande : $classe_nom\n", E_USER_ERROR);
} else {
$Script = new $classe_nom($script_nom, $parametres);
}
}
return $Script;
}
private static function obtenirNomClasse($script_nom) {
$nom_classe = implode('', array_map('ucfirst', explode('_', strtolower($script_nom))));
return $nom_classe;
}
private static function getParametres($argv) {
$parametres = array();
// Récupération des options
while (count($argv)) {
if (isset($argv[1]) && $argv[1]{0} != '-') {
$param = array_shift($argv);
$parametres[$param] = array_shift($argv);
} elseif (!isset($argv[1]) || $argv[1]{0} == '-') {
$parametres[array_shift($argv)] = null;
} else {
trigger_error("Erreur: valeur manquante pour le paramêtre '".$argv[0]."' \n", E_USER_ERROR);
}
}
return $parametres;
}
}
?>
/tags/v0.3-aleaume/framework/utilitaires/Chaine.php
New file
0,0 → 1,68
<?php
// declare(encoding='UTF-8');
/**
* Classe fournissant des méthodes statiques de manipulation des chaînes de caractères (String).
*
* @category PHP 5.2
* @package Utilitaire
* @author Jean-Pascal MILCENT <jpm@tela-botanica.org>
* @copyright Copyright (c) 2010, Tela Botanica (accueil@tela-botanica.org)
* @license http://www.gnu.org/licenses/gpl.html Licence GNU-GPL-v3
* @license http://www.cecill.info/licences/Licence_CeCILL_V2-fr.txt Licence CECILL-v2
* @version $Id$
* @link /doc/framework/
*/
class Chaine {
 
private static $caracteres_accentues = array(
'À', 'Á', 'Â', 'Ã', 'Ä', 'Å', 'Æ', 'Ç', 'È', 'É', 'Ê', 'Ë', 'Ì', 'Í', 'Î',
'Ï', 'Ð', 'Ñ', 'Ò', 'Ó', 'Ô', 'Õ', 'Ö', 'Ø', 'Ù', 'Ú', 'Û', 'Ü', 'Ý', 'ß',
'à', 'á', 'â', 'ã', 'ä', 'å', 'æ', 'ç', 'è', 'é', 'ê', 'ë', 'ì', 'í', 'î',
'ï', 'ñ', 'ò', 'ó', 'ô', 'õ', 'ö', 'ø', 'ù', 'ú', 'û', 'ü', 'ý', 'ÿ', 'Ā',
'ā', 'Ă', 'ă', 'Ą', 'ą', 'Ć', 'ć', 'Ĉ', 'ĉ', 'Ċ', 'ċ', 'Č', 'č', 'Ď', 'ď',
'Đ', 'đ', 'Ē', 'ē', 'Ĕ', 'ĕ', 'Ė', 'ė', 'Ę', 'ę', 'Ě', 'ě', 'Ĝ', 'ĝ', 'Ğ',
'ğ', 'Ġ', 'ġ', 'Ģ', 'ģ', 'Ĥ', 'ĥ', 'Ħ', 'ħ', 'Ĩ', 'ĩ', 'Ī', 'ī', 'Ĭ', 'ĭ',
'Į', 'į', 'İ', 'ı', 'IJ', 'ij', 'Ĵ', 'ĵ', 'Ķ', 'ķ', 'Ĺ', 'ĺ', 'Ļ', 'ļ', 'Ľ',
'ľ', 'Ŀ', 'ŀ', 'Ł', 'ł', 'Ń', 'ń', 'Ņ', 'ņ', 'Ň', 'ň', 'ʼn', 'Ō', 'ō', 'Ŏ',
'ŏ', 'Ő', 'ő', 'Œ', 'œ', 'Ŕ', 'ŕ', 'Ŗ', 'ŗ', 'Ř', 'ř', 'Ś', 'ś', 'Ŝ', 'ŝ',
'Ş', 'ş', 'Š', 'š', 'Ţ', 'ţ', 'Ť', 'ť', 'Ŧ', 'ŧ', 'Ũ', 'ũ', 'Ū', 'ū', 'Ŭ',
'ŭ', 'Ů', 'ů', 'Ű', 'ű', 'Ų', 'ų', 'Ŵ', 'ŵ', 'Ŷ', 'ŷ', 'Ÿ', 'Ź', 'ź', 'Ż',
'ż', 'Ž', 'ž', 'ſ', 'ƒ', 'Ơ', 'ơ', 'Ư', 'ư', 'Ǎ', 'ǎ', 'Ǐ', 'ǐ', 'Ǒ', 'ǒ',
'Ǔ', 'ǔ', 'Ǖ', 'ǖ', 'Ǘ', 'ǘ', 'Ǚ', 'ǚ', 'Ǜ', 'ǜ', 'Ǻ', 'ǻ', 'Ǽ', 'ǽ', 'Ǿ', 'ǿ');
 
private static $caracteres_normaux = array(
'A', 'A', 'A', 'A', 'A', 'A', 'AE', 'C', 'E', 'E', 'E', 'E', 'I', 'I', 'I',
'I', 'D', 'N', 'O', 'O', 'O', 'O', 'O', 'O', 'U', 'U', 'U', 'U', 'Y', 's',
'a', 'a', 'a', 'a', 'a', 'a', 'ae', 'c', 'e', 'e', 'e', 'e', 'i', 'i', 'i',
'i', 'n', 'o', 'o', 'o', 'o', 'o', 'o', 'u', 'u', 'u', 'u', 'y', 'y', 'A', 'a',
'A', 'a', 'A', 'a', 'C', 'c', 'C', 'c', 'C', 'c', 'C', 'c', 'D', 'd', 'D', 'd',
'E', 'e', 'E', 'e', 'E', 'e', 'E', 'e', 'E', 'e', 'G', 'g', 'G', 'g', 'G', 'g',
'G', 'g', 'H', 'h', 'H', 'h', 'I', 'i', 'I', 'i', 'I', 'i', 'I', 'i', 'I', 'i',
'IJ', 'ij', 'J', 'j', 'K', 'k', 'L', 'l', 'L', 'l', 'L', 'l', 'L', 'l', 'l', 'l',
'N', 'n', 'N', 'n', 'N', 'n', 'n', 'O', 'o', 'O', 'o', 'O', 'o', 'OE', 'oe', 'R',
'r', 'R', 'r', 'R', 'r', 'S', 's', 'S', 's', 'S', 's', 'S', 's', 'T', 't', 'T', 't',
'T', 't', 'U', 'u', 'U', 'u', 'U', 'u', 'U', 'u', 'U', 'u', 'U', 'u', 'W', 'w', 'Y',
'y', 'Y', 'Z', 'z', 'Z', 'z', 'Z', 'z', 's', 'f', 'O', 'o', 'U', 'u', 'A', 'a', 'I',
'i', 'O', 'o', 'U', 'u', 'U', 'u', 'U', 'u', 'U', 'u', 'U', 'u', 'A', 'a', 'AE', 'ae', 'O', 'o');
/**
* Supprime ou remplace les accents d'une chaine en PHP.
* La solution retenu, provenant du site
* {@link http://www.lecoindunet.com/zone_php/scripts_utiles/remplacer-les-caracteres-accentues-dune-chaine-en-php-72 lecoindunet.com},
* consiste en deux tableaux (caractères avec et sans accents) car cela permetra éventuellement
* de fournir des méthodes pour récupérer ces tableaux pour d'autres traitements.
* Une autre solution aurait été d'utiliser les entités HTML comme proposé par le site
* {@link http://www.weirdog.com/blog/php/supprimer-les-accents-des-caracteres-accentues.html weirdog.com}.
*
* @param String $chaine la chaine de caractères dans laquelle supprimer les accents.
* @param String $encodage le code d'encodage de la chaine si ce n'est pas de l'UTF-8.
* @return la chaine de caractères sans accent.
*/
function supprimerAccents($chaine, $encodage = 'UTF-8') {
if ($encodage != 'UTF-8') {
mb_convert_variables($encodage, 'UTF-8', self::$caracteres_accentues, self::$caracteres_normaux);
}
return str_replace(self::$caracteres_accentues, self::$caracteres_normaux, $chaine);
}
}
?>
/tags/v0.3-aleaume/framework/utilitaires/Fichier.php
New file
0,0 → 1,202
<?php
// declare(encoding='UTF-8');
/**
* Classe fournissant des méthodes statiques de manipulation des fichiers.
*
* @category PHP 5.2
* @package Utilitaire
* @author Jean-Pascal MILCENT <jpm@tela-botanica.org>
* @copyright Copyright (c) 2009, Tela Botanica (accueil@tela-botanica.org)
* @license http://www.gnu.org/licenses/gpl.html Licence GNU-GPL-v3
* @license http://www.cecill.info/licences/Licence_CeCILL_V2-fr.txt Licence CECILL-v2
* @version $Id$
* @link /doc/framework/
*/
class Fichier {
/**
* Créer et stocke du contenu dans un fichier.
*
* @param string le chemin et le nom du fichier.
* @param string le contenu à stocker dans le fichier.
* @return string true en cas de succès sinon false.
*/
public static function creerFichier($fichier, $contenu) {
$erreur = null;
// Début de l'écriture du fichier
if ($resource = fopen($fichier, 'w')) {
if (!fwrite($resource, $contenu)) {
if (!fclose($resource)) {
$erreur = "Le fichier '$fichier' n'a pas pu être fermé.";
}
} else {
$erreur = "Le contenu texte n'a pas pu être écrit dans le fichier '$fichier'.";
}
} else {
$erreur = "Le fichier '$fichier' n'a pas pu être ouvert.";
}
 
// Gestion des erreurs et du retour
if (is_null($erreur)) {
return true;
} else {
trigger_error($erreur, E_USER_WARNING);
return false;
}
}
/**
* Créer et stocke du contenu dans un fichier compressé en Gzip.
*
* @param string le chemin et le nom du fichier.
* @param string le contenu à stocker dans le fichier.
* @return string true en cas de succès sinon false.
*/
public static function creerFichierGzip($fichier, $contenu) {
$erreur = null;
// Ajout de l'extension gz
if (substr($fichier, -3) != '.gz') {
$fichier = $fichier.'.gz';
}
// Début de l'écriture du fichier compressé
if ($resource = gzopen($fichier, 'w9')) {
if (gzwrite($resource, $contenu)) {
if (!gzclose($resource)) {
$erreur = "Le fichier compressé '$fichier' n'a pas pu être fermé.";
}
} else {
$erreur = "Le contenu texte n'a pas pu être écrit dans le fichier compressé '$fichier'.";
}
} else {
$erreur = "Le fichier compressé '$fichier' n'a pas pu être ouvert.";
}
// Gestion des erreurs et du retour
if (is_null($erreur)) {
return true;
} else {
trigger_error($erreur, E_USER_WARNING);
return false;
}
}
/**
* Supprime récursivement un dossier et tout son contenu.
*
* @param string $dossier le chemin vers le dossier à supprimer.
* @return void
*/
public static function supprimerDossier($dossier) {
if (is_dir($dossier)) {
$objets = scandir($dossier);
foreach ($objets as $objet) {
if ($objet != '.' && $objet != '..') {
$chemin = $dossier.'/'.$objet;
if (filetype($chemin) == 'dir') {
$this->supprimerDossier($chemin);
} else {
unlink($chemin);
}
}
}
reset($objets);
rmdir($dossier);
}
}
/**
* Convertion d'un nombre d'octet en kB, MB, GB.
* @link http://forum.webmaster-rank.info/developpement-site/code-taille-memoire-d-une-variable-en-php-t1344.html
* @param integer $taille la taille en octet à convertir
*
* @return string la chaine représentant la taille en octets.
*/
public static function convertirTaille($taille) {
$unite = array('B', 'kB', 'MB', 'GB');
return @round($taille / pow(1024, ($i = floor(log($taille,1024)))), 2).' '.$unite[$i];
}
/**
* Détermine le dossier système temporaire et détecte si nous y avons accès en lecture et écriture.
*
* Inspiré de Zend_File_Transfer_Adapter_Abstract & Zend_Cache
*
* @return string|false le chemine vers le dossier temporaire ou false en cas d'échec.
*/
public static function getDossierTmp() {
$dossier_tmp = false;
foreach (array($_ENV, $_SERVER) as $environnement) {
foreach (array('TMPDIR', 'TEMP', 'TMP', 'windir', 'SystemRoot') as $cle) {
if (isset($environnement[$cle])) {
if (($cle == 'windir') or ($cle == 'SystemRoot')) {
$dossier = realpath($environnement[$cle] . '\\temp');
} else {
$dossier = realpath($environnement[$cle]);
}
if (self::etreAccessibleEnLectureEtEcriture($dossier)) {
$dossier_tmp = $dossier;
break 2;
}
}
}
}
if ( ! $dossier_tmp) {
$dossier_televersement_tmp = ini_get('upload_tmp_dir');
if ($dossier_televersement_tmp) {
$dossier = realpath($dossier_televersement_tmp);
if (self::etreAccessibleEnLectureEtEcriture($dossier)) {
$dossier_tmp = $dossier;
}
}
}
if ( ! $dossier_tmp) {
if (function_exists('sys_get_temp_dir')) {
$dossier = sys_get_temp_dir();
if (self::etreAccessibleEnLectureEtEcriture($dossier)) {
$dossier_tmp = $dossier;
}
}
}
if ( ! $dossier_tmp) {
// Tentative de création d'un fichier temporaire
$fichier_tmp = tempnam(md5(uniqid(rand(), TRUE)), '');
if ($fichier_tmp) {
$dossier = realpath(dirname($fichier_tmp));
unlink($fichier_tmp);
if (self::etreAccessibleEnLectureEtEcriture($dossier)) {
$dossier_tmp = $dossier;
}
}
}
if ( ! $dossier_tmp && self::etreAccessibleEnLectureEtEcriture('/tmp')) {
$dossier_tmp = '/tmp';
}
if ( ! $dossier_tmp && self::etreAccessibleEnLectureEtEcriture('\\temp')) {
$dossier_tmp = '\\temp';
}
return $dossier_tmp;
}
/**
* Vérifie si le fichier ou dossier est accessible en lecture et écriture.
*
* @param $ressource chemin vers le dossier ou fichier à tester
* @return boolean true si la ressource est accessible en lecture et écriture.
*/
protected static function etreAccessibleEnLectureEtEcriture($ressource){
$accessible = false;
if (is_readable($ressource) && is_writable($ressource)) {
$accessible = true;
}
return $accessible;
}
}
?>
/tags/v0.3-aleaume/framework/utilitaires/Pattern.php
New file
0,0 → 1,24
<?php
// declare(encoding='UTF-8');
/**
* Classe fournissant des constantes correspondant à des expressions régulières de vérification très courrantes.
*
* @category PHP 5.2
* @package Utilitaire
* @author Jean-Pascal MILCENT <jpm@tela-botanica.org>
* @copyright Copyright (c) 2009, Tela Botanica (accueil@tela-botanica.org)
* @license http://www.gnu.org/licenses/gpl.html Licence GNU-GPL-v3
* @license http://www.cecill.info/licences/Licence_CeCILL_V2-fr.txt Licence CECILL-v2
* @version $Id$
* @link /doc/framework/
*/
class Pattern {
const PRENOM = "[\p{L}-]+";// Pattern prénom
const NOM = "[\p{Lu}]+";// Pattern nom
const COURRIEL = "[a-z0-9!#$%&'*+=?^_`{|}~-]+(?:\\.[a-z0-9!#$%&'*+=?^_`{|}~-]+)*@(?:[a-z0-9](?:[a-z0-9-]*[a-z0-9])?\\.)+[a-z0-9](?:[a-z0-9-]*[a-z0-9])?";// Pattern courriel
const URL = "^(?:(?:ht|f)tp(?:s?)\\:\\/\\/|~/|/)?(?:\\w+:\\w+@)?(?:(?:[-\\w]+\\.)+(?:com|org|net|gov|mil|biz|info|mobi|name|aero|jobs|museum|travel|[a-z]{2}))(?::[\\d]{1,5})?(?:(?:(?:/(?:[-\\w~!$+|.,=]|%[a-f\\d]{2})+)+|/)+|\\?|#)?(?:(?:\\?(?:[-\\w~!$+|.,*:]|%[a-f\\d{2}])+=(?:[-\\w~!$+|.,*:=]|%[a-f\\d]{2})*)(?:&(?:[-\\w~!$+|.,*:]|%[a-f\\d{2}])+=(?:[-\\w~!$+|.,*:=]|%[a-f\\d]{2})*)*)*(?:#(?:[-\\w~!$+|.,*:=]|%[a-f\\d]{2})*)?$";
const HEURE_MINUTE = "^(?:[0-1][0-9]|2[0-4]):(?:[0-5][0-9]|60)$";// Heure au format 24h avec séparateur d'heure et minute ':'
const LATITUDE = "^-?([0-8]?[0-9]([.,][0-9]*)?|90)$"; // Nombre décimal positif ou négatif allant de 0 à 89 ou nombre entier valant 90 avec pour séparateur des décimales "." ou ","
const LONGITUDE = "^-?((1[0-7][0-9]|[1-9]?[0-9])([.,][0-9]*)?|180)$"; // Nombre décimal positif ou négatif allant de 0 à 179 ou nombre entier valant 180 avec pour séparateur des décimales "." ou ","
}
?>
/tags/v0.3-aleaume/framework/utilitaires/Tableau.php
New file
0,0 → 1,43
<?php
// declare(encoding='UTF-8');
/**
* Classe fournissant des méthodes statiques de manipulation des tableaux (Array).
*
* @category PHP 5.2
* @package Utilitaire
* @author Jean-Pascal MILCENT <jpm@tela-botanica.org>
* @copyright Copyright (c) 2009, Tela Botanica (accueil@tela-botanica.org)
* @license http://www.gnu.org/licenses/gpl.html Licence GNU-GPL-v3
* @license http://www.cecill.info/licences/Licence_CeCILL_V2-fr.txt Licence CECILL-v2
* @version $Id$
* @link /doc/framework/
*/
class Tableau {
/**
* Etend le tableau à étendre avec les données du tableau à copier. Si des clés sont identiques entre les deux tableaux
* une erreur est déclenchée et la valeur du tableau à étendre est gardée. Si les deux tableaux ont des clés numériques
* leurs valeurs sont gardées (à la différence de array_merge).
* Les tableaux sont passés par références et le tableau à copier est progressivement détruit pour éviter la consomation
* de mémoire.
*
* @param array $tableau_a_etendre
* @param array $tableau_a_copier
* @return void
*/
public static function etendre(Array &$tableau_a_etendre, Array &$tableau_a_copier) {
$cles_existantes = null;
foreach($tableau_a_copier as $cle => $val) {
if (!isset($tableau_a_etendre[$cle])) {
$tableau_a_etendre[$cle] = $val;
unset($tableau_a_copier[$cle]);
} else {
$cles_existantes = $cle;
}
}
if (is_array($cles_existantes)) {
$e = "Le tableau a étendre contenait déjà les clés suivantes : ".implode(', ', $cles_existantes);
trigger_error($e, E_USER_WARNING);
}
}
}
?>
/tags/v0.3-aleaume/framework/utilitaires/Storage.php
New file
0,0 → 1,132
<?php
 
/**
* Zend Framework
*
* LICENSE
*
* This source file is subject to the new BSD license that is bundled
* with this package in the file LICENSE.txt.
* It is also available through the world-wide-web at this URL:
* http://framework.zend.com/license/new-bsd
* If you did not receive a copy of the license and are unable to
* obtain it through the world-wide-web, please send an email
* to license@zend.com so we can send you a copy immediately.
*
* @category Zend
* @package Zend_OpenId
* @subpackage Zend_OpenId_Consumer
* @copyright Copyright (c) 2005-2010 Zend Technologies USA Inc. (http://www.zend.com)
* @license http://framework.zend.com/license/new-bsd New BSD License
* @version $Id: Storage.php 20096 2010-01-06 02:05:09Z bkarwin $
*/
 
/**
* Abstract class to implement external storage for OpenID consumer
*
* @category Zend
* @package Zend_OpenId
* @subpackage Zend_OpenId_Consumer
* @copyright Copyright (c) 2005-2010 Zend Technologies USA Inc. (http://www.zend.com)
* @license http://framework.zend.com/license/new-bsd New BSD License
*/
abstract class Storage
{
 
/**
* Stores information about association identified by $url/$handle
*
* @param string $url OpenID server URL
* @param string $handle assiciation handle
* @param string $macFunc HMAC function (sha1 or sha256)
* @param string $secret shared secret
* @param long $expires expiration UNIX time
* @return void
*/
abstract public function addAssociation($url, $handle, $macFunc, $secret, $expires);
 
/**
* Gets information about association identified by $url
* Returns true if given association found and not expired and false
* otherwise
*
* @param string $url OpenID server URL
* @param string &$handle assiciation handle
* @param string &$macFunc HMAC function (sha1 or sha256)
* @param string &$secret shared secret
* @param long &$expires expiration UNIX time
* @return bool
*/
abstract public function getAssociation($url, &$handle, &$macFunc, &$secret, &$expires);
 
/**
* Gets information about association identified by $handle
* Returns true if given association found and not expired and false
* othverwise
*
* @param string $handle assiciation handle
* @param string &$url OpenID server URL
* @param string &$macFunc HMAC function (sha1 or sha256)
* @param string &$secret shared secret
* @param long &$expires expiration UNIX time
* @return bool
*/
abstract public function getAssociationByHandle($handle, &$url, &$macFunc, &$secret, &$expires);
 
/**
* Deletes association identified by $url
*
* @param string $url OpenID server URL
* @return void
*/
abstract public function delAssociation($url);
 
/**
* Stores information discovered from identity $id
*
* @param string $id identity
* @param string $realId discovered real identity URL
* @param string $server discovered OpenID server URL
* @param float $version discovered OpenID protocol version
* @param long $expires expiration UNIX time
* @return void
*/
abstract public function addDiscoveryInfo($id, $realId, $server, $version, $expires);
 
/**
* Gets information discovered from identity $id
* Returns true if such information exists and false otherwise
*
* @param string $id identity
* @param string &$realId discovered real identity URL
* @param string &$server discovered OpenID server URL
* @param float &$version discovered OpenID protocol version
* @param long &$expires expiration UNIX time
* @return bool
*/
abstract public function getDiscoveryInfo($id, &$realId, &$server, &$version, &$expires);
 
/**
* Removes cached information discovered from identity $id
*
* @param string $id identity
* @return bool
*/
abstract public function delDiscoveryInfo($id);
 
/**
* The function checks the uniqueness of openid.response_nonce
*
* @param string $provider openid.openid_op_endpoint field from authentication response
* @param string $nonce openid.response_nonce field from authentication response
* @return bool
*/
abstract public function isUniqueNonce($provider, $nonce);
 
/**
* Removes data from the uniqueness database that is older then given date
*
* @param string $date Date of expired data
*/
abstract public function purgeNonces($date=null);
}
/tags/v0.3-aleaume/framework/utilitaires/StorageFile.php
New file
0,0 → 1,512
<?php
 
/**
* Zend Framework
*
* LICENSE
*
* This source file is subject to the new BSD license that is bundled
* with this package in the file LICENSE.txt.
* It is also available through the world-wide-web at this URL:
* http://framework.zend.com/license/new-bsd
* If you did not receive a copy of the license and are unable to
* obtain it through the world-wide-web, please send an email
* to license@zend.com so we can send you a copy immediately.
*
* @category Zend
* @package Zend_OpenId
* @subpackage Zend_OpenId_Consumer
* @copyright Copyright (c) 2005-2010 Zend Technologies USA Inc. (http://www.zend.com)
* @license http://framework.zend.com/license/new-bsd New BSD License
* @version $Id: File.php 23161 2010-10-19 16:08:36Z matthew $
*/
 
/**
* External storage implemmentation using serialized files
*
* @category Zend
* @package Zend_OpenId
* @subpackage Zend_OpenId_Consumer
* @copyright Copyright (c) 2005-2010 Zend Technologies USA Inc. (http://www.zend.com)
* @license http://framework.zend.com/license/new-bsd New BSD License
*/
class StorageFile extends Storage
{
 
/**
* Directory name to store data files in
*
* @var string $_dir
*/
private $_dir;
 
/**
* Constructs storage object and creates storage directory
*
* @param string $dir directory name to store data files in
* @throws Zend_OpenId_Exception
*/
public function __construct($dir = null)
{
if ($dir === null) {
$tmp = getenv('TMP');
if (empty($tmp)) {
$tmp = getenv('TEMP');
if (empty($tmp)) {
$tmp = "/tmp";
}
}
$user = get_current_user();
if (is_string($user) && !empty($user)) {
$tmp .= '/' . $user;
}
$dir = $tmp . '/openid/consumer';
}
$this->_dir = $dir;
if (!is_dir($this->_dir)) {
if (!@mkdir($this->_dir, 0700, 1)) {
/**
* @see Zend_OpenId_Exception
*/
require_once 'Zend/OpenId/Exception.php';
throw new Zend_OpenId_Exception(
'Cannot access storage directory ' . $dir,
Zend_OpenId_Exception::ERROR_STORAGE);
}
}
if (($f = fopen($this->_dir.'/assoc.lock', 'w+')) === null) {
/**
* @see Zend_OpenId_Exception
*/
/*require_once 'Zend/OpenId/Exception.php';
throw new Zend_OpenId_Exception(
'Cannot create a lock file in the directory ' . $dir,
Zend_OpenId_Exception::ERROR_STORAGE);*/
trigger_error('Cannot create a lock file in the directory ', E_STRICT);
}
fclose($f);
if (($f = fopen($this->_dir.'/discovery.lock', 'w+')) === null) {
/**
* @see Zend_OpenId_Exception
*/
/*require_once 'Zend/OpenId/Exception.php';
throw new Zend_OpenId_Exception(
'Cannot create a lock file in the directory ' . $dir,
Zend_OpenId_Exception::ERROR_STORAGE);*/
trigger_error('Cannot create a lock file in the directory', E_STRICT);
}
fclose($f);
if (($f = fopen($this->_dir.'/nonce.lock', 'w+')) === null) {
/**
* @see Zend_OpenId_Exception
*/
/*require_once 'Zend/OpenId/Exception.php';
throw new Zend_OpenId_Exception(
'Cannot create a lock file in the directory ' . $dir,
Zend_OpenId_Exception::ERROR_STORAGE);*/
trigger_error('Cannot create a lock file in the directory', E_STRICT);
}
fclose($f);
}
 
/**
* Stores information about association identified by $url/$handle
*
* @param string $url OpenID server URL
* @param string $handle assiciation handle
* @param string $macFunc HMAC function (sha1 or sha256)
* @param string $secret shared secret
* @param long $expires expiration UNIX time
* @return bool
*/
public function addAssociation($url, $handle, $macFunc, $secret, $expires)
{
$name1 = $this->_dir . '/assoc_url_' . md5($url);
$name2 = $this->_dir . '/assoc_handle_' . md5($handle);
$lock = @fopen($this->_dir . '/assoc.lock', 'w+');
if ($lock === false) {
return false;
}
if (!flock($lock, LOCK_EX)) {
fclose($lock);
return false;
}
try {
$f = @fopen($name1, 'w+');
if ($f === false) {
fclose($lock);
return false;
}
$data = serialize(array($url, $handle, $macFunc, $secret, $expires));
fwrite($f, $data);
if (function_exists('symlink')) {
@unlink($name2);
if (symlink($name1, $name2)) {
fclose($f);
fclose($lock);
return true;
}
}
$f2 = @fopen($name2, 'w+');
if ($f2) {
fwrite($f2, $data);
fclose($f2);
@unlink($name1);
$ret = true;
} else {
$ret = false;
}
fclose($f);
fclose($lock);
return $ret;
} catch (Exception $e) {
fclose($lock);
throw $e;
}
}
 
/**
* Gets information about association identified by $url
* Returns true if given association found and not expired and false
* otherwise
*
* @param string $url OpenID server URL
* @param string &$handle assiciation handle
* @param string &$macFunc HMAC function (sha1 or sha256)
* @param string &$secret shared secret
* @param long &$expires expiration UNIX time
* @return bool
*/
public function getAssociation($url, &$handle, &$macFunc, &$secret, &$expires)
{
$name1 = $this->_dir . '/assoc_url_' . md5($url);
$lock = @fopen($this->_dir . '/assoc.lock', 'w+');
if ($lock === false) {
return false;
}
if (!flock($lock, LOCK_EX)) {
fclose($lock);
return false;
}
try {
$f = @fopen($name1, 'r');
if ($f === false) {
fclose($lock);
return false;
}
$ret = false;
$data = stream_get_contents($f);
if (!empty($data)) {
list($storedUrl, $handle, $macFunc, $secret, $expires) = unserialize($data);
if ($url === $storedUrl && $expires > time()) {
$ret = true;
} else {
$name2 = $this->_dir . '/assoc_handle_' . md5($handle);
fclose($f);
@unlink($name2);
@unlink($name1);
fclose($lock);
return false;
}
}
fclose($f);
fclose($lock);
return $ret;
} catch (Exception $e) {
fclose($lock);
throw $e;
}
}
 
/**
* Gets information about association identified by $handle
* Returns true if given association found and not expired and false
* otherwise
*
* @param string $handle assiciation handle
* @param string &$url OpenID server URL
* @param string &$macFunc HMAC function (sha1 or sha256)
* @param string &$secret shared secret
* @param long &$expires expiration UNIX time
* @return bool
*/
public function getAssociationByHandle($handle, &$url, &$macFunc, &$secret, &$expires)
{
$name2 = $this->_dir . '/assoc_handle_' . md5($handle);
$lock = @fopen($this->_dir . '/assoc.lock', 'w+');
if ($lock === false) {
return false;
}
if (!flock($lock, LOCK_EX)) {
fclose($lock);
return false;
}
try {
$f = @fopen($name2, 'r');
if ($f === false) {
fclose($lock);
return false;
}
$ret = false;
$data = stream_get_contents($f);
if (!empty($data)) {
list($url, $storedHandle, $macFunc, $secret, $expires) = unserialize($data);
if ($handle === $storedHandle && $expires > time()) {
$ret = true;
} else {
fclose($f);
@unlink($name2);
$name1 = $this->_dir . '/assoc_url_' . md5($url);
@unlink($name1);
fclose($lock);
return false;
}
}
fclose($f);
fclose($lock);
return $ret;
} catch (Exception $e) {
fclose($lock);
throw $e;
}
}
 
/**
* Deletes association identified by $url
*
* @param string $url OpenID server URL
* @return bool
*/
public function delAssociation($url)
{
$name1 = $this->_dir . '/assoc_url_' . md5($url);
$lock = @fopen($this->_dir . '/assoc.lock', 'w+');
if ($lock === false) {
return false;
}
if (!flock($lock, LOCK_EX)) {
fclose($lock);
return false;
}
try {
$f = @fopen($name1, 'r');
if ($f === false) {
fclose($lock);
return false;
}
$data = stream_get_contents($f);
if (!empty($data)) {
list($storedUrl, $handle, $macFunc, $secret, $expires) = unserialize($data);
if ($url === $storedUrl) {
$name2 = $this->_dir . '/assoc_handle_' . md5($handle);
fclose($f);
@unlink($name2);
@unlink($name1);
fclose($lock);
return true;
}
}
fclose($f);
fclose($lock);
return true;
} catch (Exception $e) {
fclose($lock);
throw $e;
}
}
 
/**
* Stores information discovered from identity $id
*
* @param string $id identity
* @param string $realId discovered real identity URL
* @param string $server discovered OpenID server URL
* @param float $version discovered OpenID protocol version
* @param long $expires expiration UNIX time
* @return bool
*/
public function addDiscoveryInfo($id, $realId, $server, $version, $expires)
{
$name = $this->_dir . '/discovery_' . md5($id);
$lock = @fopen($this->_dir . '/discovery.lock', 'w+');
if ($lock === false) {
return false;
}
if (!flock($lock, LOCK_EX)) {
fclose($lock);
return false;
}
try {
$f = @fopen($name, 'w+');
if ($f === false) {
fclose($lock);
return false;
}
$data = serialize(array($id, $realId, $server, $version, $expires));
fwrite($f, $data);
fclose($f);
fclose($lock);
return true;
} catch (Exception $e) {
fclose($lock);
throw $e;
}
}
 
/**
* Gets information discovered from identity $id
* Returns true if such information exists and false otherwise
*
* @param string $id identity
* @param string &$realId discovered real identity URL
* @param string &$server discovered OpenID server URL
* @param float &$version discovered OpenID protocol version
* @param long &$expires expiration UNIX time
* @return bool
*/
public function getDiscoveryInfo($id, &$realId, &$server, &$version, &$expires)
{
$name = $this->_dir . '/discovery_' . md5($id);
$lock = @fopen($this->_dir . '/discovery.lock', 'w+');
if ($lock === false) {
return false;
}
if (!flock($lock, LOCK_EX)) {
fclose($lock);
return false;
}
try {
$f = @fopen($name, 'r');
if ($f === false) {
fclose($lock);
return false;
}
$ret = false;
$data = stream_get_contents($f);
if (!empty($data)) {
list($storedId, $realId, $server, $version, $expires) = unserialize($data);
if ($id === $storedId && $expires > time()) {
$ret = true;
} else {
fclose($f);
@unlink($name);
fclose($lock);
return false;
}
}
fclose($f);
fclose($lock);
return $ret;
} catch (Exception $e) {
fclose($lock);
throw $e;
}
}
 
/**
* Removes cached information discovered from identity $id
*
* @param string $id identity
* @return bool
*/
public function delDiscoveryInfo($id)
{
$name = $this->_dir . '/discovery_' . md5($id);
$lock = @fopen($this->_dir . '/discovery.lock', 'w+');
if ($lock === false) {
return false;
}
if (!flock($lock, LOCK_EX)) {
fclose($lock);
return false;
}
try {
@unlink($name);
fclose($lock);
return true;
} catch (Exception $e) {
fclose($lock);
throw $e;
}
}
 
/**
* The function checks the uniqueness of openid.response_nonce
*
* @param string $provider openid.openid_op_endpoint field from authentication response
* @param string $nonce openid.response_nonce field from authentication response
* @return bool
*/
public function isUniqueNonce($provider, $nonce)
{
$name = $this->_dir . '/nonce_' . md5($provider.';'.$nonce);
echo $name;
$lock = @fopen($this->_dir . '/nonce.lock', 'w+');
if ($lock === false) {
return false;
}
if (!flock($lock, LOCK_EX)) {
fclose($lock);
return false;
}
try {
$f = @fopen($name, 'x');
if ($f === false) {
fclose($lock);
return false;
}
fwrite($f, $provider.';'.$nonce);
fclose($f);
fclose($lock);
return true;
} catch (Exception $e) {
fclose($lock);
throw $e;
}
}
 
/**
* Removes data from the uniqueness database that is older then given date
*
* @param mixed $date date of expired data
*/
public function purgeNonces($date=null)
{
$lock = @fopen($this->_dir . '/nonce.lock', 'w+');
if ($lock !== false) {
flock($lock, LOCK_EX);
}
try {
if (!is_int($date) && !is_string($date)) {
$nonceFiles = glob($this->_dir . '/nonce_*');
foreach ((array) $nonceFiles as $name) {
@unlink($name);
}
unset($nonceFiles);
} else {
if (is_string($date)) {
$time = time($date);
} else {
$time = $date;
}
$nonceFiles = glob($this->_dir . '/nonce_*');
foreach ((array) $nonceFiles as $name) {
if (filemtime($name) < $time) {
@unlink($name);
}
}
unset($nonceFiles);
}
if ($lock !== false) {
fclose($lock);
}
} catch (Exception $e) {
if ($lock !== false) {
fclose($lock);
}
throw $e;
}
}
}
/tags/v0.3-aleaume/framework/utilitaires/DiffieHellmanUtil.php
New file
0,0 → 1,224
<?php
 
/**
* Classe utilitaire proposant des fonctions permettant la réalisation d'un
* échange de clé Diffie Hellman
*
* "En cryptographie, l'échange de clés Diffie-Hellman, du nom de ses auteurs
* Whitfield Diffie et Martin Hellman, est une méthode par laquelle deux
* personnes peuvent se mettre d'accord sur un nombre (qu'ils peuvent utiliser
* comme clé pour chiffrer la conversation suivante) sans qu'une troisième
* personne appelée Ève puisse découvrir le nombre, même en ayant écouté tous
* leurs échanges."
*
* Voir http://fr.wikipedia.org/wiki/%C3%89change_de_cl%C3%A9s_Diffie-Hellman
*
* */
class DiffieHellmanUtil {
// Default Diffie-Hellman key generator (1024 bit)
const DH_P = 'dcf93a0b883972ec0e19989ac5a2ce310e1d37717e8d9571bb7623731866e61ef75a2e27898b057f9891c2e27a639c3f29b60814581cd3b2ca3986d2683705577d45c2e7e52dc81c7a171876e5cea74b1448bfdfaf18828efd2519f14e45e3826634af1949e5b535cc829a483b8a76223e5d490a257f05bdff16f2fb22c583ab';
//Default Diffie-Hellman prime number (should be 2 or 5)
const DH_G = '02';
 
/**
* Performs the first step of a Diffie-Hellman key exchange by generating
* private and public DH values based on given prime number $p and
* generator $g. Both sides of key exchange MUST have the same prime number
* and generator. In this case they will able to create a random shared
* secret that is never send from one to the other.
*
* @param string $p prime number in binary representation
* @param string $g generator in binary representation
* @param string $priv_key private key in binary representation
* @return mixed
*/
public static function createDhKey($p, $g, $priv_key = null)
{
if (function_exists('openssl_dh_compute_key')) {
$dh_details = array(
'p' => $p,
'g' => $g
);
if ($priv_key !== null) {
$dh_details['priv_key'] = $priv_key;
}
return openssl_pkey_new(array('dh'=>$dh_details));
} else {
$bn_p = self::binToBigNum($p);
$bn_g = self::binToBigNum($g);
if ($priv_key === null) {
$priv_key = self::randomBytes(self::strlen($p));
}
$bn_priv_key = self::binToBigNum($priv_key);
if (extension_loaded('gmp')) {
$bn_pub_key = gmp_powm($bn_g, $bn_priv_key, $bn_p);
} else if (extension_loaded('bcmath')) {
$bn_pub_key = bcpowmod($bn_g, $bn_priv_key, $bn_p);
}
$pub_key = self::bigNumToBin($bn_pub_key);
 
return array(
'p' => $bn_p,
'g' => $bn_g,
'priv_key' => $bn_priv_key,
'pub_key' => $bn_pub_key,
'details' => array(
'p' => $p,
'g' => $g,
'priv_key' => $priv_key,
'pub_key' => $pub_key));
}
}
/**
* Returns an associative array with Diffie-Hellman key components in
* binary representation. The array includes original prime number 'p' and
* generator 'g', random private key 'priv_key' and corresponding public
* key 'pub_key'.
*
* @param mixed $dh Diffie-Hellman key
* @return array
*/
public static function getDhKeyDetails($dh)
{
if (function_exists('openssl_dh_compute_key')) {
$details = openssl_pkey_get_details($dh);
if (isset($details['dh'])) {
return $details['dh'];
}
} else {
return $dh['details'];
}
}
// Depuis OpenId.php, les fonctions de Diffie-Hellman
// TODO : voir si ça peut être externaliser pour être réutilisé ? => dans utilitaires
/**
* Computes the shared secret from the private DH value $dh and the other
* party's public value in $pub_key
*
* @param string $pub_key other party's public value
* @param mixed $dh Diffie-Hellman key
* @return string
* @throws Zend_OpenId_Exception
*/
public function computeDhSecret($pub_key, $dh)
{
if (function_exists('openssl_dh_compute_key')) {
$ret = openssl_dh_compute_key($pub_key, $dh);
if (ord($ret[0]) > 127) {
$ret = "\0" . $ret;
}
return $ret;
} else if (extension_loaded('gmp')) {
$bn_pub_key = self::binToBigNum($pub_key);
$bn_secret = gmp_powm($bn_pub_key, $dh['priv_key'], $dh['p']);
return self::bigNumToBin($bn_secret);
} else if (extension_loaded('bcmath')) {
$bn_pub_key = self::binToBigNum($pub_key);
$bn_secret = bcpowmod($bn_pub_key, $dh['priv_key'], $dh['p']);
return self::bigNumToBin($bn_secret);
}
/*require_once "Zend/OpenId/Exception.php";
throw new Zend_OpenId_Exception(
'The system doesn\'t have proper big integer extension',
Zend_OpenId_Exception::UNSUPPORTED_LONG_MATH);*/
trigger_error('Le système ne gère pas les nombre de taille arbitraire', E_STRICT);
}
/**
* Takes an arbitrary precision integer and returns its shortest big-endian
* two's complement representation.
*
* Arbitrary precision integers MUST be encoded as big-endian signed two's
* complement binary strings. Henceforth, "btwoc" is a function that takes
* an arbitrary precision integer and returns its shortest big-endian two's
* complement representation. All integers that are used with
* Diffie-Hellman Key Exchange are positive. This means that the left-most
* bit of the two's complement representation MUST be zero. If it is not,
* implementations MUST add a zero byte at the front of the string.
*
* @param string $str binary representation of arbitrary precision integer
* @return string big-endian signed representation
*/
public function btwoc($str)
{
if (ord($str[0]) > 127) {
return "\0" . $str;
}
return $str;
}
/**
* Produces string of random byte of given length.
*
* @param integer $len length of requested string
* @return string RAW random binary string
*/
public function randomBytes($len)
{
$key = '';
for($i=0; $i < $len; $i++) {
$key .= chr(mt_rand(0, 255));
}
return $key;
}
/**
* Returns lenght of binary string in bytes
*
* @param string $str
* @return int the string lenght
*/
static public function strlen($str)
{
if (extension_loaded('mbstring') &&
(((int)ini_get('mbstring.func_overload')) & 2)) {
return mb_strlen($str, 'latin1');
} else {
return strlen($str);
}
}
/**
* Converts binary representation into ext/gmp or ext/bcmath big integer
* representation.
*
* @param string $bin binary representation of big number
* @return mixed
* @throws Zend_OpenId_Exception
*/
protected function binToBigNum($bin)
{
if (extension_loaded('gmp')) {
return gmp_init(bin2hex($bin), 16);
} else if (extension_loaded('bcmath')) {
$bn = 0;
$len = self::strlen($bin);
for ($i = 0; $i < $len; $i++) {
$bn = bcmul($bn, 256);
$bn = bcadd($bn, ord($bin[$i]));
}
return $bn;
}
/*require_once "Zend/OpenId/Exception.php";
throw new Zend_OpenId_Exception(
'The system doesn\'t have proper big integer extension',
Zend_OpenId_Exception::UNSUPPORTED_LONG_MATH);*/
trigger_error('Le système ne gère pas les nombre de taille arbitraire', E_STRICT);
}
}
?>
/tags/v0.3-aleaume/framework/utilitaires/Encodage.php
New file
0,0 → 1,57
<?php
// declare(encoding='UTF-8');
/**
* Classe fournissant des méthodes statiques concernant l'encodage et le décodage des caractères de variable.
*
* @category PHP 5.2
* @package Utilitaire
* @author Jean-Pascal MILCENT <jpm@tela-botanica.org>
* @copyright Copyright (c) 2009, Tela Botanica (accueil@tela-botanica.org)
* @license http://www.gnu.org/licenses/gpl.html Licence GNU-GPL-v3
* @license http://www.cecill.info/licences/Licence_CeCILL_V2-fr.txt Licence CECILL-v2
* @version $Id$
* @link /doc/framework/
*/
class Encodage {
/**
* Méthode permettant d'encoder par défaut de ISO-8859-15 vers UTF-8 une variable ou un tableau de variables.
*
* @param mixed la chaine ou le tableau à encoder en UTF-8 depuis ISO-8859-15.
* @param string l'encodage d'origine si ce n'est pas ISO-8859-15.
* @return mixed la chaine ou le tableau encodé en UTF-8.
* @access protected
*/
public static function encoderEnUtf8(&$variable, $encodage = 'ISO-8859-15') {
//echo print_r($variable, true)."\n";
if (is_array($variable)) {
foreach ($variable as $c => $v) {
$variable[$c] = self::encoderEnUtf8($v);
}
} else {
// Nous vérifions si nous avons un bon encodage UTF-8
if (!is_numeric($variable) && !empty($variable) && !self::detecterUtf8($variable)) {
// Les nombres, les valeurs vides et ce qui est déjà en UTF-8 ne sont pas encodés.
$variable = mb_convert_encoding($variable, 'UTF-8', $encodage);
}
}
return $variable;
}
/**
* Méthode permettant de détecter réellement l'encodage UTF-8.
* mb_detect_encoding plante si la chaine de caractère se termine par un caractère accentué.
* Provient de PHPDIG.
*
* @param string la chaine à vérifier.
* @return bool true si c'est de UTF-8, sinon false.
* @access private
*/
public static function detecterUtf8($chaine) {
if ($chaine === mb_convert_encoding(mb_convert_encoding($chaine, 'UTF-32', 'UTF-8'), 'UTF-8', 'UTF-32')) {
return true;
} else {
return false;
}
}
}
?>
/tags/v0.3-aleaume/framework/RestClient.php
New file
0,0 → 1,152
<?php
// declare(encoding='UTF-8');
/**
* Classe client permettant d'interroger des services web REST.
*
* @category php 5.2
* @package Framework
* @author Jean-Pascal MILCENT <jpm@tela-botanica.org>
* @copyright Copyright (c) 2010, Tela Botanica (accueil@tela-botanica.org)
* @license http://www.cecill.info/licences/Licence_CeCILL_V2-fr.txt Licence CECILL
* @license http://www.gnu.org/licenses/gpl.html Licence GNU-GPL
* @version $Id$
*/
class RestClient {
const HTTP_URL_REQUETE_SEPARATEUR = '&';
private $http_methodes = array('GET', 'POST', 'PUT', 'DELETE', 'HEAD', 'OPTIONS', 'CONNECT', 'TRACE');
protected $parametres = null;
private $url = null;
private $reponse_entetes = null;
//+----------------------------------------------------------------------------------------------------------------+
// ACCESSEURS
public function getReponseEntetes($cle) {
return $this->reponse_entetes;
}
public function getParametre($cle) {
$valeur = (isset($this->parametres[$cle])) ? $this->parametres[$cle] : null;
return $valeur;
}
public function ajouterParametre($cle, $valeur) {
$this->parametres[$cle] = $valeur;
}
public function supprimerParametre($cle) {
unset($this->parametres[$cle]);
}
public function nettoyerParametres() {
$this->parametres = null;
}
//+----------------------------------------------------------------------------------------------------------------+
// MÉTHODES
public function consulter($url) {
$retour = $this->envoyerRequete($url, 'GET');
return $retour;
}
public function ajouter($url, Array $donnees) {
$retour = $this->envoyerRequete($url, 'PUT', $donnees);
return $retour;
}
public function modifier($url, Array $donnees) {
$retour = $this->envoyerRequete($url, 'POST', $donnees);
return $retour;
}
public function supprimer($url) {
$retour = $this->envoyerRequete($url, 'DELETE');
return $retour;
}
public function envoyerRequete($url, $mode, Array $donnees = array()) {
$this->url = $url;
$contenu = false;
if (! in_array($mode, $this->http_methodes)) {
$e = "Le mode de requête '$mode' n'est pas accepté!";
trigger_error($e, E_USER_WARNING);
} else {
if ($mode == 'GET') {
$this->traiterUrlParametres();
}
$contexte = stream_context_create(array(
'http' => array(
'method' => $mode,
'header' => "Content-type: application/x-www-form-urlencoded\r\n",
'content' => http_build_query($donnees, null, self::HTTP_URL_REQUETE_SEPARATEUR))));
$flux = @fopen($url, 'r', false, $contexte);
if (!$flux) {
$this->reponse_entetes = $http_response_header;
$e = "L'ouverture de l'url '$url' par la méthode HTTP '$mode' a échoué!";
trigger_error($e, E_USER_WARNING);
} else {
// Informations sur les en-têtes et métadonnées du flux
$this->reponse_entetes = stream_get_meta_data($flux);
// Contenu actuel de $url
$contenu = stream_get_contents($flux);
fclose($flux);
}
$this->traiterEntete();
}
$this->reinitialiser();
return $contenu;
}
private function traiterUrlParametres() {
$parametres = array();
if (count($this->parametres) > 0) {
foreach ($this->parametres as $cle => $valeur) {
$parametres[] = $cle.self::HTTP_URL_REQUETE_CLE_VALEUR_SEPARATEUR.$valeur;
}
$url_parametres = implode(self::HTTP_URL_REQUETE_SEPARATEUR, $parametres);
$this->url = $this->url.'?'.$url_parametres;
}
}
private function traiterEntete() {
$infos = $this->analyserEntete();
$this->traiterEnteteDebogage($infos);
}
private function analyserEntete() {
$entetes = $this->reponse_entetes;
$infos = array('date' => null, 'uri' => $this->url, 'debogages' => null);
if (isset($entetes['wrapper_data'])) {
$entetes = $entetes['wrapper_data'];
}
foreach ($entetes as $entete) {
if (preg_match('/^X_REST_DEBOGAGE_MESSAGES: (.+)$/', $entete, $match)) {
$infos['debogages'] = json_decode($match[1]);
}
if (preg_match('/^Date: .+ ([012][0-9]:[012345][0-9]:[012345][0-9]) .*$/', $entete, $match)) {
$infos['date'] = $match[1];
}
}
return $infos;
}
private function traiterEnteteDebogage($entetes_analyses) {
if (isset($entetes['debogages'])) {
$date = $entetes['date'];
$uri = $entetes['uri'];
$debogages = $entetes['debogages'];
foreach ($debogages as $debogage) {
$e = "DEBOGAGE : $date - $uri :\n$debogage";
trigger_error($e, E_USER_NOTICE);
}
}
}
private function reinitialiser() {
$this->nettoyerParametres();
}
}
/tags/v0.3-aleaume/framework/CacheSimple.php
New file
0,0 → 1,99
<?php
// declare(encoding='UTF-8');
/**
* Classe Cache permettant de mettre en cache des données de façon extremement simple.
* Le cache est stocker dans des fichiers textes.
* Le contrôle de la durée de vie du cache se fait avec la fonction PHP filemtime.
* Si la durée de vie du cache est modifiée dans le constructeur ou le fichier de config, alors la durée de vie de l'ensemble
* des fichiers de cache est modifiée en conséquence.
* Les clés pour le tableau des options et les valeurs par défaut sont indiquées dans l'attribut options de la classe.
*
* @category php 5.2
* @package Framework
* @author Jean-Pascal MILCENT <jpm@tela-botanica.org>
* @author Aurélien PERONNET <aurelien@tela-botanica.org>
* @copyright Copyright (c) 2010, Tela Botanica (accueil@tela-botanica.org)
* @license http://framework.zend.com/license/new-bsd Licence New BSD
* @license http://www.cecill.info/licences/Licence_CeCILL_V2-fr.txt Licence CECILL
* @license http://www.gnu.org/licenses/gpl.html Licence GNU-GPL
* @version $Id$
* @link /doc/framework/
*/
class CacheSimple {
private $mise_en_cache = null;
private $stockage_chemin = null;
private $duree_de_vie = null;
private $options = array(
'mise_en_cache' => 'true',
'stockage_chemin' => 'Fichier::getDossierTmp()',
'duree_de_vie' => '3600*24'
);
public function __construct($options = array()) {
extract($options);
$this->mise_en_cache = is_bool($mise_en_cache) ? $mise_en_cache : true;
if ($this->mise_en_cache) {
$this->stockage_chemin = isset($stockage_chemin) ? realpath($stockage_chemin) : Fichier::getDossierTmp();
$this->duree_de_vie = isset($duree_de_vie) ? $duree_de_vie : 3600*24;
}
}
private function initialiserOptionsParConfig() {
while (list($nom, $valeur) = each($this->options)) {
if (Config::existe($nom)) {
$this->$nom = Config::get($nom);
}
}
}
/**
* Teste si le cache est disponible pour l'id donné et (si oui) le retourne (sinon renvoie false)
*
* @param string $id l'identifiant du Cache.
* @return string|false les données en cache.
*/
public function charger($id) {
$contenu = false;
if ($this->mise_en_cache) {
$chemin_fichier_cache = $this->stockage_chemin.DS.$id.'.txt';
if (file_exists($chemin_fichier_cache ) && (time() - @filemtime($chemin_fichier_cache) < $this->duree_de_vie)) {
$contenu = file_get_contents($chemin_fichier_cache);
}
}
return $contenu;
}
/**
* Sauvegarde la chaine de données dans un fichier texte.
*
* Note : $contenu est toujours de type "string". C'est à vous de gérer la sérialisation.
*
* @param string $contenu les données à mettre en cache.
* @param string $id l'identifiant du Cache.
* @return boolean true si aucun problème
*/
public function sauver($contenu, $id) {
$ok = false;
if ($this->mise_en_cache) {
$chemin_fichier_cache = $this->stockage_chemin.DS.$id.'.txt';
if (!file_exists($chemin_fichier_cache) || (time() - @filemtime($chemin_fichier_cache) > $this->duree_de_vie)) {
$fh = fopen($chemin_fichier_cache,'w+');
if ($fh) {
if (fwrite($fh, $contenu)) {
if (fclose($fh)) {
$ok = true;
}
}
// Voir #ZF-4422 pour la raison de l'utilisation de octdec()
@chmod($chemin_fichier_cache, octdec('0777'));
}
}
}
return $ok;
}
}
?>
/tags/v0.3-aleaume/framework/OpenIdClient.php
New file
0,0 → 1,1193
<?php
/**
* La classe OpenIdClient est une implémentation d'un client OpenId, depuis une classe Zend.
* Elle permet d'établir une connexion avec un serveur, en fonction d'un identifiant OpenId.
* Elle permet de communiquer de manière sécurisée avec ce serveur, et doit aboutir a une
* identification centralisée.
* */
 
class OpenIdClient {
//OpenID 2.0 namespace. Tous les messages OpenID 2.0 DOIVENT contenir la variable openid.ns et sa valeur
const NS_2_0 = 'http://specs.openid.net/auth/2.0';
// TODO : remplacer _storage par une gestion par cache ?
/**
* Variable permettant le stockage d'informations, notammenent à propos des clés DiffieHellmann
* @var Storage $_storage
*/
protected $_storage = null;
/**
* Tableau "cache" interne permettant d'éviter des accès inutiles au fichier storage
* @var array $_cache
*/
protected $_cache = array();
 
// Client pour les requetes.
private $client;
/**
* Constructeur de l'application
* */
function __construct() {
$this->client = new Client();
$this->_storage = new StorageFile();
}
/**
* Fonction login
*
* Return true ou false
* > Ne retourne rien si true car redirige vers l'adresse du serveur OID
* */
//FIXME : le paramètre immediate ?
// A vérifier mais ça doit permettre de passer directement le mot de passe. Il reste plus qu'à trouver le nom de la variable mot de passe.
function login($id, $immediate = false) {
// L'original retourne la fonction checkId, avec le parametre immediate = true
// Je ne comprends pas l'utilité, je fusionne les deux pour l'instant
// FIXME : si pas de comportement étrange, valider.
//Tests et arrêt si non validé :
//Normaliser (traite si XRI ou URL, normalize URL)
//FIXME : voir avec JP pour équivalent dans framework
if (!$this->normalize($id)) {
return false;
}
//Discovery
// Récupérer les informations sur le serveur OPEN ID
/*
FIXME : ca change la valeur de l'id !!!
if (!$this->_discovery($id, $server, $version)) {
trigger_error('Discovery failed');
return false;
}*/
$retour_url = $this->client->consulter($id);
//Le retour contient les balises suivantes :
/*
*
* <link rel="openid.server" href="http://www.myopenid.com/server" />
* <link rel="openid2.provider" href="http://www.myopenid.com/server" />
*/
$metaServeur = $this->verifierVersion($retour_url);
//TODO : Voir avec JP : la classe client ne permet pas de vérifer le statut ??
if ($retour_url === false) {
trigger_error('L\'adresse $id est inacessible', E_USER_ERROR);
return false;
}
if ($metaServeur === false) {
return false;
}
if (!$this->_associate($metaServeur['serveur'], $metaServeur['version'])) {
trigger_error('Impossible de s\'associer avec le serveur');
}
/*TODO : fonctionnement différent
if (!$this->_getAssociation(
$server,
$handle,
$macFunc,
$secret,
$expires)) {
/* Use dumb mode *
unset($handle);
unset($macFunc);
unset($secret);
unset($expires);*
}*/
 
//on a la version, l'adresse du serveur et le realId si c'est une 2.0 dans metaServeur
if (isset($metaServeur['realId'])) {
$id = $metaServeur['realId'];
}
//Associate
//getAssociation
//Organisation des paramètres :
$params = array();
if ($metaServeur['version'] >= 2.0) {
$params['openid.ns'] = self::NS_2_0;
}
 
$params['openid.mode'] = $immediate ?
'checkid_immediate' : 'checkid_setup';
 
$params['openid.identity'] = $id;
 
//FIXME : Ex : $params['openid.claimed_id'] = $claimedId; > jvois pas l'intéret
$params['openid.claimed_id'] = $id;
/*
* TODO : gérer les sessions et namespace
* if ($metaServeur['version'] <= 2.0) {
if ($this->_session !== null) {
$this->_session->identity = $id;
$this->_session->claimed_id = $claimedId;
} else if (defined('SID')) {
$_SESSION["zend_openid"] = array(
"identity" => $id,
"claimed_id" => $claimedId);
} else {
require_once "Zend/Session/Namespace.php";
$this->_session = new Zend_Session_Namespace("zend_openid");
$this->_session->identity = $id;
$this->_session->claimed_id = $claimedId;
}
}*/
 
if (isset($handle)) {
$params['openid.assoc_handle'] = $handle;
}
 
//FIXME : $params['openid.return_to'] = $this->absoluteUrl($returnTo);
$params['openid.return_to'] = $this->absoluteUrl(null);
 
if (empty($root)) {
$root = $this->selfUrl();
if ($root[strlen($root)-1] != '/') {
$root = dirname($root);
}
}
if ($metaServeur['version'] >= 2.0) {
$params['openid.realm'] = $root;
} else {
$params['openid.trust_root'] = $root;
}
 
/*FIXME ::
if (!Zend_OpenId_Extension::forAll($extensions, 'prepareRequest', $params)) {
$this->_setError("Extension::prepareRequest failure");
return false;
}*/
 
$this->redirect($metaServeur['serveur'], $params);
return true;
//Renvoyer vers l'url
}
/**
* Verifies authentication response from OpenID server.
*
* This is the second step of OpenID authentication process.
* The function returns true on successful authentication and false on
* failure.
*
* @param array $params HTTP query data from OpenID server
* @param string &$identity this argument is set to end-user's claimed
* identifier or OpenID provider local identifier.
* @param mixed $extensions extension object or array of extensions objects
* @return bool
*/
public function verify($params, &$identity = "", $extensions = null)
{
if (isset($params['openid_ns']) &&
$params['openid_ns'] == $this->NS_2_0) {
$version = 2.0;
}
 
if (isset($params["openid_claimed_id"])) {
$identity = $params["openid_claimed_id"];
} else if (isset($params["openid_identity"])){
$identity = $params["openid_identity"];
} else {
$identity = "";
}
 
if ($version < 2.0 && !isset($params["openid_claimed_id"])) {
if ($this->_session !== null) {
if ($this->_session->identity === $identity) {
$identity = $this->_session->claimed_id;
}
} else if (defined('SID')) {
if (isset($_SESSION["zend_openid"]["identity"]) &&
isset($_SESSION["zend_openid"]["claimed_id"]) &&
$_SESSION["zend_openid"]["identity"] === $identity) {
$identity = $_SESSION["zend_openid"]["claimed_id"];
}
} else {
require_once "Zend/Session/Namespace.php";
$this->_session = new Zend_Session_Namespace("zend_openid");
if ($this->_session->identity === $identity) {
$identity = $this->_session->claimed_id;
}
}
}
 
if (empty($params['openid_mode'])) {
$this->_setError("Missing openid.mode");
return false;
}
if (empty($params['openid_return_to'])) {
$this->_setError("Missing openid.return_to");
return false;
}
if (empty($params['openid_signed'])) {
$this->_setError("Missing openid.signed");
return false;
}
if (empty($params['openid_sig'])) {
$this->_setError("Missing openid.sig");
return false;
}
if ($params['openid_mode'] != 'id_res') {
$this->_setError("Wrong openid.mode '".$params['openid_mode']."' != 'id_res'");
return false;
}
if (empty($params['openid_assoc_handle'])) {
$this->_setError("Missing openid.assoc_handle");
return false;
}
if ($params['openid_return_to'] != $this->selfUrl()) {
/* Ignore query part in openid.return_to */
$pos = strpos($params['openid_return_to'], '?');
if ($pos === false ||
SUBSTR($params['openid_return_to'], 0 , $pos) != $this->selfUrl()) {
 
/*$this->_setError("Wrong openid.return_to '".
$params['openid_return_to']."' != '" . $this->selfUrl() ."'");*/
trigger_error('Wrong openid.return_to', E_USER_ERROR);
return false;
}
}
 
if ($version >= 2.0) {
if (empty($params['openid_response_nonce'])) {
trigger_error('Missing openid.response_nonce', E_USER_ERROR);
return false;
}
if (empty($params['openid_op_endpoint'])) {
trigger_error('Missing openid.op_endpoint', E_USER_ERROR);
return false;
/* OpenID 2.0 (11.3) Checking the Nonce */
} else if (!$this->_storage->isUniqueNonce($params['openid_op_endpoint'], $params['openid_response_nonce'])) {
trigger_error('Duplicate openid.response_nonce', E_USER_ERROR);
return false;
}
}
 
if (!empty($params['openid_invalidate_handle'])) {
if ($this->_storage->getAssociationByHandle(
$params['openid_invalidate_handle'],
$url,
$macFunc,
$secret,
$expires)) {
$this->_storage->delAssociation($url);
}
}
 
if ($this->_storage->getAssociationByHandle(
$params['openid_assoc_handle'],
$url,
$macFunc,
$secret,
$expires)) {
$signed = explode(',', $params['openid_signed']);
$data = '';
foreach ($signed as $key) {
$data .= $key . ':' . $params['openid_' . strtr($key,'.','_')] . "\n";
}
if (base64_decode($params['openid_sig']) ==
Zend_OpenId::hashHmac($macFunc, $data, $secret)) {
/*
* FIXME dépendance je sais pas pour quoi : a voir :
* if (!Zend_OpenId_Extension::forAll($extensions, 'parseResponse', $params)) {
$this->_setError("Extension::parseResponse failure");
return false;
}*/
/* OpenID 2.0 (11.2) Verifying Discovered Information */
if (isset($params['openid_claimed_id'])) {
$id = $params['openid_claimed_id'];
if (!$this->normalize($id)) {
$this->_setError("Normalization failed");
return false;
} else if (!$this->_discovery($id, $discovered_server, $discovered_version)) {
$this->_setError("Discovery failed: " . $this->getError());
return false;
} else if ((!empty($params['openid_identity']) &&
$params["openid_identity"] != $id) ||
(!empty($params['openid_op_endpoint']) &&
$params['openid_op_endpoint'] != $discovered_server) ||
$discovered_version != $version) {
$this->_setError("Discovery information verification failed");
return false;
}
}
return true;
}
$this->_storage->delAssociation($url);
$this->_setError("Signature check failed");
return false;
}
else
{
/* Use dumb mode */
if (isset($params['openid_claimed_id'])) {
$id = $params['openid_claimed_id'];
} else if (isset($params['openid_identity'])) {
$id = $params['openid_identity'];
} else {
$this->_setError("Missing openid.claimed_id and openid.identity");
return false;
}
 
if (!$this->normalize($id)) {
trigger_error('Normalization failed', E_USER_ERROR);
return false;
} else if (!$this->_discovery($id, $server, $discovered_version)) {
trigger_error('Discovery failed', E_USER_ERROR);
return false;
}
 
/* OpenID 2.0 (11.2) Verifying Discovered Information */
if ((isset($params['openid_identity']) &&
$params["openid_identity"] != $id) ||
(isset($params['openid_op_endpoint']) &&
$params['openid_op_endpoint'] != $server) ||
$discovered_version != $version) {
trigger_error('Discovery information verification failed', E_USER_ERROR);
return false;
}
 
$params2 = array();
foreach ($params as $key => $val) {
if (strpos($key, 'openid_ns_') === 0) {
$key = 'openid.ns.' . substr($key, strlen('openid_ns_'));
} else if (strpos($key, 'openid_sreg_') === 0) {
$key = 'openid.sreg.' . substr($key, strlen('openid_sreg_'));
} else if (strpos($key, 'openid_') === 0) {
$key = 'openid.' . substr($key, strlen('openid_'));
}
$params2[$key] = $val;
}
$params2['openid.mode'] = 'check_authentication';
$ret = $this->client->modifier($serveur, $params2);
//_httpRequest($server, 'POST', $params2, $status);
if ($ret === false) {
trigger_error("'Dumb' signature verification HTTP request failed", E_USER_ERROR);
return false;
}
$r = array();
if (is_string($ret)) {
foreach(explode("\n", $ret) as $line) {
$line = trim($line);
if (!empty($line)) {
$x = explode(':', $line, 2);
if (is_array($x) && count($x) == 2) {
list($key, $value) = $x;
$r[trim($key)] = trim($value);
}
}
}
}
$ret = $r;
if (!empty($ret['invalidate_handle'])) {
if ($this->_storage->getAssociationByHandle(
$ret['invalidate_handle'],
$url,
$macFunc,
$secret,
$expires)) {
$this->_storage->delAssociation($url);
}
}
if (isset($ret['is_valid']) && $ret['is_valid'] == 'true') {
if (!Zend_OpenId_Extension::forAll($extensions, 'parseResponse', $params)) {
$this->_setError("Extension::parseResponse failure");
return false;
}
return true;
}
$this->_setError("'Dumb' signature verification failed");
return false;
}
}
/**
* Performs discovery of identity and finds OpenID URL, OpenID server URL
* and OpenID protocol version. Returns true on succees and false on
* failure.
*
* @param string &$id OpenID identity URL
* @param string &$server OpenID server URL
* @param float &$version OpenID protocol version
* @return bool
* @todo OpenID 2.0 (7.3) XRI and Yadis discovery
*/
protected function _discovery(&$id, &$server, &$version)
{
$realId = $id;
if ($this->_storage->getDiscoveryInfo(
$id,
$realId,
$server,
$version,
$expire)) {
$id = $realId;
return true;
}
/* TODO: OpenID 2.0 (7.3) XRI and Yadis discovery */
 
/* HTML-based discovery */
$clientDiscovery = new Client();
//TODO : rajouter un test sur le statut de la réponse
// Nécessite la prise en compte des entetes dans le framework
/*if ($status != 200 || !is_string($response)) {
return false;
}*/
$reponse = $clientDiscovery->consulter($id);
$metaServeur = $this->verifierVersion($reponse);
if (!isset($metaServeur) || empty($reponse)) {
trigger_error('Aucune donnée OpenId', E_USER_ERROR);
return false;
}
$expire = time() + 60 * 60;
$this->_storage->addDiscoveryInfo($id, $metaServeur['realId'], $metaServeur['serveur'], $metaServeur['version'], $expire);
if (!empty($metaServeur['realId'])) {
$id = $metaServeur['realId'];
}
return true;
}
//Parser l'HTML de réponse pour trouver la version du serveur OPEN ID
function verifierVersion($reponseHtml) {
// TODO : remplacer l'arlgorythme suivant par cette solution :
//1. Chercher l'existence d'une balise openidN.provider
//2. Déterminer la version en fonction de la chaine : openid2.provider => 2.0; openid.provider => 1.1
//3. Récupérer l'url du serveur href="serveur"
//4. SI 2.0, récupérer la valeur réelle de l'ID
//TODO : penser à tester les deux versions du serveur
$metaServeur = Array();
if (preg_match(
'/<link[^>]*rel=(["\'])[ \t]*(?:[^ \t"\']+[ \t]+)*?openid2.provider[ \t]*[^"\']*\\1[^>]*href=(["\'])([^"\']+)\\2[^>]*\/?>/i',
$reponseHtml,
$r)) {
$metaServeur['version'] = 2.0;
$metaServeur['serveur'] = $r[3];
} else if (preg_match(
'/<link[^>]*href=(["\'])([^"\']+)\\1[^>]*rel=(["\'])[ \t]*(?:[^ \t"\']+[ \t]+)*?openid2.provider[ \t]*[^"\']*\\3[^>]*\/?>/i',
$reponseHtml,
$r)) {
$metaServeur['version'] = 2.0;
$metaServeur['serveur'] = $r[1];
} else if (preg_match(
'/<link[^>]*rel=(["\'])[ \t]*(?:[^ \t"\']+[ \t]+)*?openid.server[ \t]*[^"\']*\\1[^>]*href=(["\'])([^"\']+)\\2[^>]*\/?>/i',
$reponseHtml,
$r)) {
$metaServeur['version'] = 1.1;
$metaServeur['serveur'] = $r[3];
} else if (preg_match(
'/<link[^>]*href=(["\'])([^"\']+)\\1[^>]*rel=(["\'])[ \t]*(?:[^ \t"\']+[ \t]+)*?openid.server[ \t]*[^"\']*\\3[^>]*\/?>/i',
$reponseHtml,
$r)) {
$metaServeur['version'] = 1.1;
$metaServeur['serveur'] = $r[2];
} else {
return false;
}
if ($metaServeur['version'] >= 2.0) {
if (preg_match(
'/<link[^>]*rel=(["\'])[ \t]*(?:[^ \t"\']+[ \t]+)*?openid2.local_id[ \t]*[^"\']*\\1[^>]*href=(["\'])([^"\']+)\\2[^>]*\/?>/i',
$reponseHtml,
$r)) {
$metaServeur['realId'] = $r[3];
} else if (preg_match(
'/<link[^>]*href=(["\'])([^"\']+)\\1[^>]*rel=(["\'])[ \t]*(?:[^ \t"\']+[ \t]+)*?openid2.local_id[ \t]*[^"\']*\\3[^>]*\/?>/i',
$reponseHtml,
$r)) {
$metaServeur['realId'] = $r[2];
}
} else {
if (preg_match(
'/<link[^>]*rel=(["\'])[ \t]*(?:[^ \t"\']+[ \t]+)*?openid.delegate[ \t]*[^"\']*\\1[^>]*href=(["\'])([^"\']+)\\2[^>]*\/?>/i',
$reponseHtml,
$r)) {
$metaServeur['realId'] = $r[3];
} else if (preg_match(
'/<link[^>]*href=(["\'])([^"\']+)\\1[^>]*rel=(["\'])[ \t]*(?:[^ \t"\']+[ \t]+)*?openid.delegate[ \t]*[^"\']*\\3[^>]*\/?>/i',
$reponseHtml,
$r)) {
$metaServeur['realId'] = $r[2];
}
}
return $metaServeur;
}
/**
* Create (or reuse existing) association between OpenID consumer and
* OpenID server based on Diffie-Hellman key agreement. Returns true
* on success and false on failure.
*
* @param string $url OpenID server url
* @param float $version OpenID protocol version
* @param string $priv_key for testing only
* @return bool
*/
protected function _associate($url, $version, $priv_key=null)
{
/* Check if we already have association in chace or storage */
/*
* TODO : Utiliser le stockage plutot
* */
if ($this->_getAssociation(
$url,
$handle,
$macFunc,
$secret,
$expires)) {
return true;
}
 
/*
* TODO : utiliser le fichier de config
* if ($this->_dumbMode) {
return true;
}*/
 
$params = array();
 
if ($version >= 2.0) {
$params = array(
'openid.ns' => $this->NS_2_0,
'openid.mode' => 'associate',
'openid.assoc_type' => 'HMAC-SHA256',
'openid.session_type' => 'DH-SHA256',
);
} else {
$params = array(
'openid.mode' => 'associate',
'openid.assoc_type' => 'HMAC-SHA1',
'openid.session_type' => 'DH-SHA1',
);
}
 
$dh = DiffieHellmanUtil::createDhKey(pack('H*', DiffieHellmanUtil::DH_P),
pack('H*', DiffieHellmanUtil::DH_G),
$priv_key);
$dh_details = DiffieHellmanUtil::getDhKeyDetails($dh);
 
$params['openid.dh_modulus'] = base64_encode(
DiffieHellmanUtil::btwoc($dh_details['p']));
$params['openid.dh_gen'] = base64_encode(
DiffieHellmanUtil::btwoc($dh_details['g']));
$params['openid.dh_consumer_public'] = base64_encode(
DiffieHellmanUtil::btwoc($dh_details['pub_key']));
 
while(1) {
//FIXME : c'est pas une modification ...
$ret = $this->client->modifier($url, $params); // FIXME : a quoi sert status ?, $status);
if ($ret === false) {
//$this->_setError("HTTP request failed");
trigger_error('La requête a échoué', E_USER_ERROR);
return false;
}
 
$r = array();
$bad_response = false;
foreach(explode("\n", $ret) as $line) {
$line = trim($line);
if (!empty($line)) {
$x = explode(':', $line, 2);
if (is_array($x) && count($x) == 2) {
list($key, $value) = $x;
$r[trim($key)] = trim($value);
} else {
$bad_response = true;
}
}
}
if ($bad_response && strpos($ret, 'Unknown session type') !== false) {
$r['error_code'] = 'unsupported-type';
}
$ret = $r;
 
if (isset($ret['error_code']) &&
$ret['error_code'] == 'unsupported-type') {
if ($params['openid.session_type'] == 'DH-SHA256') {
$params['openid.session_type'] = 'DH-SHA1';
$params['openid.assoc_type'] = 'HMAC-SHA1';
} else if ($params['openid.session_type'] == 'DH-SHA1') {
$params['openid.session_type'] = 'no-encryption';
} else {
trigger_error("The OpenID service responded with: " . $ret['error_code'], E_USER_ERROR);
return false;
}
} else {
break;
}
}
 
/*
FIXME : gestion du statut avec la classe client ??
if ($status != 200) {
$this->_setError("The server responded with status code: " . $status);
return false;
}*/
 
if ($version >= 2.0 &&
isset($ret['ns']) &&
$ret['ns'] != $this->NS_2_0) {
$this->_setError("Wrong namespace definition in the server response");
return false;
}
 
if (!isset($ret['assoc_handle']) ||
!isset($ret['expires_in']) ||
!isset($ret['assoc_type']) ||
$params['openid.assoc_type'] != $ret['assoc_type']) {
if ($params['openid.assoc_type'] != $ret['assoc_type']) {
$this->_setError("The returned assoc_type differed from the supplied openid.assoc_type");
} else {
$this->_setError("Missing required data from provider (assoc_handle, expires_in, assoc_type are required)");
}
return false;
}
 
$handle = $ret['assoc_handle'];
$expiresIn = $ret['expires_in'];
 
if ($ret['assoc_type'] == 'HMAC-SHA1') {
$macFunc = 'sha1';
} else if ($ret['assoc_type'] == 'HMAC-SHA256' &&
$version >= 2.0) {
$macFunc = 'sha256';
} else {
$this->_setError("Unsupported assoc_type");
return false;
}
 
if ((empty($ret['session_type']) ||
($version >= 2.0 && $ret['session_type'] == 'no-encryption')) &&
isset($ret['mac_key'])) {
$secret = base64_decode($ret['mac_key']);
} else if (isset($ret['session_type']) &&
$ret['session_type'] == 'DH-SHA1' &&
!empty($ret['dh_server_public']) &&
!empty($ret['enc_mac_key'])) {
$dhFunc = 'sha1';
} else if (isset($ret['session_type']) &&
$ret['session_type'] == 'DH-SHA256' &&
$version >= 2.0 &&
!empty($ret['dh_server_public']) &&
!empty($ret['enc_mac_key'])) {
$dhFunc = 'sha256';
} else {
$this->_setError("Unsupported session_type");
return false;
}
if (isset($dhFunc)) {
$serverPub = base64_decode($ret['dh_server_public']);
$dhSec = DiffieHellmanUtil::computeDhSecret($serverPub, $dh);
if ($dhSec === false) {
$this->_setError("DH secret comutation failed");
return false;
}
$sec = $this->digest($dhFunc, $dhSec);
if ($sec === false) {
$this->_setError("Could not create digest");
return false;
}
$secret = $sec ^ base64_decode($ret['enc_mac_key']);
}
if ($macFunc == 'sha1') {
if (DiffieHellmanUtil::strlen($secret) != 20) {
$this->_setError("The length of the sha1 secret must be 20");
return false;
}
} else if ($macFunc == 'sha256') {
if (DiffieHellmanUtil::strlen($secret) != 32) {
$this->_setError("The length of the sha256 secret must be 32");
return false;
}
}
$this->_addAssociation(
$url,
$handle,
$macFunc,
$secret,
time() + $expiresIn);
/* $this->association['url'] = $url;
$this->association['handle'] = $handle;
$this->association['macFunc'] = $macFunc;
$this->association['secret'] = $secret;
$this->association['expiresIn'] = time() + $expiresIn;*/
return true;
}
/**
* Store assiciation in internal chace and external storage
*
* @param string $url OpenID server url
* @param string $handle association handle
* @param string $macFunc HMAC function (sha1 or sha256)
* @param string $secret shared secret
* @param integer $expires expiration UNIX time
* @return void
*/
protected function _addAssociation($url, $handle, $macFunc, $secret, $expires)
{
$this->_cache[$url] = array($handle, $macFunc, $secret, $expires);
return $this->_storage->addAssociation(
$url,
$handle,
$macFunc,
$secret,
$expires);
}
/**
* Retrive assiciation information for given $url from internal cahce or
* external storage
*
* @param string $url OpenID server url
* @param string &$handle association handle
* @param string &$macFunc HMAC function (sha1 or sha256)
* @param string &$secret shared secret
* @param integer &$expires expiration UNIX time
* @return void
*/
protected function _getAssociation($url, &$handle, &$macFunc, &$secret, &$expires)
{
if (isset($this->_cache[$url])) {
$handle = $this->_cache[$url][0];
$macFunc = $this->_cache[$url][1];
$secret = $this->_cache[$url][2];
$expires = $this->_cache[$url][3];
return true;
}
if ($this->_storage->getAssociation(
$url,
$handle,
$macFunc,
$secret,
$expires)) {
$this->_cache[$url] = array($handle, $macFunc, $secret, $expires);
return true;
}
return false;
}
/**
* Normalizes URL according to RFC 3986 to use it in comparison operations.
* The function gets URL argument by reference and modifies it.
* It returns true on success and false of failure.
*
* @param string &$id url to be normalized
* @return bool
*/
static public function normalizeUrl(&$id)
{
// RFC 3986, 6.2.2. Syntax-Based Normalization
 
// RFC 3986, 6.2.2.2 Percent-Encoding Normalization
$i = 0;
$n = strlen($id);
$res = '';
while ($i < $n) {
if ($id[$i] == '%') {
if ($i + 2 >= $n) {
return false;
}
++$i;
if ($id[$i] >= '0' && $id[$i] <= '9') {
$c = ord($id[$i]) - ord('0');
} else if ($id[$i] >= 'A' && $id[$i] <= 'F') {
$c = ord($id[$i]) - ord('A') + 10;
} else if ($id[$i] >= 'a' && $id[$i] <= 'f') {
$c = ord($id[$i]) - ord('a') + 10;
} else {
return false;
}
++$i;
if ($id[$i] >= '0' && $id[$i] <= '9') {
$c = ($c << 4) | (ord($id[$i]) - ord('0'));
} else if ($id[$i] >= 'A' && $id[$i] <= 'F') {
$c = ($c << 4) | (ord($id[$i]) - ord('A') + 10);
} else if ($id[$i] >= 'a' && $id[$i] <= 'f') {
$c = ($c << 4) | (ord($id[$i]) - ord('a') + 10);
} else {
return false;
}
++$i;
$ch = chr($c);
if (($ch >= 'A' && $ch <= 'Z') ||
($ch >= 'a' && $ch <= 'z') ||
$ch == '-' ||
$ch == '.' ||
$ch == '_' ||
$ch == '~') {
$res .= $ch;
} else {
$res .= '%';
if (($c >> 4) < 10) {
$res .= chr(($c >> 4) + ord('0'));
} else {
$res .= chr(($c >> 4) - 10 + ord('A'));
}
$c = $c & 0xf;
if ($c < 10) {
$res .= chr($c + ord('0'));
} else {
$res .= chr($c - 10 + ord('A'));
}
}
} else {
$res .= $id[$i++];
}
}
 
if (!preg_match('|^([^:]+)://([^:@]*(?:[:][^@]*)?@)?([^/:@?#]*)(?:[:]([^/?#]*))?(/[^?#]*)?((?:[?](?:[^#]*))?)((?:#.*)?)$|', $res, $reg)) {
return false;
}
$scheme = $reg[1];
$auth = $reg[2];
$host = $reg[3];
$port = $reg[4];
$path = $reg[5];
$query = $reg[6];
$fragment = $reg[7]; /* strip it */
 
if (empty($scheme) || empty($host)) {
return false;
}
 
// RFC 3986, 6.2.2.1. Case Normalization
$scheme = strtolower($scheme);
$host = strtolower($host);
 
// RFC 3986, 6.2.2.3. Path Segment Normalization
if (!empty($path)) {
$i = 0;
$n = strlen($path);
$res = "";
while ($i < $n) {
if ($path[$i] == '/') {
++$i;
while ($i < $n && $path[$i] == '/') {
++$i;
}
if ($i < $n && $path[$i] == '.') {
++$i;
if ($i < $n && $path[$i] == '.') {
++$i;
if ($i == $n || $path[$i] == '/') {
if (($pos = strrpos($res, '/')) !== false) {
$res = substr($res, 0, $pos);
}
} else {
$res .= '/..';
}
} else if ($i != $n && $path[$i] != '/') {
$res .= '/.';
}
} else {
$res .= '/';
}
} else {
$res .= $path[$i++];
}
}
$path = $res;
}
 
// RFC 3986,6.2.3. Scheme-Based Normalization
if ($scheme == 'http') {
if ($port == 80) {
$port = '';
}
} else if ($scheme == 'https') {
if ($port == 443) {
$port = '';
}
}
if (empty($path)) {
$path = '/';
}
 
$id = $scheme
. '://'
. $auth
. $host
. (empty($port) ? '' : (':' . $port))
. $path
. $query;
return true;
}
 
/**
* Normaliser l'identifiant OpenId qui peut être une URL ou nom XRI
* Retourne true ou false en cas d'erreur.
*
* Règles de normalisation :
* 1. If the user's input starts with one of the "xri://", "xri://$ip*",
* or "xri://$dns*" prefixes, they MUST be stripped off, so that XRIs
* are used in the canonical form, and URI-authority XRIs are further
* considered URL identifiers.
* 2. If the first character of the resulting string is an XRI Global
* Context Symbol ("=", "@", "+", "$", "!"), then the input SHOULD be
* treated as an XRI.
* 3. Otherwise, the input SHOULD be treated as an http URL; if it does
* not include a "http" or "https" scheme, the Identifier MUST be
* prefixed with the string "http://".
* 4. URL identifiers MUST then be further normalized by both following
* redirects when retrieving their content and finally applying the
* rules in Section 6 of [RFC3986] to the final destination URL.
* @param string &$id identifier to be normalized
* @return bool
*/
static public function normalize(&$id)
{
$id = trim($id);
if (strlen($id) === 0) {
return true;
}
 
// 7.2.1
if (strpos($id, 'xri://$ip*') === 0) {
$id = substr($id, strlen('xri://$ip*'));
} else if (strpos($id, 'xri://$dns*') === 0) {
$id = substr($id, strlen('xri://$dns*'));
} else if (strpos($id, 'xri://') === 0) {
$id = substr($id, strlen('xri://'));
}
 
// 7.2.2
if ($id[0] == '=' ||
$id[0] == '@' ||
$id[0] == '+' ||
$id[0] == '$' ||
$id[0] == '!') {
return true;
}
 
// 7.2.3
if (strpos($id, "://") === false) {
$id = 'http://' . $id;
}
 
// 7.2.4
return self::normalizeURL($id);
}
/**
* Generates a hash value (message digest) according to given algorithm.
* It returns RAW binary string.
*
* This is a wrapper function that uses one of available internal function
* dependent on given PHP configuration. It may use various functions from
* ext/openssl, ext/hash, ext/mhash or ext/standard.
*
* @param string $func digest algorithm
* @param string $data data to sign
* @return string RAW digital signature
* @throws Zend_OpenId_Exception
*/
public function digest($func, $data)
{
if (function_exists('openssl_digest')) {
return openssl_digest($data, $func, true);
} else if (function_exists('hash')) {
return hash($func, $data, true);
} else if ($func === 'sha1') {
return sha1($data, true);
} else if ($func === 'sha256') {
if (function_exists('mhash')) {
return mhash(MHASH_SHA256 , $data);
}
}
/*require_once "Zend/OpenId/Exception.php";
throw new Zend_OpenId_Exception(
'Unsupported digest algorithm "' . $func . '".',
Zend_OpenId_Exception::UNSUPPORTED_DIGEST);*/
trigger_error('Unsupported digest algorithm '.$func , E_USER_ERROR);
}
/**
* Returns a full URL that was requested on current HTTP request.
*
* @return string
*/
public function selfUrl()
{
/*FIXME :
* if ($this->$selfUrl !== null) {
return $this->$selfUrl;
} */
if (isset($_SERVER['SCRIPT_URI'])) {
return $_SERVER['SCRIPT_URI'];
}
$url = '';
$port = '';
if (isset($_SERVER['HTTP_HOST'])) {
if (($pos = strpos($_SERVER['HTTP_HOST'], ':')) === false) {
if (isset($_SERVER['SERVER_PORT'])) {
$port = ':' . $_SERVER['SERVER_PORT'];
}
$url = $_SERVER['HTTP_HOST'];
} else {
$url = substr($_SERVER['HTTP_HOST'], 0, $pos);
$port = substr($_SERVER['HTTP_HOST'], $pos);
}
} else if (isset($_SERVER['SERVER_NAME'])) {
$url = $_SERVER['SERVER_NAME'];
if (isset($_SERVER['SERVER_PORT'])) {
$port = ':' . $_SERVER['SERVER_PORT'];
}
}
if (isset($_SERVER['HTTPS']) && $_SERVER['HTTPS'] == 'on') {
$url = 'https://' . $url;
if ($port == ':443') {
$port = '';
}
} else {
$url = 'http://' . $url;
if ($port == ':80') {
$port = '';
}
}
 
$url .= $port;
if (isset($_SERVER['HTTP_X_REWRITE_URL'])) {
$url .= $_SERVER['HTTP_X_REWRITE_URL'];
} elseif (isset($_SERVER['REQUEST_URI'])) {
$query = strpos($_SERVER['REQUEST_URI'], '?');
if ($query === false) {
$url .= $_SERVER['REQUEST_URI'];
} else {
$url .= substr($_SERVER['REQUEST_URI'], 0, $query);
}
} else if (isset($_SERVER['SCRIPT_URL'])) {
$url .= $_SERVER['SCRIPT_URL'];
} else if (isset($_SERVER['REDIRECT_URL'])) {
$url .= $_SERVER['REDIRECT_URL'];
} else if (isset($_SERVER['PHP_SELF'])) {
$url .= $_SERVER['PHP_SELF'];
} else if (isset($_SERVER['SCRIPT_NAME'])) {
$url .= $_SERVER['SCRIPT_NAME'];
if (isset($_SERVER['PATH_INFO'])) {
$url .= $_SERVER['PATH_INFO'];
}
}
return $url;
}
//TODO : vérifier si les fonctions FWK & ZEND sont bien équivalente
/**
* Retourne l'url absolue d'une url donnée
*
* @param string $url absilute or relative URL
* @return string
*/
public function absoluteUrl($url)
{
if (!empty($ur)) {
$urlAbsolue = new Url($url);
$urlAbsolue->normaliser();
$url = $urlAbsolue->getUrl();
} else {
$url = $this->selfUrl();
}
return $url;
/*
if (empty($url)) {
return $this->selfUrl();
} else if (!preg_match('|^([^:]+)://|', $url)) {
if (preg_match('|^([^:]+)://([^:@]*(?:[:][^@]*)?@)?([^/:@?#]*)(?:[:]([^/?#]*))?(/[^?]*)?((?:[?](?:[^#]*))?(?:#.*)?)$|', $this->selfUrl(), $reg)) {
$scheme = $reg[1];
$auth = $reg[2];
$host = $reg[3];
$port = $reg[4];
$path = $reg[5];
$query = $reg[6];
if ($url[0] == '/') {
return $scheme
. '://'
. $auth
. $host
. (empty($port) ? '' : (':' . $port))
. $url;
} else {
$dir = dirname($path);
return $scheme
. '://'
. $auth
. $host
. (empty($port) ? '' : (':' . $port))
. (strlen($dir) > 1 ? $dir : '')
. '/'
. $url;
}
}
}
return $url;*/
}
//TODO : voir si on ne peut pas glisser ça dans client ?
//FIXME : je met une fonction SIMPLISSIME a améliorer et reécrire
// La fonction de Zend est plus poussée est prend en compte le cas ou l'header ne peut pas etre envoyé
/**
* Rediriger vers la page du serveur avec les paramètres de confiration
*
* @param string $url URL de retour
* @param array $params paramètres additionnels
*/
public function redirect($url, $params) {
//1. fabriquer l'url Get
$urlRedirection = new Url($url);
$urlRedirection->setRequete($params);
//echo $urlRedirection->getUrl();
try {
header('Location:'.$urlRedirection->getUrl());
} catch (Exception $e) {
//TODO : voir autres méthodes de redirection
// > balise META
// > formulaire HTML
// > JS
}
}
}
?>
/tags/v0.3-aleaume/framework/I18n.php
New file
0,0 → 1,235
<?php
// declare(encoding='UTF-8');
/**
* I18n permet de traduire une application à partir de données stockées dans des fichiers ini.
* Si vous souhaitez utiliser le fonctionnement par défaut vous devrez :
* - déposer les fichiers ini dans le dossier définit par la variable de config "chemin_i18n".
* - nommer les fichiers selon la forme "locale.ini" (Ex.: fr.ini ou fr_CH.ini ).
*
* Elle offre l'accès en lecture seule aux paramètres des fichiers ini.
* C'est une Singleton. Une seule classe de traduction peut être instanciée par Application.
*
* @category PHP 5.2
* @package Framework
* @author Jean-Pascal MILCENT <jpm@tela-botanica.org>
* @copyright Copyright (c) 2010, Tela Botanica (accueil@tela-botanica.org)
* @license http://www.cecill.info/licences/Licence_CeCILL_V2-fr.txt Licence CECILL
* @license http://www.gnu.org/licenses/gpl.html Licence GNU-GPL
* @since 0.3
* @version $Id$
* @link /doc/framework/
*/
class I18n {
/** Format de traduction utilisant les fichier .ini */
const FORMAT_INI = '.ini';
/** Instance de la classe pointant sur elle même (pour le pattern singleton) */
private static $instance = null;
/** Fichiers de traduction disponibles. */
private static $traductions = array();
/** Langue courrante utilisée par l'application. */
private static $langue = null;
/** Tableau des noms des paramètres à définir dans le fichier de config car obligatoirement nécessaire à cette classe.*/
private static $parametres_obligatoires = array('chemin_i18n', 'i18n_url_parametre', 'i18n_langue_defaut', 'debogage');
private function __construct() {
Config::verifierPresenceParametres(self::$parametres_obligatoires);
self::trouverLangue();
}
/**
* Accesseur pour la valeur d'une traduction
* @param string $param le nom du paramètre
* @return string la valeur du paramètre
*/
public static function get($identifiant, $langue = null) {
self::verifierCreationInstance();
$texte = '';
// Récupération de la langue actuellement demandée
$langue_a_charger = self::$langue;
if (!is_null($langue)) {
$langue_a_charger = $langue;
}
if (!isset(self::$traductions[$langue_a_charger])) {
// Tentative de chargement du fichier de traduction
$chargement = self::charger($langue_a_charger);
if ($chargement === false) {
$m = "Le fichier d'i18n pour la langue '$langue_a_charger' demandée n'a pas été trouvé.";
self::ajouterErreur($m);
}
}
// Recherche de la langue dans le tableau des traductions
if (isset(self::$traductions[$langue_a_charger]) && self::$traductions[$langue_a_charger] !== false) {
// Recherche de la traduction demandée
$valeur = self::getValeur($identifiant, self::$traductions[$langue_a_charger]);
if ($valeur !== false) {
$texte = $valeur;
} else {
$m = "Le traduction n'existe pas pour l'identifiant '$identifiant' demandé.";
self::ajouterErreur($m);
}
}
return $texte;
}
/**
* Charge un fichier ini dans le tableau des paramètres de l'appli
* @param string $fichier_ini le nom du fichier à charger
* @return boolean true, si le fichier a été trouvé et correctement chargé, sinon false.
*/
public static function charger($langue, $fichier = null, $format = self::FORMAT_INI) {
self::verifierCreationInstance();
$ok = false;
// Création du chemin vers le fichier de traduction par défaut
if (is_null($fichier)) {
$fichier = Config::get('chemin_i18n').$langue.$format;
}
 
// Chargement
if ($format == self::FORMAT_INI) {
$ok = self::chargerFichierIni($fichier, $langue);
} else {
$m = "Le format '$format' de fichier de traduction n'est pas pris en compte par le Framework.";
self::ajouterErreur($m);
}
return $ok;
}
/**
* Définit la langue utiliser pour rechercher une traduction.
* @param string $fichier_ini le nom du fichier à charger
* @return array le fichier ini parsé
*/
public static function setLangue($langue) {
self::verifierCreationInstance();
self::$langue = $langue;
}
/**
* Renvoie la valeur demandé grâce une chaine de paramètres
* @param string $param la chaine identifiante
* @param array $i18n le tableau de traductions
* @return mixed la valeur correspondante à la chaine identifiante si elle est trouvée, sinon false.
*/
private static function getValeur($param, $i18n) {
if ($param === null) {
return false;
} else {
if (isset($i18n[$param])) {
return $i18n[$param];
} else if (strpos($param, '.') !== false) {
$pieces = explode('.', $param, 2);
if (strlen($pieces[0]) && strlen($pieces[1])) {
if (isset($i18n[$pieces[0]])) {
if (is_array($i18n[$pieces[0]])) {
return self::getValeur($pieces[1], $i18n[$pieces[0]]);
}
}
}
} else {
return false;
}
}
}
/**
* Parse le fichier ini donné en paramètre
* @param string $fichier_ini nom du fichier ini à parser
* @param string $langue la langue correspondant au fichier
* @return boolean true si le chargement c'est bien passé, sinon false.
*/
private static function chargerFichierIni($fichier_ini, $langue) {
self::$traductions[$langue] = false;
if (file_exists($fichier_ini)) {
$ini = parse_ini_file($fichier_ini, true);
$ini = self::analyserTableauIni($ini);
self::$traductions[$langue] = $ini;
}
return (self::$traductions[$langue] === false) ? false : true;
}
/**
* Analyse un tableau de traductions pour évaluer les clés.
* @param array $i18n le tableau de traductions
* @return array le tableau analysé et modifié si nécessaire.
*/
private static function analyserTableauIni($i18n = array()) {
//ATTENTION : il est important de passer la valeur par référence car nous la modifions dynamiquement dans la boucle
foreach ($i18n as $cle => &$valeur) {
if (is_array($valeur)) {
$i18n[$cle] = self::analyserTableauIni($valeur);
} else {
$i18n = self::evaluerCle($i18n, $cle, $valeur);
}
}
return $i18n;
}
/**
* Dans le cas des chaines de traduction à sous clé (ex.: cle.souscle), cette méthode
* évalue les valeurs correspondantes et créée les sous tableaux associés.
* @param array $i18n tableau de traductions (par référence)
* @param string $cle la cle dans le tableau
* @param string $valeur la valeur à affecter
*/
private static function evaluerCle($i18n, $cle, $valeur) {
if (strpos($cle, '.') !== false) {
unset($i18n[$cle]);
$pieces = explode('.', $cle, 2);
if (strlen($pieces[0]) && strlen($pieces[1])) {
if (isset($i18n[$pieces[0]]) && !is_array($i18n[$pieces[0]])) {
$m = "Ne peut pas créer de sous-clé pour '{$pieces[0]}' car la clé existe déjà";
trigger_error($m, E_USER_WARNING);
} else {
$i18n[$pieces[0]][$pieces[1]] = $valeur;
$i18n[$pieces[0]] = self::evaluerCle($i18n[$pieces[0]], $pieces[1], $valeur);
}
} else {
$m = "Clé invalide '$cle'";
trigger_error($m, E_USER_WARNING);
}
} else {
$i18n[$cle] = $valeur;
}
return $i18n;
}
/**
* Cherche l'information sur la langue demandée par l'application
*/
private static function trouverLangue() {
if (isset($_GET[Config::get('i18n_url_parametre')])) {
self::$langue = $_GET[Config::get('i18n_url_parametre')];
} else {
self::$langue = Config::get('i18n_langue_defaut');
}
}
/**
* Vérifie si l'instance de classe à été crée, si non la crée
*/
private static function verifierCreationInstance() {
if (empty(self::$instance)) {
self::$instance = new I18n();
}
}
/**
* Ajouter une message d'erreur
*/
private static function ajouterErreur($m, $e = E_USER_WARNING) {
if (Config::get('debogage') === true) {
trigger_error($m, $e);
}
}
}
?>
/tags/v0.3-aleaume/framework/Log.php
New file
0,0 → 1,149
<?php
//declare(encoding='UTF-8');
/**
* Classe permettant de logger des messages dans les fichier situés dans le dossier de log.
*
* @category PHP 5.2
* @package Framework
* @author Aurélien PERONNET <aurelien@tela-botanica.org>
* @author Jean-Pascal MILCENT <jpm@tela-botanica.org>
* @copyright Copyright (c) 2009, Tela Botanica (accueil@tela-botanica.org)
* @license http://www.cecill.info/licences/Licence_CeCILL_V2-fr.txt Licence CECILL
* @license http://www.gnu.org/licenses/gpl.html Licence GNU-GPL
* @version $Id$
* @link /doc/framework/
*/
class Log {
 
/** Boolean indiquant si l'on doit utiliser les logs ou pas. */
private static $logger = false;
 
/** Tableau associatif stockant les descripteurs de fichiers. */
private static $fichiersLog = array();
 
/** Chemin de base du dossier log de l'application. */
private static $cheminLogs = '';
 
/** Booleen indiquant si l'on peut correctement écrire dans les fichiers de logs. */
private static $droitLogger = true;
 
/** Zone horaire (pour éviter des avertissements dans les dates). */
private static $timeZone = 'Europe/Paris';
 
/** Taille maximum d'un fichier de log avant que celui ne soit archivé (en octets). */
private static $tailleMax = 10000;
 
/** séparateur de dossier dans un chemin. */
private static $sd = DIRECTORY_SEPARATOR;
 
/** Extension des fichiers de log. */
private static $ext = '.log';
/** Tableau des noms des paramètres à définir dans le fichier de config car obligatoirement nécessaire à cette classe.*/
private static $parametres_obligatoires = array('chemin_logs', 'i18n_timezone', 'log_taille_max', 'log_debogage');
 
/** Initialiser les logs par défaut, sans tenir comptes des paramêtres de config. */
public static function initialiser() {
// gestion de la timezone pour éviter des erreurs
if (function_exists('date_default_timezone_set') && function_exists('date_default_timezone_get')) {
date_default_timezone_set(self::$timeZone);
}
 
if (self::$logger && (!is_dir(self::$cheminLogs) || !is_writable(self::$cheminLogs))) {
self::desactiverEcriture();
}
}
/** Configure le Log à partir des paramêtres de config. */
public static function configurer() {
Config::verifierPresenceParametres(self::$parametres_obligatoires);
self::$cheminLogs = Config::get('chemin_logs');
self::$timeZone = (Config::get('i18n_timezone') != '') ? Config::get('i18n_timezone') : self::$timeZone;
self::$tailleMax = (Config::get('log_taille_max') != '') ? Config::get('log_taille_max') : self::$tailleMax;
self::$logger = (Config::get('log_debogage') != '') ? Config::get('log_debogage') : self::$logger;
self::initialiser();
}
 
/**
* Ajoute une entrée au log spécifié par le paramètre $nomFichier
* @param string $nomFichier le nom du fichier dans lequel écrire
*/
public static function ajouterEntree($nomFichier, $entree, $mode = 'a+') {
if (self::$droitLogger) {
$date = "\n\n".date('d m Y H:i')."\n" ;
 
if (self::verifierOuvrirFichier($nomFichier, $mode)) {
fwrite(self::$fichiersLog[$nomFichier], $date.$entree);
self::verifierTailleFichierOuArchiver($nomFichier);
} else {
self::desactiverEcriture($nomFichier);
}
}
}
 
/**
* Vide un fichier log indiqué
* @param string $nomFichier le nom du fichier à vider
*/
public static function viderLog($nomFichier) {
self::ajouterEntree($nomFichier, '', 'w');
}
 
/**
* Vérifie la présence d'un fichier dans le tableau, ses droits d'écriture, l'ouvre si nécessaire.
*
* @param string $nomFichier le nom du fichier dont on doit vérifier la présence
* @return boolean true si le fichier est ouvert ou maintenant accessible, false sinon
*/
public static function verifierOuvrirFichier($nomFichier,$mode) {
if (in_array($nomFichier, self::$fichiersLog)) {
if (is_writable(self::$cheminLogs.$nomFichier.self::$ext)) {
return true;
}
return false;
} else {
$fp = @fopen(self::$cheminLogs.$nomFichier.self::$ext,$mode);
if ($fp && is_writable(self::$cheminLogs.$nomFichier.self::$ext)) {
self::$fichiersLog[$nomFichier] = $fp;
return true;
}
return false;
}
}
 
/**
* Vérifie la taille d'un fichier donné et si celle ci est trop importante
* archive le fichier de log
* @param string $nomFichier nom du fichier à vérifier
*/
private static function verifierTailleFichierOuArchiver($nomFichier) {
if(filesize(self::$cheminLogs.$nomFichier.self::$ext) > self::$tailleMax) {
rename(self::$cheminLogs.$nomFichier.self::$ext,self::$cheminLogs.$nomFichier.date('d_m_Y_H:i').self::$ext);
self::ajouterEntree($nomFichier,'');
}
}
 
/**
* Désactive l'écriture du log et envoie un message au gestionnaire d'erreurs
* @param string $nomFichier le nom du fichier qui a causé l'erreur
*/
private static function desactiverEcriture($nomFichier = '') {
self::$droitLogger = false;
if ($nomFichier != '') {
$fichierDossier = 'fichier '.$nomFichier ;
} else {
$fichierDossier = 'dossier des logs';
}
$message = 'Écriture impossible dans le '.$fichierDossier.', Assurez-vous des droits du dossier et des fichiers';
$e = new ErrorException($message, 0, E_USER_WARNING, __FILE__, __LINE__);
GestionnaireException::gererException($e);
}
 
/** Destructeur de classe, ferme les descripteurs ouverts. */
public function __destruct() {
foreach(self::$fichiersLog as $nomFichier => $fp) {
fclose($fp);
}
}
}
?>
Property changes:
Added: svn:keywords
+Id Author Date Revision HeadURL
\ No newline at end of property
/tags/v0.3-aleaume/framework
New file
Property changes:
Added: svn:ignore
+config.ini
/tags/v0.3-aleaume/exemple/interfaces/index.php
New file
0,0 → 1,103
<?php
/** Inclusion du fichier principal de l'application (administrations des administrateurs)*/
require_once 'admin_administrateur.php';
$contenu_navigation = afficherContenuNavigation();
$contenu_tete = afficherContenuTete();
$contenu_corps = afficherContenuCorps();
$titre = "";
$contenu_pied = afficherContenuPied();
$contenu_menu = afficherContenuMenu();
$erreurs = GestionnaireException::getExceptions();
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head xml:lang="fr" lang="fr">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<meta http-equiv="Content-style-type" content="text/css" />
<meta http-equiv="Content-script-type" content="text/javascript" />
<meta http-equiv="Content-language" content="fr" />
 
<title><?php echo $titre; ?></title>
 
<meta name="revisit-after" content="15 days" />
<meta name="robots" content="index,follow" />
<meta name="author" content="Tela Botanica" />
 
<style type="text/css" media="screen">
/*--------------------------------------------------------------------------------------------------------------*/
/* Tableau du chronométrage du programme */
#pied_texte #chrono {
text-align: center;
margin:0 auto;}
#chrono table {
display:block;
border:3px solid #6495ed;
border-collapse:collapse;}
#chrono thead, tfoot {
background-color:#D0E3FA;
border:1px solid #6495ed;}
#chrono tbody {
background-color:#FFFFFF;
border:1px solid #6495ed;}
#chrono th {
font-family:monospace;
border:1px dotted #6495ed;
padding:5px;
background-color:#EFF6FF;
width:25%;}
#chrono td {
font-family:sans-serif;
font-size:80%;
border:1px solid #6495ed;
padding:5px;
text-align:center;}
#chrono caption {
font-family:sans-serif;
text-align: center;
width:90%;
margin:auto;}
.debogage{
color:black;
border:3px solid #6495ed;}
.debogage_fichier, .debogage_ligne{
font-size:10px;
color:#A9A9A9;}
</style>
<link rel="shortcut icon" type="image/x-icon" href="http://www.tela-botanica.org/sites/commun/generique/images/favicones/favicon.ico" />
<link rel="icon" type="image/png" href="http://www.tela-botanica.org/sites/commun/generique/images/favicones/tela_botanica.png" />
</head>
<body xml:lang="fr" lang="fr">
<div id="reducteur">
<div id="logo_tela">
<a href="/" title="Retour à l'accueil du site">
<img src="http://www.tela-botanica.org/sites/accueil/generique/images/graphisme/logo_tela_fond_blanc.png" alt="le logo de Tela Botanica"/>
</a>
</div>
 
<div id="droite">
<div id="onglets">
<?php echo $contenu_navigation; ?>
</div>
<div id="contenu">
<div id="entete">
<?php echo $contenu_tete; ?>
</div>
<div id="texte">
<?php echo $contenu_corps; ?>
</div>
<div id="pied_texte">
<?php
echo $contenu_pied;
?>
</div>
</div>
</div>
<div>
<?php echo $erreurs; ?>
</div>
<div id="pied">
<p> &copy;<a href="http://www.tela-botanica.org/" accesskey="1">Tela Botanica</a> / 2000-2004 - Le réseau des Botanistes Francophones</p>
</div>
</div>
</body>
</html>
/tags/v0.3-aleaume/exemple/interfaces/squelettes/modif_admin.tpl.html
New file
0,0 → 1,44
<h2>Modification d'un administrateur</h2>
<form id="modif_admin" action="<? $url_form = clone($base_url);
$url_form->setVariablesRequete(array('m'=>'modif_admin','id_admin'=>$admin['ga_id_administrateur']));
echo $url_form; ?>" method="post">
<fieldset>
<ul>
<li>
<label for="admin_nom">Nom :</label>
<input type="text" id="admin_nom" name="admin_nom" maxlength="80" tabindex="1" value="<?=$admin['ga_nom'];?>" />
</li>
<li>
<label for="admin_prenom">Prénom :</label>
<input type="text" id="admin_prenom" name="admin_prenom" maxlength="80" tabindex="2" value="<?=$admin['ga_prenom'];?>" />
</li>
<li>
<label for="admin_mail">Mail :</label>
<input type="text" id="admin_mail" name="admin_mail" maxlength="120" tabindex="3" value="<?=$admin['ga_mail'];?>" />
<?php if (isset($erreurs['mail'])): ?>
<span class="symbole_obligatoire"> <?=$erreurs['mail'] ?> </span>
<?php endif; ?>
</li>
<li>
<label for="admin_lang">Langue :</label>
<select id="admin_lang" name="admin_lang" tabindex="4">
<option value="fr-FR" <?=($admin['ga_ce_i18n'] == "fr-FR") ? 'selected="selected"' : '';?> >Français</option>
<option value="en-EN" <?=($admin['ga_ce_i18n'] == "en-EN") ? 'selected="selected"' : '';?>>Anglais</option>
</select>
</li>
<li>
<label for="password">Mot de passe :</label>
<input type="password" id="admin_pass" name="admin_pass" maxlength="80" tabindex="5" value="" />
</li>
<li>
<label for="password_confirm">Confirmez le mot de passe :</label>
<input type="password" id="admin_pass_confirm" name="admin_pass_confirm" maxlength="80" tabindex="6" value="" />
<?php if (isset($erreurs['pass'])): ?>
<span class="symbole_obligatoire"> <?=$erreurs['pass'];?> </span>
<?php endif; ?>
</li>
</ul>
</fieldset>
<input type="submit" id="valider_modif_admin" name="valider_modif_admin" tabindex="7" value="Modifier" />
<a href="<? $url_annul = clone($base_url); $url_annul->setVariableRequete('m','liste_admin'); echo $url_annul; ?>">Annuler</a>
</form>
Property changes:
Added: svn:keywords
+Id Author Date Revision HeadURL
\ No newline at end of property
/tags/v0.3-aleaume/exemple/interfaces/squelettes/liste_admin.tpl.html
New file
0,0 → 1,33
<h2>Liste des administrateurs</h2>
<?php if (isset($admin)) : ?>
<table class="liste_admin">
<thead>
<tr>
<th>Identifiant d'admin</th>
<th>Nom</th>
<th>Prénom</th>
<th>Langue</th>
<th></th>
<th></th>
</tr>
</thead>
<tbody>
<?php foreach ($admin as $element) : ?>
<tr>
<td><?=$element['ga_id_administrateur'] ?></td>
<td><?=$element['ga_nom'] ?></td>
<td><?=$element['ga_prenom'] ?></td>
<td><?=$element['ga_ce_i18n'] ?></td>
<td><a href="<?php $url->setVariablesRequete(array('m' => 'modif_admin', 'id_admin' => $element['ga_id_administrateur']));
echo $url; ?>">Modifier</a></td>
<td><a href="<?php $url->setVariableRequete('m','supp_admin');
echo $url; ?>">Supprimer</a></td>
</tr>
<?php endforeach; ?>
</tbody>
</table>
<?php if (isset($erreurs['supp'])): ?>
<p><span class="symbole_obligatoire"> <?=$erreurs['supp'];?> </span></p>
<?php endif; ?>
<?php endif; ?>
<p><a href="<?php $url->setVariableRequete('m','ajout_admin') ; echo $url ;?>"> Ajouter un administrateur </a></p>
Property changes:
Added: svn:keywords
+Id Author Date Revision HeadURL
\ No newline at end of property
/tags/v0.3-aleaume/exemple/interfaces/squelettes/ajout_admin.tpl.html
New file
0,0 → 1,50
<h2>Ajout d'un administrateur</h2>
<form id="modif_admin" method="post" action="<? $url->setVariableRequete('m','ajout_admin_va');
echo $url; ?>">
<?php if (isset($erreurs)): ?>
<?php foreach ($erreurs as $cle => $erreur): ?>
<p class="symbole_obligatoire"> <?=$cle ?> : <?=$erreur ?> </p>
<?php endforeach; ?>
<?php endif; ?>
<fieldset>
<ul>
<li>
<label for="admin_nom">Nom :</label>
<input type="text" id="admin_nom" name="admin_nom" maxlength="80" tabindex="1" value="<?=$admin['ga_nom'];?>" />
</li>
<li>
<label for="admin_prenom">Prénom :</label>
<input type="text" id="admin_prenom" name="admin_prenom" maxlength="80" tabindex="2" value="<?=$admin['ga_prenom'];?>" />
</li>
<li>
<label for="admin_mail">Mail :</label>
<input type="text" id="admin_mail" name="admin_mail" maxlength="120" tabindex="3" value="<?=$admin['ga_mail'];?>" />
<?php if (isset($erreurs['mail'])): ?>
<span class="symbole_obligatoire"> <?=$erreurs['mail'] ?> </span>
<?php endif; ?>
</li>
<li>
<label for="admin_lang">Langue : </label>
<select id="admin_lang" name="admin_lang" tabindex="4">
<option value="fr-FR" <?=($admin['ga_ce_i18n'] == "fr-FR") ? 'selected="selected"' : '';?>>Français</option>
<option value="en-EN" <?=($admin['ga_ce_i18n'] == "en-EN") ? 'selected="selected"' : '';?>>Anglais</option>
</select>
</li>
<li>
<label for="password">Mot de passe :</label>
<input type="password" id="admin_pass" name="admin_pass" maxlength="80" tabindex="5" value="" />
</li>
<li>
<label for="password_confirm">Confirmez le mot de passe :</label>
<input type="password" id="admin_pass_confirm" name="admin_pass_confirm" maxlength="80" tabindex="6" value="" />
<?php if (isset($erreurs['pass'])): ?>
<span class="symbole_obligatoire"> <?=$erreurs['pass'] ?> </span>
<?php endif; ?>
</li>
</ul>
</fieldset>
<p>
<input type="submit" id="valider_ajout_admin" name="valider_ajout_admin" tabindex="7" value="Ajouter" />
<a href="<? $url->setVariableRequete('m','liste_admin'); echo $url; ?>">Annuler</a>
</p>
</form>
Property changes:
Added: svn:keywords
+Id Author Date Revision HeadURL
\ No newline at end of property
/tags/v0.3-aleaume/exemple/interfaces/squelettes/ident_admin.tpl.html
New file
0,0 → 1,11
<p class="zone_alert">Identifiez-vous</p>
<form id="form_connexion" style="clear: both;" class="form_identification" action="<?=$base_url ?>" method="post">
<fieldset>
<legend>Identifiez vous</legend>
<label for="username">Courriel :</label>
<input type="text" id="username" name="username" maxlength="80" tabindex="1" value="courriel" />
<label for="password">Mot de passe : </label>
<input type="password" id="password" name="password" maxlength="80" tabindex="2" value="mot de passe" />
<input type="submit" id="connexion" name="connexion" tabindex="3" value="ok" />
</fieldset>
</form>
Property changes:
Added: svn:keywords
+Id Author Date Revision HeadURL
\ No newline at end of property
/tags/v0.3-aleaume/exemple/interfaces/controleurs/AdminAdministrateur.php
New file
0,0 → 1,193
<?php
// declare(encoding='UTF-8');
/**
* classe Controleur, pour l'application d'administration des administrateurs
*
* PHP Version 5
*
* @package Framework
* @category Class
* @author aurelien <aurelien@tela-botanica.org>
* @copyright 2009 Tela-Botanica
* @license http://www.cecill.info/licences/Licence_CeCILL_V2-fr.txt Licence CECILL
* @license http://www.gnu.org/licenses/gpl.html Licence GNU-GPL
* @version SVN: $$Id$$
* @link /doc/framework/
*
*/
class AdminAdministrateur extends Controleur {
 
/**
* Fonction d'affichage par défaut, elle appelle la liste des administrateurs
*/
public function index() {
$this->charger_admin();
}
 
/**
* Charge la liste des administrateurs et l'envoie à la vue
* @param array un tableau contenant les erreurs à afficher s'il y en a
* @return string la vue correspondante
*/
public function chargerAdmin($erreurs = array()) {
$this->chargerModele('ListeAdmin');
$data['url'] = new Url(Config::get('url_base'));
$data['erreurs'] = $erreurs;
$data['admin'] = $this->ListeAdmin->chargerAdmin();
$html = $this->getVue('liste_admin', $data);
 
return $html;
}
 
/**
* Charge les détails d'un administrateur demandé et l'envoi à la
* vue qui permet de les modifier
* @id string l'id de l'administrateur à modifier
* @return string la vue correspondante
*/
public function modifAdmin($id) {
$this->chargerModele('ListeAdmin');
$data['admin'] = $this->ListeAdmin->loadDetailsAdmin($id);
$html = $this->getVue('modif_admin',$data);
 
return $html;
}
 
/**
* Fonction appelée lors de la validation du formulaire de modification
* des détails d'un administrateurs. Elle modifie les détails dans la base
* de données. S'il y a une erreur et rappelle la formulaire et notifie l'erreur,
* sinon elle charge la liste des administrateurs
* @param string l'identifiant de l'administrateur
* @param string le nom
* @param string le prénom
* @param string le mail
* @param string le mot de passe
* @param string la confirmation du mot de passe
* @return string la vue correspondante
*/
public function modifAdminVa($id, $nom, $prenom, $mail, $lang, $pass, $pass_conf) {
$this->chargerModele('ListeAdmin') ;
$res = $this->ListeAdmin->modifDetailsAdmin($id, $nom, $prenom, $mail, $lang, $pass, $pass_conf);
 
if (count($res) == 0) {
return $this->chargerAdmin();
} else {
$admin['ga_id_administrateur'] = $id;
$admin['ga_nom'] = $nom;
$admin['ga_prenom'] = $prenom;
$admin['ga_mail'] = $mail;
$admin['ga_ce_i18n'] = $lang;
$data['admin'] = $admin;
$data['erreurs'] = $res;
$html = $this->getVue('modif_admin', $data);
return $html;
}
}
 
/**
* Supprime un administrateur dans la base de données,
* renvoie la liste des administrateurs, en affichant des erreurs
* s'il y en a.
* @return string la vue contenant la liste des administrateurs
*
*/
public function supprAdmin($id) {
$this->chargerModele('ListeAdmin');
$res = $this->ListeAdmin->suppAdmin($id);
if ($res == '') {
return $this->chargerAdmin();
} else {
$erreurs['supp'] = $res;
return $this->chargerAdmin($erreurs);
}
}
 
/**
* Appelle la vue contenant le formulaire d'ajout d'un administrateur
* @return string la vue contenant le formulaire d'ajout
*/
function ajoutAdmin() {
$admin['ga_id_administrateur'] = '';
$admin['ga_nom'] = '';
$admin['ga_prenom'] = '';
$admin['ga_mail'] = '';
$admin['ga_ce_i18n'] = '';
$data['admin'] = $admin;
$data['url'] = new Url(Config::get('url_base'));
$html = $this->getVue('ajout_admin', $data);
 
return $html;
}
 
/**
* Fonction appelée lors de la validation du formulaire d'ajout d'un administrateur.
* Elle ajoute celui-ci les dans la base de données
* S'il y a une erreur et rappelle la formulaire et notifie l'erreur,
* sinon elle charge la liste des administrateurs
* @param string le nom
* @param string le prénom
* @param string le mail
* @param string le mot de passe
* @param string la confirmation du mot de passe
* @return string la vue correspondante
*/
public function ajoutAdminVa($nom, $prenom, $mail, $lang, $pass, $pass_conf) {
if (empty($nom) || empty($prenom) || empty($mail) || empty($pass) || empty($pass_conf)) {
$data['url'] = new Url(Config::get('url_base'));
$data['erreurs'] = array('champs' => 'Tous les champs sont obligatoires');
$admin['ga_nom'] = $nom;
$admin['ga_prenom'] = $prenom;
$admin['ga_mail'] = $mail;
$admin['ga_ce_i18n'] = $lang;
$data['admin'] = $admin;
$html = $this->getVue('ajout_admin', $data);
 
return $html;
} else {
$this->chargerModele('ListeAdmin');
$res = $this->ListeAdmin->ajoutAdmin($nom, $prenom, $mail, $lang, $pass, $pass_conf);
if (count($res) == 0) {
return $this->chargerAdmin();
} else {
$admin['ga_nom'] = $nom;
$admin['ga_prenom'] = $prenom;
$admin['ga_mail'] = $mail;
$admin['ga_ce_i18n'] = $lang;
$data['url'] = new Url(Config::get('url_base'));
$data['admin'] = $admin;
$data['erreurs'] = $res;
$html = $this->getVue('ajout_admin', $data);
return $html;
}
}
}
 
/** Apelle le formulaire d'identification (dans le cas où l'utilisateur n'est pas identifié)
* @return string la vue permettant de s'identifier
*/
public function demanderIdent() {
$html = $this->getVue('ident_admin', null);
return $html;
}
 
/**
* Renvoie la tête de page de l'application
* @return string la tete de page de l'application
*/
public function adminTete() {
$tete = '<h1>Gestion des administrateurs de Papyrus</h1>';
return $tete;
}
 
/**
* Renvoie le pied de page de l'application
* @return string le pied de page de l'application
*/
public function adminPied() {
$pied = '';
return $pied;
}
}
?>
Property changes:
Added: svn:keywords
+Id Author Date Revision HeadURL
\ No newline at end of property
/tags/v0.3-aleaume/exemple/interfaces/framework.php
New file
0,0 → 1,6
<?php
// Inclusion du Framework
// Renomer ce fichier en "framework.php"
// Indiquyer ci-dessous le chemin absolu vers le fichier Framework.php de la version souhaitée du Framework
require_once dirname(__FILE__).DIRECTORY_SEPARATOR.'..'.DIRECTORY_SEPARATOR.'..'.DIRECTORY_SEPARATOR.'framework'.DIRECTORY_SEPARATOR.'Framework.php';
?>
/tags/v0.3-aleaume/exemple/interfaces/logs
New file
Property changes:
Added: svn:ignore
+bdd
+erreurs
+vues
/tags/v0.3-aleaume/exemple/interfaces/modeles/ListeAdmin.php
New file
0,0 → 1,254
<?php
// declare(encoding='UTF-8');
/**
* Modèle d'accès à la base de données des administrateurs
* de papyrus
*
* PHP Version 5
*
* @package Framework
* @category Class
* @author aurelien <aurelien@tela-botanica.org>
* @copyright 2009 Tela-Botanica
* @license http://www.cecill.info/licences/Licence_CeCILL_V2-fr.txt Licence CECILL
* @license http://www.gnu.org/licenses/gpl.html Licence GNU-GPL
* @version SVN: $$Id$$
* @link /doc/framework/
*
*/
class listeAdmin extends Modele {
 
private $config = array();
 
/**
* Charge la liste complète des administrateurs
* return array un tableau contenant des objets d'informations sur les administrateurs
* @return array un tableau d'objets contenant la liste des administrateurs
*/
public function chargerAdmin() {
$requete = 'SELECT * '.
'FROM gen_annuaire '.
'ORDER BY ga_id_administrateur';
$resultat = $this->requeteTous($requete);
$admin = array();
if ($resultat !== false) {
foreach ($resultat as $ligne) {
if ($ligne['ga_id_administrateur'] != 0) {
$admin[] = $ligne;
}
}
}
return $admin;
}
 
/**
* Charge les informations liées à un administrateur
* grâce à son id
* @param int l'identifiant de l'administrateur.
* @return object un object contenant les informations de l'administrateur demandé
*/
public function loadDetailsAdmin($id) {
$requete = 'SELECT * '.
'FROM gen_annuaire '.
"WHERE ga_id_administrateur = '$id' ";
$resultat = $this->requete($requete);
 
$admin = array();
foreach ($resultat->fetchAll() as $ligne) {
$admin = $ligne;
}
return $admin;
}
 
 
/**
* Modifie les informations liées à un administrateur dans la base de données
* Si le mot de passe n'est pas renseigné, il n'est pas changé
* @param int identifiant de l'admiistrateur
* @param string nom
* @param string prenom
* @param string le mail
* @param string le code de langue
* @param string le mot de passe (optionnel)
* @param string la confirmation du mot de passe (optionnel)
* @return array un tableau contenant les erreurs s'il y en a, vide sinon
*/
function modifDetailsAdmin($id, $nom, $prenom, $mail, $lang, $pass = '', $pass_conf = '') {
$res = array();
$nb_admin = 0;
 
if (!$this->validerMail($mail)) {
$res['mail'] = 'Adresse mail invalide';
}
 
$query_verif_mail = 'SELECT COUNT(*) AS nb_admin '.
'FROM gen_annuaire '.
"WHERE ga_mail = '{$this->proteger($mail)}'".
" AND ga_id_administrateur != $id ";
if ($res_nb = $this->requete($query_verif_mail)) {
$ligne = $res_nb->fetch();
$nb_admin = $ligne['nb_admin'];
} else {
$res['bdd'] = 'Erreur dans la base de données';
return $res;
}
 
if($nb_admin != 0) {
$res['mail'] = 'Cet email est déjà utilisé par un autre utilisateur';
}
 
$query = 'UPDATE gen_annuaire SET ga_ce_i18n='.$this->proteger($lang).', ga_nom='.$this->proteger($nom).',ga_prenom='.
$this->proteger($prenom).',ga_mail='.$this->proteger($mail);
 
// si on a entré quelque chose dans les deux champs de mot de passe
if($pass != '' || $pass_conf != '') {
// on vérifie si les deux concordent
if($pass == $pass_conf) {
// si oui, on les modifie
$query .= ',ga_mot_de_passe='.$this->proteger(md5($pass));
} else {
// si non, on notifiera l'utilisateur
$res['pass'] = 'mot de passe invalide';
}
}
 
$query .= ' WHERE ga_id_administrateur='.$id;
 
if(count($res) != 0) {
return $res;
}
 
if($req_maj = $this->requete($query)) {
 
} else {
$res['bdd'] = 'Erreur de la requête dans la base de données';
}
 
return $res;
}
 
/**
* Supprime un administrateur ayant un id donné
* @param int l'identifiant de l'administrateur
* @return array un tableau contenant les erreurs s'il y en a, vide sinon
*/
function suppAdmin($id) {
 
$nb_admin = 0;
$res = '';
 
$query_verif = 'SELECT COUNT(*) AS nb_admin FROM gen_annuaire';
if($res_nb = $this->requete($query_verif)) {
$ligne = $res_nb->fetch();
$nb_admin = $ligne['nb_admin'];
} else {
$res = 'Erreur dans la base de donn�es';
return $res ;
}
 
if($nb_admin == 2) {
$res = 'Impossible de supprimer le dernier administrateur';
return $res ;
}
 
$query = 'DELETE FROM gen_annuaire WHERE ga_id_administrateur='.$id;
 
if($res_supp = $this->requete($query)) {
return $res ;
} else {
$res = 'Erreur dans la base de données' ;
return $res ;
}
}
 
/**
* Ajoute un administrateur dans la base de données
* @param string nom
* @param string prenom
* @param string le mail
* @param string le code de langue
* @param string le mot de passe
* @param string la confirmation du mot de passe
* @return array un tableau contenant les erreurs s'il y en a, vide sinon
*/
function ajoutAdmin($nom, $prenom, $mail, $lang, $pass, $pass_conf) {
$nouvel_id = 0;
$nb_admin = 0;
$res = array();
Debug::printr('pppppppppp');
if (!$this->validerMail($mail)) {
$res['mail'] = 'Adresse mail invalide.';
}
 
$query_verif_mail = 'SELECT COUNT(*) AS nb_admin '.
'FROM gen_annuaire '.
'WHERE ga_mail = '.$this->proteger($mail);
if ($res_nb = $this->requete($query_verif_mail)) {
$ligne = $res_nb->fetch();
$nb_admin = $ligne['nb_admin'];
} else {
$res['bdd'] = 'Erreur dans la base de données.';
return $res;
}
if ($nb_admin != 0) {
$res['mail'] = 'Cet email est déjà utilisé par un autre utilisateur.';
}
 
if ($pass != '' || $pass_conf != '') {
// on vérifie si les deux concordent
if ($pass != $pass_conf) {
// si non, on notifiera l'utilisateur
$res['pass'] = 'mot de passe invalide';
}
}
 
$query = 'SELECT MAX(ga_id_administrateur) as nouvel_id '.
'FROM gen_annuaire';
if ($res_requete_id = $this->requete($query)) {
$ligne = $res_requete_id->fetch() ;
$nouvel_id = $ligne['nouvel_id'] + 1;
} else {
return $res ;
}
 
$query = 'INSERT INTO gen_annuaire '.
'VALUES ('.$nouvel_id.','.$this->proteger($lang).','.
$this->proteger($nom).','.$this->proteger($prenom).','.$this->proteger(md5($pass)).','.
$this->proteger($mail).')';
if (count($res) != 0) {
return $res;
}
 
if (!$res_ajout = $this->requete($query)) {
$res['bdd'] = 'Erreur de la requête dans la base de données';
}
 
return $res;
}
 
/**
* Fonction qui prend une chaine en paramètre et renvoie vrai
* si elle constitue un email syntaxiquement valide, faux sinon.
* @param string le mail à valider
* @return bool true si le mail est valide, false sinon
*/
function validerMail($mail) {
$atom = '[-a-z0-9!#$%&\'*+\\/=?^_`{|}~]'; // Caractères autorisés avant l'arobase
$domain = '([a-z0-9]([-a-z0-9]*[a-z0-9]+)?)'; // Caractères autorisés après l'arobase (nom de domaine)
 
$regex = '/^'.$atom.'+'. // Une ou plusieurs fois les caractères autorisés avant l'arobase
'(\.'.$atom.'+)*'. // Suivis par zéro point ou plus, séparés par des caractères autorisés avant l'arobase
'@'.// Suivis d'un arobase
'('.$domain .'{1,63}\.)+'.// Suivis par 1 à 63 caractères autorisés pour le nom de domaine, séparés par des points
$domain.'{2,63}$/i';// Suivi de 2 à 63 caractères autorisés pour le nom de domaine
 
// Test de l'adresse e-mail
if (preg_match($regex, $mail)) {
return true;
} else {
return false;
}
}
}
?>
Property changes:
Added: svn:keywords
+Id Author Date Revision HeadURL
\ No newline at end of property
/tags/v0.3-aleaume/exemple/interfaces/admin_administrateur.php
New file
0,0 → 1,115
<?php
// declare(encoding='UTF-8');
/**
* Ceci est un exemple d'application qui permet d'illustrer le fonctionnement du framework, il montre comment
* une application peut être dans papyrus, ou bien utilisée en stand alone.
*
* PHP version 5
*
* @category PHP
* @package Framework
* @author Aurelien PERONNET <aurelien@tela-botanica.org>
* @copyright Tela-Botanica 2009
* @license http://www.cecill.info/licences/Licence_CeCILL_V2-fr.txt Licence CECILL
* @license http://www.gnu.org/licenses/gpl.html Licence GNU-GPL
* @version SVN: $$Id$$
* @link /doc/framework/
*/
 
// Le fichier Framework.php du Framework de Tela Botanica doit être appelé avant tout autre chose dans l'application.
// Sinon, rien ne sera chargé.
// L'emplacement du Framework peut varier en fonction de l'environnement (test, prod...). Afin de faciliter la configuration
// de l'emplacement du Framework, un fichier framework.defaut.php doit être renommé et configuré pour chaque installation de
// l'application.
// Chemin du fichier chargeant le framework requis
$framework = dirname(__FILE__).'/framework.php';
if (!file_exists($framework)) {
$e = "Veuillez paramêtrer l'emplacement et la version du Framework dans le fichier $framework";
trigger_error($e, E_USER_ERROR);
} else {
// Inclusion du Framework
require_once $framework;
// Ajout d'information concernant cette application
Framework::setCheminAppli(__FILE__);// Obligatoire
Framework::setInfoAppli(Config::get('info'));// Optionnel
// Lancement du débogage si nécessaire
if (Config::get('chronometrage')) {
Chronometre::chrono(basename(__FILE__).' - début');
}
/**
* Fonction d'affichage de Papyrus, pour le corps de page
*/
function afficherContenuCorps() {
// Si l'utilisateur est authentifié
if (Config::get('identification')) {
// on renvoie la vue principale de l'application
$methode = '';
if (isset($_GET['m'])) {
$methode = $_GET['m'];
Debug::printr($methode);
}
$controlleur = new AdminAdministrateur();
switch ($methode) {
case 'ajout_admin':
return $controlleur->ajoutAdmin();
break;
case 'ajout_admin_va':
$nom = $_POST['admin_nom'];
$prenom = $_POST['admin_prenom'];
$mail = $_POST['admin_mail'];
$lang = $_POST['admin_lang'];
$pass = $_POST['admin_pass'];
$pass_conf = $_POST['admin_pass_confirm'];
Debug::printr($_POST);
return $controlleur->ajoutAdminVa($nom, $prenom, $mail, $lang, $pass, $pass_conf);
break;
case 'modif_admin':
$id = $_GET['id_admin'];
return $controlleur->modifAdmin($id);
break;
case 'modif_admin_va':
$id = $_GET['id_admin'];
$nom = $_POST['admin_nom'];
$prenom = $_POST['admin_prenom'];
$mail = $_POST['admin_mail'];
$lang = $_POST['admin_lang'];
$pass = $_POST['admin_pass'];
$pass_conf = $_POST['admin_pass_confirm'];
return $controlleur->modifAdminVa($id, $nom, $prenom, $mail, $lang, $pass, $pass_conf);
break;
case 'suppr_admin':
$id = $_GET['id_admin'];
return $controlleur->supprAdmin($id);
break;
default:
return $controlleur->chargerAdmin();
break;
}
} else {
// sinon on lui demande de s'identifier
$controlleur = new AdminAdministrateur();
return $controlleur->demanderIdent();
}
}
function afficherContenuTete() {
$controlleur = new AdminAdministrateur();
return $controlleur->adminTete();
}
function afficherContenuPied() {
$controlleur = new AdminAdministrateur();
return $controlleur->adminPied();
}
function afficherContenuNavigation() {
return '';
}
function afficherContenuMenu() {
return '';
}
}
?>
/tags/v0.3-aleaume/exemple/interfaces/configurations/config.ini
New file
0,0 → 1,9
; Info sur l'application
info.nom = Gestion des administrateurs de Papyrus
info.abr = AA
;Encodage de l'application
encodage_appli = "UTF8"
; URL de base de l'application, si elle est laissée vide, l'application fonctionnera en Stand-alone
url_base = ""
; Mettre à true si l'application nécessite de s'identifier.
identification = true
/tags/v0.3-aleaume/exemple/interfaces/configurations/config_papyrus.ini
New file
0,0 → 1,6
;Encodage de l'application
encodage_appli = "UTF8"
; URL de base de l'application, si elle est laissée vide, l'application fonctionnera en Stand-alone
url_base = "php:$GLOBALS['_GEN_commun']['url']->getUrl()"
; Mettre à true si l'application nécessite de s'identifier.
identification = "php:$GLOBALS['_GEN_commun']['pear_auth']->getAuth()"
/tags/v0.3-aleaume/exemple/interfaces/framework.defaut.php
New file
0,0 → 1,6
<?php
// Inclusion du Framework
// Renomer ce fichier en "framework.php"
// Indiquyer ci-dessous le chemin absolu vers le fichier Framework.php de la version souhaitée du Framework
require_once dirname(__FILE__).DIRECTORY_SEPARATOR.'..'.DIRECTORY_SEPARATOR.'framework'.DIRECTORY_SEPARATOR.'Framework.php';
?>
/tags/v0.3-aleaume/exemple/services/.htaccess
New file
0,0 → 1,13
<files *.ini>
order deny,allow
deny from all
</files>
 
#AddHandler x-httpd-php5 .php
AddDefaultCharset UTF-8
 
RewriteEngine On
# Redirections générale vers le fichier principal de Widget.
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^.*$ index.php/
/tags/v0.3-aleaume/exemple/services/index.php
New file
0,0 → 1,43
<?php
// Encodage : UTF-8
// Permet d'afficher le temps d'execution du service
$temps_debut = (isset($_GET['chrono']) && $_GET['chrono'] == 1) ? microtime(true) : '';
// +-------------------------------------------------------------------------------------------------------------------+
/**
* Serveur
*
* Description : initialise le chargement et l'exécution des services web.
*
//Auteur original :
* @author Jean-Pascal MILCENT <jpm@tela-botanica.org>
* @copyright Tela-Botanica 1999-2008
* @licence GPL v3 & CeCILL v2
* @version $Id$
*/
// +-------------------------------------------------------------------------------------------------------------------+
 
// Le fichier autoload.inc.php du Framework de Tela Botanica doit être appelée avant tout autre chose dans l'application.
// Sinon, rien ne sera chargé.
// Chemin du fichier chargeant le framework requis
$framework = dirname(__FILE__).DIRECTORY_SEPARATOR.'framework.php';
if (!file_exists($framework)) {
$e = "Veuillez paramétrer l'emplacement et la version du Framework dans le fichier $framework";
trigger_error($e, E_USER_ERROR);
} else {
// Inclusion du Framework
require_once $framework;
// Ajout d'information concernant cette application
Framework::setCheminAppli(__FILE__);// Obligatoire
Framework::setInfoAppli(Config::get('info'));
// Initialisation et lancement du serveur
$Serveur = new RestServeur();
$Serveur->executer();
// Affiche le temps d'execution du service
if (isset($_GET['chrono']) && $_GET['chrono'] == 1) {
$temps_fin = microtime(true);
echo 'Temps d\'execution : '.round($temps_fin - $temps_debut, 4);
}
}
?>
/tags/v0.3-aleaume/exemple/services/modules/0.1/ServiceCacheSqlite.php
New file
0,0 → 1,88
<?php
class ServiceCacheSqlite extends RestService {
public function consulter($ressources, $parametres) {
// Redéfinition ici mais peut être configuré depuis le fichier config.ini
$options = array(
'stockage_mode' => Cache::STOCKAGE_MODE_SQLITE,
'stockage_chemin' => Fichier::getDossierTmp().DS.'cache.sqlite',
'controle_ecriture' => false,
'mise_en_cache' => true,
'cache_id_prefixe' => null,
'serialisation_auto' => false,
'nettoyage_auto' => 10,
'duree_de_vie' => 3600,
);
$cache = new Cache($options);
$id = 'monCache'; // id de cache de "ce que l'on veut cacher"
$id01 = $id.'01';
$id02 = $id.'02';
$id03 = $id.'03';
if (!($donnees = $cache->charger($id01))) {
$donnees = 'Mise en cache à : '.strftime('%A %d %B %Y à %H:%M:%S', time()).'<br/>';
for ($i = 0; $i < 100000; $i++) {
$donnees .= $i;
}
$cache->sauver($donnees, $id01);
$cache->sauver($donnees, $id02, array('tagTest01'));
$cache->sauver($donnees, $id03, array('tagTest01','tagTest02', 'tagTest03'));
}
// Affichage des données
echo $donnees.'<br/>';
// Affichage des ids du cache
echo 'Ids des enregistrements en cache : <pre>'.print_r($cache->getIds(), true).'</pre>';
// Affichage des ids du cache
echo 'Tags des enregistrements en cache : <pre>'.print_r($cache->getTags(), true).'</pre>';
// Affichage des ids du cache pour un tag donnée
$tag01 = 'tagTest01';
$tag02 = 'tagTest02';
$tag03 = 'tagTest03';
echo "Ids avec les tag '$tag02, $tag03' : ".'<pre>'.print_r($cache->getIdsAvecLesTags(array($tag02, $tag03)), true).'</pre>';
echo "Ids possédant le tag '$tag01' : ".'<pre>'.print_r($cache->getIdsAvecUnTag(array($tag01)), true).'</pre>';
echo "Ids sans les tag '$tag01, $tag02' : ".'<pre>'.print_r($cache->getIdsSansLesTags(array($tag01, $tag02)), true).'</pre>';
// Test du test de l'existence du cache
$id_test = $id01;
echo ($cache->tester($id_test) ? "OK : le cache '$id_test' existe" : "KO : le cache '$id_test' devrait exister").'<br/>';
// Affichage du pourcentage de remplissage
echo 'Pourcentage de remplissage : '.$cache->getPourcentageRemplissage().'%<br/>';
// Affichage des métadonnées
$meta03 = $cache->getMetadonnees($id03);
echo "Métadonnées du cache '$id03' : <pre>".print_r($meta03, true).'</pre>';
$meta01 = $cache->getMetadonnees($id_test);
echo "Métadonnées du cache '$id_test' : <pre>".print_r($meta01, true).'</pre>';
// Nettoyage & suppression
echo "Temps avant suppression du cache : ".(time() - $meta01['expiration']).'s<br/>';
if ((time() - $meta01['expiration']) >= -30) {
// Suppressions
$cache->supprimer($id_test);
echo (!$cache->tester($id_test) ? "OK : le cache '$id_test' a bien été supprimé" : "KO : le cache '$id_test' n'a pas été supprimé").'<br/>';
// Nettoyage
$cache->nettoyer(Cache::NETTOYAGE_MODE_AVEC_LES_TAGS, array($tag02, $tag03));
echo (!$cache->tester($id03) ? "OK : le cache '$id03' a bien été supprimé" : "KO : le cache '$id03' n'a pas été supprimé").'<br/>';
$cache->nettoyer(Cache::NETTOYAGE_MODE_SANS_LES_TAGS, array($tag01));
echo ($cache->tester($id02) ? "OK : le cache '$id02' n'a pas été supprimé" : "KO : le cache '$id02' a été supprimé").'<br/>';
$cache->nettoyer(Cache::NETTOYAGE_MODE_EXPIRATION);
echo ($cache->tester($id02) ? "OK : le cache '$id02' n'a pas été supprimé" : "KO : le cache '$id02' a été supprimé").'<br/>';
$cache->nettoyer(Cache::NETTOYAGE_MODE_TOUS);
echo (!$cache->tester($id01) ? "OK : le cache '$id02' a été supprimé" : "KO : le cache '$id02' n'a pas été supprimé").'<br/>';
} else if ((time() - $meta01['expiration']) < -60) {
// Test ajout d'une durée de vie supplémentaire
$meta01 = $cache->getMetadonnees($id_test);
echo "Durée de vie du cache '$id_test' : ".$meta01['expiration'].'<br/>';
$cache->ajouterSupplementDureeDeVie($id_test, -3540);
$meta02 = $cache->getMetadonnees($id_test);
echo "Durée de vie du cache '$id_test' après ajout supplément de -3540s : ".$meta02['expiration'].
' - diff. : '.($meta02['expiration'] - $meta01['expiration']).'<br/>';
}
}
}
?>
/tags/v0.3-aleaume/exemple/services/modules/0.1/MonService.php
New file
0,0 → 1,8
<?php
class MonService extends RestService {
public function consulter($ressources, $parametres) {
echo "ok";
}
}
?>
/tags/v0.3-aleaume/exemple/services/modules/0.1/ServiceCacheFichier.php
New file
0,0 → 1,99
<?php
class ServiceCacheFichier extends RestService {
public function consulter($ressources, $parametres) {
// Redéfinition ici mais peut être configuré depuis le fichier config.ini
$options = array(
'stockage_mode' => Cache::STOCKAGE_MODE_FICHIER,
'stockage_chemin' => Fichier::getDossierTmp(),
'controle_ecriture' => false,
'mise_en_cache' => true,
'cache_id_prefixe' => null,
'serialisation_auto' => false,
'nettoyage_auto' => 10,
'duree_de_vie' => 3600,
);
// Redéfinition ici mais peut être configuré depuis le fichier config.ini
$options_stockage = array(
'fichier_verrou' => false,
'controle_lecture' => false,
'controle_lecture_type' => 'crc32',
'dossier_niveau' => 2,
'dossier_umask' => 0707,
'fichier_prefixe' => 'tbf',
'fichier_umask' => 0606,
'metadonnees_max_taille' => 100
);
$cache = new Cache($options, $options_stockage);
$id = 'monCache'; // id de cache de "ce que l'on veut cacher"
$id01 = $id.'01';
$id02 = $id.'02';
$id03 = $id.'03';
if (!($donnees = $cache->charger($id01))) {
$donnees = 'Mise en cache à : '.strftime('%A %d %B %Y à %H:%M:%S', time()).'<br/>';
for ($i = 0; $i < 100000; $i++) {
$donnees .= $i;
}
$cache->sauver($donnees, $id01);
$cache->sauver($donnees, $id02, array('tagTest01'));
$cache->sauver($donnees, $id03, array('tagTest01','tagTest02', 'tagTest03'));
}
// Affichage des données
echo $donnees.'<br/>';
// Affichage des ids du cache
echo 'Ids des enregistrements en cache : <pre>'.print_r($cache->getIds(), true).'</pre>';
// Affichage des ids du cache
echo 'Tags des enregistrements en cache : <pre>'.print_r($cache->getTags(), true).'</pre>';
// Affichage des ids du cache pour un tag donnée
$tag01 = 'tagTest01';
$tag02 = 'tagTest02';
$tag03 = 'tagTest03';
echo "Ids avec les tag '$tag02, $tag03' : ".'<pre>'.print_r($cache->getIdsAvecLesTags(array($tag02, $tag03)), true).'</pre>';
echo "Ids possédant le tag '$tag01' : ".'<pre>'.print_r($cache->getIdsAvecUnTag(array($tag01)), true).'</pre>';
echo "Ids sans les tag '$tag01, $tag02' : ".'<pre>'.print_r($cache->getIdsSansLesTags(array($tag01, $tag02)), true).'</pre>';
// Test du test de l'existence du cache
$id_test = $id01;
echo ($cache->tester($id_test) ? "OK : le cache '$id_test' existe" : "KO : le cache '$id_test' devrait exister").'<br/>';
// Affichage du pourcentage de remplissage
echo 'Pourcentage de remplissage : '.$cache->getPourcentageRemplissage().'%<br/>';
// Affichage des métadonnées
$meta03 = $cache->getMetadonnees($id03);
echo "Métadonnées du cache '$id03' : <pre>".print_r($meta03, true).'</pre>';
$meta01 = $cache->getMetadonnees($id_test);
echo "Métadonnées du cache '$id_test' : <pre>".print_r($meta01, true).'</pre>';
// Nettoyage & suppression
echo "Temps avant suppression du cache : ".(time() - $meta01['expiration']).'s<br/>';
if ((time() - $meta01['expiration']) >= -30) {
// Suppressions
$cache->supprimer($id_test);
echo (!$cache->tester($id_test) ? "OK : le cache '$id_test' a bien été supprimé" : "KO : le cache '$id_test' n'a pas été supprimé").'<br/>';
// Nettoyage
$cache->nettoyer(Cache::NETTOYAGE_MODE_AVEC_LES_TAGS, array($tag02, $tag03));
echo (!$cache->tester($id03) ? "OK : le cache '$id03' a bien été supprimé" : "KO : le cache '$id03' n'a pas été supprimé").'<br/>';
$cache->nettoyer(Cache::NETTOYAGE_MODE_SANS_LES_TAGS, array($tag01));
echo ($cache->tester($id02) ? "OK : le cache '$id02' n'a pas été supprimé" : "KO : le cache '$id02' a été supprimé").'<br/>';
$cache->nettoyer(Cache::NETTOYAGE_MODE_EXPIRATION);
echo ($cache->tester($id02) ? "OK : le cache '$id02' n'a pas été supprimé" : "KO : le cache '$id02' a été supprimé").'<br/>';
$cache->nettoyer(Cache::NETTOYAGE_MODE_TOUS);
echo (!$cache->tester($id01) ? "OK : le cache '$id02' a été supprimé" : "KO : le cache '$id02' n'a pas été supprimé").'<br/>';
} else if ((time() - $meta01['expiration']) < -60) {
// Test ajout d'une durée de vie supplémentaire
$meta01 = $cache->getMetadonnees($id_test);
echo "Durée de vie du cache '$id_test' : ".$meta01['expiration'].'<br/>';
$cache->ajouterSupplementDureeDeVie($id_test, -3540);
$meta02 = $cache->getMetadonnees($id_test);
echo "Durée de vie du cache '$id_test' après ajout supplément de -3540s : ".$meta02['expiration'].
' - diff. : '.($meta02['expiration'] - $meta01['expiration']).'<br/>';
}
}
}
?>
/tags/v0.3-aleaume/exemple/services/modules/0.1/ServiceCacheSimple.php
New file
0,0 → 1,28
<?php
class ServiceCacheSimple extends RestService {
public function consulter($ressources, $parametres) {
// Redéfinition ici mais peut être configuré depuis le fichier config.ini
$options = array(
'mise_en_cache' => true,
'stockage_mode' => Cache::STOCKAGE_MODE_SIMPLE,
//'stockage_chemin' => 'indiquer le chemin du dossier où mettre le cache par défaut utilise Fichier::getDossierTmp()',
'duree_de_vie' => 10
);
// Le cache Simple utilise le design pattern fabrique pour être généré.
$cache = Cache::fabriquer(Cache::STOCKAGE_MODE_SIMPLE, $options);
$id = 'monCache1'; // id de cache de "ce que l'on veut cacher"
if (!($donnees = $cache->charger($id))) {
$donnees = 'Mise en cache à : '.strftime('%A %d %B %Y à %H:%M:%S', time()).'<br/>';
for ($i = 0; $i < 100000; $i++) {
$donnees .= $i;
}
$cache->sauver($donnees, $id);
}
// Affichage des données
echo '<hr/>'.$donnees.'<hr/><p>Hors cache : '.strftime('%A %d %B %Y à %H:%M:%S').'</p>';
}
}
?>
/tags/v0.3-aleaume/exemple/services/configurations/config.ini
New file
0,0 → 1,21
; Encodage : UTF-8
; +------------------------------------------------------------------------------------------------------+
; Info sur l'application
info.nom = Services de tests
; Abréviation de l'application
info.abr = SERVICE
; Version du Framework nécessaire au fonctionnement de cette application
info.framework.version = 0.3
;Encodage de l'application
encodage_appli = "UTF-8"
 
; +------------------------------------------------------------------------------------------------------+
; Débogage
; Indique si oui ou non on veut afficher le débogage.
debogage = true
; Indique si oui ou non on veut lancer le chronométrage
chronometrage = false
 
; +------------------------------------------------------------------------------------------------------+
; Spécifique aux services
serveur.baseURL = /framework/exemple/services/
/tags/v0.3-aleaume/exemple/services/framework.defaut.php
New file
0,0 → 1,6
<?php
// Inclusion du Framework
// Renomer ce fichier en "framework.php"
// Indiquyer ci-dessous le chemin absolu vers le fichier Framework.php de la version désirée du Framework
require_once '../../framework/Framework.php';
?>
/tags/v0.3-aleaume/exemple/services
New file
Property changes:
Added: svn:ignore
+framework.php
/tags/v0.3-aleaume/exemple/scripts/modules/mon_script/config.ini
New file
0,0 → 1,0
param1 = "config OK";
/tags/v0.3-aleaume/exemple/scripts/modules/mon_script/MonScript.php
New file
0,0 → 1,66
<?php
// declare(encoding='UTF-8');
/**
* Exemple de script utilisable avec le TBFramework.
* Pour le lancer, taper en ligne de commande, en vous plaçant dans le dossier /framework/exemple/scripts/ :
* <code>/opt/lampp/bin/php cli.php mon_script -a test</code>
*
* @author Jean-Pascal MILCENT <jpm@tela-botanica.org>
* @copyright Copyright (c) 2010, Tela Botanica (accueil@tela-botanica.org)
* @license http://www.gnu.org/licenses/gpl.html Licence GNU-GPL-v3
* @license http://www.cecill.info/licences/Licence_CeCILL_V2-fr.txt Licence CECILL-v2
* @version $Id$
*/
class MonScript extends Script {
protected $parametres_autorises = array(
'-y' => array(false, 'exemple de valeur par défaut', 'Un parametre supplémentaire de test'));
public function executer() {
// Récupération de paramêtres
 
// Lancement de l'action demandée
$cmd = $this->getParametre('a');
switch ($cmd) {
case 'test' :
$this->executerTest();
break;
default :
$this->traiterErreur('Erreur : la commande "%s" n\'existe pas!', array($cmd));
}
}
 
private function executerTest() {
print('Config: '.Config::get('param1')."\n");
$this->traiterErreur("Un msg d'%s", array('erreur'));
$this->traiterErreur("Un msg d'erreur sans paramètre");
$this->traiterAvertissement("Un msg d'%s", array('avertissement'));
$this->traiterAvertissement("Un msg d'avertissement sans paramètre");
$this->traiterInfo("Un msg d'%s", array('info'));
$this->traiterInfo("Un msg d'info sans paramètre");
echo $this->formaterMsg("Un msg %s", array('formaté'));
echo $this->formaterMsg("Le parametre y : %s", array($this->getParametre('y')));
// Test de l'affichage de l'avancement dans une boucle en partant de 1
$ma_liste = array();
for ($i = 0; $i < 1000; $i++) {
$ma_liste[] = $i;
for ($j = 0; $j < 100; $j++) {
$ma_liste[] = "$i-$j";
// 1 seule boucle peut être affichée
}
$this->afficherAvancement("Afficher de l'avancement de la boucle for", 1);
}
echo "\n";
// Test de l'affichage de l'avancement dans une boucle en partant par défaut de 0
foreach ($ma_liste as $cle => $valeur) {
$this->afficherAvancement("Afficher de l'avancement de la boucle foreach");
}
echo "\n";
print("test réussi!\n");
}
}
?>
/tags/v0.3-aleaume/exemple/scripts/configurations/config.ini
New file
0,0 → 1,19
; Encodage : UTF-8
; +------------------------------------------------------------------------------------------------------+
; Info sur l'application
info.nom = Scripts de tests
; Abréviation de l'application
info.abr = SCRIPTS
; Version du Framework nécessaire au fonctionnement de cette application
info.framework.version = 0.3
; Encodage de l'application
encodage_appli = "UTF-8"
; Chemin de l'application (pour l'utiliser dans ce fichier)
chemin_scripts = "php:Framework::getCheminAppli()"
 
; +------------------------------------------------------------------------------------------------------+
; Débogage
; Indique si oui ou non on veut afficher le débogage.
debogage = true
; Indique si oui ou non on veut lancer le chronométrage
chronometrage = false
/tags/v0.3-aleaume/exemple/scripts/framework.defaut.php
New file
0,0 → 1,6
<?php
// Inclusion du Framework
// Renomer ce fichier en "framework.php"
// Indiquyer ci-dessous le chemin absolu vers le fichier Framework.php de la version désirée du Framework
require_once '../../framework/Framework.php';
?>
/tags/v0.3-aleaume/exemple/scripts/cli.php
New file
0,0 → 1,37
<?php
// Encodage : UTF-8
// +-------------------------------------------------------------------------------------------------------------------+
/**
* Initialise le chargement et l'exécution des scripts
*
* Lancer ce fichier en ligne de commande avec :
* <code>/opt/lampp/bin/php cli.php mon_script -a test</code>
*
//Auteur original :
* @author Jean-Pascal MILCENT <jpm@tela-botanica.org>
* @author Delphine CAUQUIL <delphine@tela-botanica.org>
* @copyright Tela-Botanica 1999-2008
* @licence GPL v3 & CeCILL v2
* @version $Id$
*/
// +-------------------------------------------------------------------------------------------------------------------+
 
// Le fichier Framework.php du Framework de Tela Botanica doit être appelée avant tout autre chose dans l'application.
// Sinon, rien ne sera chargé.
// Chemin du fichier chargeant le framework requis
$framework = dirname(__FILE__).DIRECTORY_SEPARATOR.'framework.php';
if (!file_exists($framework)) {
$e = "Veuillez paramétrer l'emplacement et la version du Framework dans le fichier $framework";
trigger_error($e, E_USER_ERROR);
} else {
// Inclusion du Framework
require_once $framework;
 
// Ajout d'information concernant cette application
Framework::setCheminAppli(__FILE__);// Obligatoire
Framework::setInfoAppli(Config::get('info'));
 
// Initialisation et lancement du script appelé en ligne de commande
Cli::executer();
}
?>
/tags/v0.3-aleaume/exemple/scripts
New file
Property changes:
Added: svn:ignore
+framework.php
/tags/v0.3-aleaume/exemple/openid/index.php
New file
0,0 → 1,54
<?php
//Inclusion du framework
require '../../framework/Framework.php';
 
// Ajout d'information concernant cette application
Framework::setCheminAppli(__FILE__);// Obligatoire
Framework::setInfoAppli(Config::get('info'));// Optionnel
$status = "";
if (isset($_POST['openid_action']) &&
$_POST['openid_action'] == "login" &&
!empty($_POST['openid_identifier'])) {
 
$consumer = new OpenIdClient();
if (!$consumer->login($_POST['openid_identifier'])) {
$status = "OpenID login failed.";
}
} else if (isset($_GET['openid_mode'])) {
if ($_GET['openid_mode'] == "id_res") {
$consumer = new OpenIdClient();
if ($consumer->verify($_GET, $id)) {
$status = "VALID " . htmlspecialchars($id);
} else {
$status = "INVALID " . htmlspecialchars($id);
}
} else if ($_GET['openid_mode'] == "cancel") {
$status = "CANCELLED";
}
}
?>
 
<!DOCTYPE html>
<html lang="fr">
<head>
<meta charset="UTF-8">
<meta http-equiv="Content-type" content="text/html;charset=UTF-8" />
<title>Client Open Id de Tela Botanica - Identification</title>
<meta name="DC.title" content="Client Open Id de Tela Botanica - Identification" />
<meta name="description" content="Client de l'application Open Id de Tela Botanica, Identification unique" />
<meta name="keywords" content="OpenId, identification automatique, Tela Botanica" />
<meta name="author" content="Grégoire Duché" />
</head>
<body>
<h1>Identification par OpenId</h1>
<?php echo "$status<br>" ?>
<p>Veuillez saisir les informations de connexion ci-dessous : </p>
<!-- TODO : ajouter action="" -->
<form name="identication" method="post">
<input type="text" name="openid_identifier">
<input type="submit" name="openid_action" value="login">
</form>
</body>
</html>
/tags/v0.3-aleaume/exemple
New file
Property changes:
Added: svn:ignore
+framework.php
/tags/v0.3-aleaume/doc/genererDoc.sh
New file
0,0 → 1,65
#!/bin/bash
########################################################################################################################
# But : création et mise en ligne automatique sur le serveur par ftp, de la dernière version de la doc du Framework.
# Auteur : Jean-Pascal Milcent <jpm@tela-botanica.org>
# License : GPL v3
# Création : 04 mars 2010
# Version: 0.1
# $Id$
########################################################################################################################
# Constante
NBREPARAM=$#
TITRE="Documentation du Framework de Tela Botanica"
SOURCE=/opt/lampp/htdocs/framework/framework
CIBLE=/opt/lampp/htdocs/framework/doc
FTP_CIBLE="/www/doc/framework"
IGNORER=.htaccess,config.ini
FORMAT=HTML:frames:DOM/phpdoc.de,HTML:Smarty:PHP
PACKAGE_DEFAUT="Framework"
CATEGORIE_DEFAUT="php 5.2"
SILENCIEUX="on"
 
# Aide
E_OPTERR=65
if [ "$1" = '--help' ]
then # Le script a besoin d'au moins un argument sur la ligne de commande
echo "Usage $0 -[parameters -u, -p ]"
echo "Paramétres : "
echo " -h: indiquer l'hote ftp"
echo " -u: indiquer le nom de l'utilisateur ftp"
echo " -p: indiquer le mot de passe de l'utilisateur ftp"
exit $E_OPTERR
fi
 
# Récupération des paramètres et des options de la ligne de commande
TEMP=`getopt -o u:p:h: -l help: -- "$@"`
if [ $? != 0 ] ; then echo "Terminating..." >&2 ; exit 1 ; fi
eval set -- "$TEMP"
while [ ! -z "$1" ] ; do
#echo $1" # "$2
case "$1" in
-h) HOST=$2;;
-u) FTP_USER=$2;;
-p) FTP_PASSWD=$2;;
--) shift ; break ;;
*) echo "Internal error!" ; exit 1 ;;
esac
shift 2
done
 
# Suppression des dossiers précédent de la doc
if [ -d HTMLframesConverter ]; then
rm -fR HTMLframesConverter
fi;
if [ -d HTMLSmartyConverter ]; then
rm -fR HTMLSmartyConverter
fi;
echo "Génération de la documentation :";
/opt/lampp/bin/phpdoc -t $CIBLE -i $IGNORER -o $FORMAT -d $SOURCE -ti $TITRE -s on -dn $PACKAGE_DEFAUT -dc $CATEGORIE_DEFAUT -q $SILENCIEUX
 
if [ $NBREPARAM -eq 0 ]; then
echo "Pas de transfert sur le serveur. Utiliser --help pour voir les options de transfert."
else
echo "Transfert sur le serveur de l'application :";
lftp ftp://$FTP_USER:$FTP_PASSWD@$HOST -e "set ftp:passive off; mirror -e -R -L -x .svn -x genererDoc.sh $CIBLE $FTP_CIBLE ; quit"
fi;
Property changes:
Added: svn:eol-style
+native
\ No newline at end of property
Added: svn:executable
+*
\ No newline at end of property
/tags/v0.3-aleaume/doc/HTMLframesConverter/elementindex.html
New file
0,0 → 1,937
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<!-- template designed by Marco Von Ballmoos -->
<title></title>
<meta http-equiv='Content-Type' content='text/html; charset=UTF-8'/>
<link rel="stylesheet" href="media/stylesheet.css" />
</head>
<body>
<a name="top"></a>
<h2>Full index</h2>
<h3>Package indexes</h3>
<ul>
<li><a href="elementindex_Framework.html">Framework</a></li>
</ul>
<br />
<div class="index-letter-menu">
<a class="index-letter" href="elementindex.html#a">a</a>
<a class="index-letter" href="elementindex.html#c">c</a>
<a class="index-letter" href="elementindex.html#d">d</a>
<a class="index-letter" href="elementindex.html#e">e</a>
<a class="index-letter" href="elementindex.html#g">g</a>
<a class="index-letter" href="elementindex.html#i">i</a>
<a class="index-letter" href="elementindex.html#l">l</a>
<a class="index-letter" href="elementindex.html#m">m</a>
<a class="index-letter" href="elementindex.html#n">n</a>
<a class="index-letter" href="elementindex.html#o">o</a>
<a class="index-letter" href="elementindex.html#p">p</a>
<a class="index-letter" href="elementindex.html#r">r</a>
<a class="index-letter" href="elementindex.html#s">s</a>
<a class="index-letter" href="elementindex.html#u">u</a>
<a class="index-letter" href="elementindex.html#v">v</a>
<a class="index-letter" href="elementindex.html#_">_</a>
</div>
 
<a name="a"></a>
<div class="index-letter-section">
<div style="float: left" class="index-letter-title">a</div>
<div style="float: right"><a href="#top">top</a></div>
<div style="clear: both"></div>
</div>
<dl>
<dt class="field">
<span class="method-title">afficherChrono</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="Framework/Chronometre.html#methodafficherChrono">Chronometre::afficherChrono()</a> in Chronometre.php</div>
<div class="index-item-description">Méthode afficherChrono() - Permet d'afficher les temps d'éxécution de différentes parties d'un script.</div>
</dd>
<dt class="field">
<span class="method-title">ajouterEntree</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="Framework/Log.html#methodajouterEntree">Log::ajouterEntree()</a> in Log.php</div>
<div class="index-item-description">Ajoute une entrée au log spécifié par le paramètre $nomFichier</div>
</dd>
<dt class="field">
<span class="method-title">analyser</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="Framework/SquelettePhp.html#methodanalyser">SquelettePhp::analyser()</a> in SquelettePhp.php</div>
<div class="index-item-description">Fonction prenant en paramètre un chemin de fichier squelette et un tableau associatif de données, en extrait les variables, charge le squelette et retourne le résultat des deux combinés.</div>
</dd>
<dt class="field">
Application
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="Framework/Application.html">Application</a> in Application.php</div>
<div class="index-item-description">Classe fournissant des informations au Framework sur l'application.</div>
</dd>
<dt class="field">
<span class="include-title">Application.php</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="Framework/_Application.php.html">Application.php</a> in Application.php</div>
</dd>
<dt class="field">
<span class="include-title">autoload.inc.php</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="Framework/_autoload.inc.php.html">autoload.inc.php</a> in autoload.inc.php</div>
</dd>
<dt class="field">
<span class="method-title">autoloadAppliDefaut</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="Framework/_autoload.inc.php.html#functionautoloadAppliDefaut">autoloadAppliDefaut()</a> in autoload.inc.php</div>
</dd>
<dt class="field">
<span class="method-title">autoloadFw</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="Framework/_autoload.inc.php.html#functionautoloadFw">autoloadFw()</a> in autoload.inc.php</div>
</dd>
</dl>
<a name="c"></a>
<div class="index-letter-section">
<div style="float: left" class="index-letter-title">c</div>
<div style="float: right"><a href="#top">top</a></div>
<div style="clear: both"></div>
</div>
<dl>
<dt class="field">
<span class="method-title">charger</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="Framework/Config.html#methodcharger">Config::charger()</a> in Config.php</div>
<div class="index-item-description">Charge un fichier ini dans le tableau des paramètres de l'appli</div>
</dd>
<dt class="field">
<span class="method-title">chargerModele</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="Framework/Controleur.html#methodchargerModele">Controleur::chargerModele()</a> in Controleur.php</div>
<div class="index-item-description">Charge un modele donné et le rend disponible sous la forme $this-&gt;nom_modele</div>
</dd>
<dt class="field">
<span class="method-title">chargerVue</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="Framework/Controleur.html#methodchargerVue">Controleur::chargerVue()</a> in Controleur.php</div>
<div class="index-item-description">Fonction prenant en paramètre le nom d'un squelette et un tableau associatif de données, en extrait les variables, charge le squelette et crée une variable de classe portant le nom du squelette contenant les deux combinés.</div>
</dd>
<dt class="field">
Chronometre
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="Framework/Chronometre.html">Chronometre</a> in Chronometre.php</div>
<div class="index-item-description">Classe Chronometre() - Permet de stocker et d'afficher les temps d'éxécution de script.</div>
</dd>
<dt class="field">
<span class="include-title">Chronometre.php</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="Framework/_Chronometre.php.html">Chronometre.php</a> in Chronometre.php</div>
</dd>
<dt class="field">
Config
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="Framework/Config.html">Config</a> in Config.php</div>
<div class="index-item-description">Config permet de charger automatiquement les fichiers ini du Framework et de l'application.</div>
</dd>
<dt class="field">
<span class="include-title">Config.php</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="Framework/_Config.php.html">Config.php</a> in Config.php</div>
</dd>
<dt class="field">
Controleur
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="Framework/Controleur.html">Controleur</a> in Controleur.php</div>
<div class="index-item-description">Classe Controleur, coeur d'une application, c'est normalement la seule classe d'une application qui devrait être appelée de l'extérieur.</div>
</dd>
<dt class="field">
<span class="include-title">Controleur.php</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="Framework/_Controleur.php.html">Controleur.php</a> in Controleur.php</div>
</dd>
</dl>
<a name="d"></a>
<div class="index-letter-section">
<div style="float: left" class="index-letter-title">d</div>
<div style="float: right"><a href="#top">top</a></div>
<div style="clear: both"></div>
</div>
<dl>
<dt class="field">
Debug
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="Framework/Debug.html">Debug</a> in Debug.php</div>
<div class="index-item-description">Classe fournissant des fonctions de débogage équivalante à var_dump et print_r.</div>
</dd>
<dt class="field">
<span class="include-title">Debug.php</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="Framework/_Debug.php.html">Debug.php</a> in Debug.php</div>
</dd>
<dt class="field">
<span class="method-title">detruire</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="Framework/Registre.html#methoddetruire">Registre::detruire()</a> in Registre.php</div>
<div class="index-item-description">Détruit l'objet associé à l'intitulé, n'a pas d'effet si il n'y a pas d'objet associé</div>
</dd>
<dt class="field">
<span class="const-title">DS</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="Framework/_autoload.inc.php.html#defineDS">DS</a> in autoload.inc.php</div>
</dd>
<dt class="field">
<span class="method-title">dump</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="Framework/Debug.html#methoddump">Debug::dump()</a> in Debug.php</div>
<div class="index-item-description">Equivalent de var_dump</div>
</dd>
</dl>
<a name="e"></a>
<div class="index-letter-section">
<div style="float: left" class="index-letter-title">e</div>
<div style="float: right"><a href="#top">top</a></div>
<div style="clear: both"></div>
</div>
<dl>
<dt class="field">
<span class="method-title">etreAbsolue</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="Framework/Url.html#methodetreAbsolue">Url::etreAbsolue()</a> in Url.php</div>
<div class="index-item-description">Renvoie vrai ou faux suivant que l'instance en cours représente une URL relative ou absolue.</div>
</dd>
<dt class="field">
<span class="method-title">existe</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="Framework/Registre.html#methodexiste">Registre::existe()</a> in Registre.php</div>
<div class="index-item-description">Teste si un objet est présent sous un intitulé donné</div>
</dd>
<dt class="field">
<span class="method-title">existe</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="Framework/Config.html#methodexiste">Config::existe()</a> in Config.php</div>
<div class="index-item-description">Vérifie si la valeur d'un paramètre existe</div>
</dd>
</dl>
<a name="g"></a>
<div class="index-letter-section">
<div style="float: left" class="index-letter-title">g</div>
<div style="float: right"><a href="#top">top</a></div>
<div style="clear: both"></div>
</div>
<dl>
<dt class="field">
<span class="method-title">gererErreur</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="Framework/GestionnaireException.html#methodgererErreur">GestionnaireException::gererErreur()</a> in GestionnaireException.php</div>
<div class="index-item-description">Gère les erreurs en les convertissant en exceptions (remplace la fonction gestion d'erreurs native de php)</div>
</dd>
<dt class="field">
<span class="method-title">gererException</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="Framework/GestionnaireException.html#methodgererException">GestionnaireException::gererException()</a> in GestionnaireException.php</div>
<div class="index-item-description">Fonction de gestion des exceptions, remplace le handler par défaut</div>
</dd>
<dt class="field">
GestionnaireException
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="Framework/GestionnaireException.html">GestionnaireException</a> in GestionnaireException.php</div>
<div class="index-item-description">Classe de gestion des exceptions.</div>
</dd>
<dt class="field">
<span class="include-title">GestionnaireException.php</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="Framework/_GestionnaireException.php.html">GestionnaireException.php</a> in GestionnaireException.php</div>
</dd>
<dt class="field">
<span class="method-title">get</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="Framework/Registre.html#methodget">Registre::get()</a> in Registre.php</div>
<div class="index-item-description">Renvoie l'objet associé à l'intitulé donné en paramètre</div>
</dd>
<dt class="field">
<span class="method-title">get</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="Framework/Config.html#methodget">Config::get()</a> in Config.php</div>
<div class="index-item-description">Acesseur pour la valeur d'un paramètre</div>
</dd>
<dt class="field">
<span class="method-title">getAutorite</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="Framework/Url.html#methodgetAutorite">Url::getAutorite()</a> in Url.php</div>
<div class="index-item-description">Renvoie la partie autorité, i.e. [ infoUtilisateur &quot;@&quot; ] hote [ &quot;:&quot; port ], ou false si celle-ci est absente.</div>
</dd>
<dt class="field">
<span class="method-title">getCanonique</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="Framework/Url.html#methodgetCanonique">Url::getCanonique()</a> in Url.php</div>
<div class="index-item-description">Renvoie une instance de Url representant l'URL canonique du script PHP en cours d'éxécution</div>
</dd>
<dt class="field">
<span class="method-title">getChemin</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="Framework/Application.html#methodgetChemin">Application::getChemin()</a> in Application.php</div>
<div class="index-item-description">accesseur pour le chemin</div>
</dd>
<dt class="field">
<span class="method-title">getChemin</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="Framework/Url.html#methodgetChemin">Url::getChemin()</a> in Url.php</div>
<div class="index-item-description">Renvoie la partie chemin (chemin) (éventuellement vide).</div>
</dd>
<dt class="field">
<span class="method-title">getContexte</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="Framework/GestionnaireException.html#methodgetContexte">GestionnaireException::getContexte()</a> in GestionnaireException.php</div>
<div class="index-item-description">Renvoie le booleen définissant si l'on affiche le contexte ou non</div>
</dd>
<dt class="field">
<span class="method-title">getDemande</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="Framework/Url.html#methodgetDemande">Url::getDemande()</a> in Url.php</div>
<div class="index-item-description">Renvoie une instance de Url representant l'URL utilisée pour récupérer la requête en cours</div>
</dd>
<dt class="field">
<span class="method-title">getExceptions</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="Framework/GestionnaireException.html#methodgetExceptions">GestionnaireException::getExceptions()</a> in GestionnaireException.php</div>
<div class="index-item-description">Renvoie les exceptions au format (X)HTML</div>
</dd>
<dt class="field">
<span class="method-title">getFragment</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="Framework/Url.html#methodgetFragment">Url::getFragment()</a> in Url.php</div>
<div class="index-item-description">Renvoie le nom du fragment, ou false si &quot;#&quot; n'est pas present dans l'URL.</div>
</dd>
<dt class="field">
<span class="method-title">getHote</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="Framework/Url.html#methodgetHote">Url::getHote()</a> in Url.php</div>
<div class="index-item-description">Renvoie la partie hôte, ou false s'il n'y a pas de partie autorité, c.a.d.</div>
</dd>
<dt class="field">
<span class="method-title">getInfo</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="Framework/Application.html#methodgetInfo">Application::getInfo()</a> in Application.php</div>
<div class="index-item-description">accesseur pour le tableau d'infos</div>
</dd>
<dt class="field">
<span class="method-title">getInfoUtilisateur</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="Framework/Url.html#methodgetInfoUtilisateur">Url::getInfoUtilisateur()</a> in Url.php</div>
<div class="index-item-description">Renvoie la partie userinfio, ou false si celle-ci n'existe pas, i.e. si la partie autorité ne contient pas de &quot;@&quot;</div>
</dd>
<dt class="field">
<span class="method-title">getInstance</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="Framework/Registre.html#methodgetInstance">Registre::getInstance()</a> in Registre.php</div>
<div class="index-item-description">Fonction qui renvoie l'instance de classe en assurant son unicité, c'est l'unique méthode qui doit être</div>
</dd>
<dt class="field">
<span class="method-title">getInstance</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="Framework/GestionnaireException.html#methodgetInstance">GestionnaireException::getInstance()</a> in GestionnaireException.php</div>
<div class="index-item-description">Fonction d'accès au singleton</div>
</dd>
<dt class="field">
<span class="method-title">getInstance</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="Framework/Log.html#methodgetInstance">Log::getInstance()</a> in Log.php</div>
<div class="index-item-description">Fonction qui renvoie l'instance de classe en assurant son unicité, c'est l'unique méthode qui doit être</div>
</dd>
<dt class="field">
<span class="method-title">getMode</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="Framework/Debug.html#methodgetMode">Debug::getMode()</a> in Debug.php</div>
<div class="index-item-description">Accesseur pour le mode</div>
</dd>
<dt class="field">
<span class="method-title">getModele</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="Framework/Controleur.html#methodgetModele">Controleur::getModele()</a> in Controleur.php</div>
<div class="index-item-description">Retourne un modele donné</div>
</dd>
<dt class="field">
<span class="method-title">getMotDePasse</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="Framework/Url.html#methodgetMotDePasse">Url::getMotDePasse()</a> in Url.php</div>
<div class="index-item-description">renvoie la partie mot de passe de la partie infoUtilisateur (partie après le premier &quot;:&quot;), , ou false si aucune partie infoUtilisateur n'est définie (i.e. l'URL ne contient pas de &quot;@&quot; en face du nom d'hôte) ou si la partie infoUtilisateur ne contient pas de &quot;:&quot;.</div>
</dd>
<dt class="field">
<span class="method-title">getOption</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="Framework/Url.html#methodgetOption">Url::getOption()</a> in Url.php</div>
<div class="index-item-description">Renvoie la valeur de l'option specifiée.</div>
</dd>
<dt class="field">
<span class="method-title">getPort</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="Framework/Url.html#methodgetPort">Url::getPort()</a> in Url.php</div>
<div class="index-item-description">Renvoie le numéro de port, ou false si aucun numéro de port n'est spécifié, i.e. le port par défaut doit utilisé.</div>
</dd>
<dt class="field">
<span class="method-title">getRequete</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="Framework/Url.html#methodgetRequete">Url::getRequete()</a> in Url.php</div>
<div class="index-item-description">renvoie la chaine de requête (requete string) (sans le premier &quot;?&quot;), ou false si &quot;?&quot; n'est pas présent dans l'url.</div>
</dd>
<dt class="field">
<span class="method-title">getSchema</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="Framework/Url.html#methodgetSchema">Url::getSchema()</a> in Url.php</div>
<div class="index-item-description">Retourne le schéma, c.a.d. &quot;http&quot; ou &quot;urn&quot;, ou false si aucun schéma n'est spécifié, i.e. l'url est une url relative</div>
</dd>
<dt class="field">
<span class="method-title">getTemps</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="Framework/Chronometre.html#methodgetTemps">Chronometre::getTemps()</a> in Chronometre.php</div>
<div class="index-item-description">Accesseurs :</div>
</dd>
<dt class="field">
<span class="method-title">getURL</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="Framework/Url.html#methodgetURL">Url::getURL()</a> in Url.php</div>
<div class="index-item-description">Renvoie un représentation sous forme de chaine de l'URL</div>
</dd>
<dt class="field">
<span class="method-title">getURLDemande</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="Framework/Url.html#methodgetURLDemande">Url::getURLDemande()</a> in Url.php</div>
<div class="index-item-description">Renvoie l'URL utilisée pour récupérer la requête en cours</div>
</dd>
<dt class="field">
<span class="method-title">getURLNormalisee</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="Framework/Url.html#methodgetURLNormalisee">Url::getURLNormalisee()</a> in Url.php</div>
<div class="index-item-description">Renvoie une représentation de cette URL sous forme de chaine normalisée. Utile pour la comparaison d'URLs</div>
</dd>
<dt class="field">
<span class="method-title">getUtilisateur</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="Framework/Url.html#methodgetUtilisateur">Url::getUtilisateur()</a> in Url.php</div>
<div class="index-item-description">renvoie la partie user de la partie infoUtilisateur (partie précédant le premier &quot;:&quot;), ou false si aucune partie infoUtilisateur n'est définie.</div>
</dd>
<dt class="field">
<span class="method-title">getVariablesRequete</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="Framework/Url.html#methodgetVariablesRequete">Url::getVariablesRequete()</a> in Url.php</div>
<div class="index-item-description">Renvoie la requete string sous forme d'un tableau de variables telles qu'elles apparaitraient dans le $_GET d'un script PHP</div>
</dd>
<dt class="field">
<span class="method-title">getVue</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="Framework/Controleur.html#methodgetVue">Controleur::getVue()</a> in Controleur.php</div>
<div class="index-item-description">Fonction prenant en paramètre le nom d'un squelette et un tableau associatif de données, en extrait les variables, charge le squelette et retourne le résultat des deux combinés.</div>
</dd>
</dl>
<a name="i"></a>
<div class="index-letter-section">
<div style="float: left" class="index-letter-title">i</div>
<div style="float: right"><a href="#top">top</a></div>
<div style="clear: both"></div>
</div>
<dl>
<dt class="field">
<span class="method-title">initialiserProtocole</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="Framework/Modele.html#methodinitialiserProtocole">Modele::initialiserProtocole()</a> in Modele.php</div>
<div class="index-item-description">initialise les constantes de classe à leur bonne valeur</div>
</dd>
</dl>
<a name="l"></a>
<div class="index-letter-section">
<div style="float: left" class="index-letter-title">l</div>
<div style="float: right"><a href="#top">top</a></div>
<div style="clear: both"></div>
</div>
<dl>
<dt class="field">
Log
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="Framework/Log.html">Log</a> in Log.php</div>
<div class="index-item-description">Classe permettant de logger des messages dans les fichier situés dans le dossier de log</div>
</dd>
<dt class="field">
<span class="include-title">Log.php</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="Framework/_Log.php.html">Log.php</a> in Log.php</div>
</dd>
</dl>
<a name="m"></a>
<div class="index-letter-section">
<div style="float: left" class="index-letter-title">m</div>
<div style="float: right"><a href="#top">top</a></div>
<div style="clear: both"></div>
</div>
<dl>
<dt class="field">
<span class="var-title">$mode</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="Framework/Debug.html#var$mode">Debug::$mode</a> in Debug.php</div>
<div class="index-item-description">mode de php (cli ou sapi)</div>
</dd>
<dt class="field">
Modele
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="Framework/Modele.html">Modele</a> in Modele.php</div>
<div class="index-item-description">Classe modèle, donc d'accés au données, elle ne devrait pas être appelée de l'extérieur.</div>
</dd>
<dt class="field">
<span class="include-title">Modele.php</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="Framework/_Modele.php.html">Modele.php</a> in Modele.php</div>
</dd>
</dl>
<a name="n"></a>
<div class="index-letter-section">
<div style="float: left" class="index-letter-title">n</div>
<div style="float: right"><a href="#top">top</a></div>
<div style="clear: both"></div>
</div>
<dl>
<dt class="field">
<span class="method-title">normaliser</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="Framework/Url.html#methodnormaliser">Url::normaliser()</a> in Url.php</div>
<div class="index-item-description">Renvoie une instance normalisée de Url</div>
</dd>
</dl>
<a name="o"></a>
<div class="index-letter-section">
<div style="float: left" class="index-letter-title">o</div>
<div style="float: right"><a href="#top">top</a></div>
<div style="clear: both"></div>
</div>
<dl>
<dt class="field">
OPTION_ENCODER_CLES
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="Framework/Url.html#constOPTION_ENCODER_CLES">Url::OPTION_ENCODER_CLES</a> in Url.php</div>
<div class="index-item-description">URL-encoder les clés des variables dans les requêtes. Par défaut à true.</div>
</dd>
<dt class="field">
OPTION_SEPARATEUR_ENTREE
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="Framework/Url.html#constOPTION_SEPARATEUR_ENTREE">Url::OPTION_SEPARATEUR_ENTREE</a> in Url.php</div>
<div class="index-item-description">Séparateurs de variables lors du parsing de la requête. Chaque caractère est considéré comme un séparateur. Par défaut, spécifié par le paramêtre arg_separator.input dans php.ini (par défaut &quot;&amp;&quot;).</div>
</dd>
<dt class="field">
OPTION_SEPARATEUR_SORTIE
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="Framework/Url.html#constOPTION_SEPARATEUR_SORTIE">Url::OPTION_SEPARATEUR_SORTIE</a> in Url.php</div>
<div class="index-item-description">Séparateur de variables lors de la génération de la requête. Par défaut, spécifié par le paramètre arg_separator.output dans php.ini (par défaut &quot;&amp;&quot;).</div>
</dd>
<dt class="field">
OPTION_STRICTE
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="Framework/Url.html#constOPTION_STRICTE">Url::OPTION_STRICTE</a> in Url.php</div>
<div class="index-item-description">Parsing strict dans resoudre() (voir RFC 3986, section 5.2.2). Par défaut à true.</div>
</dd>
<dt class="field">
OPTION_UTILISER_CROCHETS
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="Framework/Url.html#constOPTION_UTILISER_CROCHETS">Url::OPTION_UTILISER_CROCHETS</a> in Url.php</div>
<div class="index-item-description">Répresenter les tableaux dans les requêtes en utilisant la notation php []. Par défaut à true.</div>
</dd>
</dl>
<a name="p"></a>
<div class="index-letter-section">
<div style="float: left" class="index-letter-title">p</div>
<div style="float: right"><a href="#top">top</a></div>
<div style="clear: both"></div>
</div>
<dl>
<dt class="field">
<span class="method-title">printr</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="Framework/Debug.html#methodprintr">Debug::printr()</a> in Debug.php</div>
<div class="index-item-description">Equivalent de print_r</div>
</dd>
<dt class="field">
<span class="method-title">proteger</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="Framework/Modele.html#methodproteger">Modele::proteger()</a> in Modele.php</div>
<div class="index-item-description">protège une chaine de caractères avant l'insertion dans la base de données</div>
</dd>
<dt class="field">
<span class="const-title">PS</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="Framework/_autoload.inc.php.html#definePS">PS</a> in autoload.inc.php</div>
</dd>
</dl>
<a name="r"></a>
<div class="index-letter-section">
<div style="float: left" class="index-letter-title">r</div>
<div style="float: right"><a href="#top">top</a></div>
<div style="clear: both"></div>
</div>
<dl>
<dt class="field">
Registre
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="Framework/Registre.html">Registre</a> in Registre.php</div>
<div class="index-item-description">Classe registre, qui permet un accès à différentes variables à travers les autres classes.</div>
</dd>
<dt class="field">
<span class="include-title">Registre.php</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="Framework/_Registre.php.html">Registre.php</a> in Registre.php</div>
</dd>
<dt class="field">
<span class="method-title">requete</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="Framework/Modele.html#methodrequete">Modele::requete()</a> in Modele.php</div>
<div class="index-item-description">Fonction qui appelle la bonne fonction pour executer une requête suivant le type de bdd.</div>
</dd>
<dt class="field">
<span class="method-title">requeteTous</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="Framework/Modele.html#methodrequeteTous">Modele::requeteTous()</a> in Modele.php</div>
</dd>
<dt class="field">
<span class="method-title">requeteUn</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="Framework/Modele.html#methodrequeteUn">Modele::requeteUn()</a> in Modele.php</div>
</dd>
<dt class="field">
<span class="method-title">resoudre</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="Framework/Url.html#methodresoudre">Url::resoudre()</a> in Url.php</div>
<div class="index-item-description">Renvoie une instance de Url représentant une URL absolue relative à cette URL.</div>
</dd>
</dl>
<a name="s"></a>
<div class="index-letter-section">
<div style="float: left" class="index-letter-title">s</div>
<div style="float: right"><a href="#top">top</a></div>
<div style="clear: both"></div>
</div>
<dl>
<dt class="field">
<span class="method-title">set</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="Framework/Registre.html#methodset">Registre::set()</a> in Registre.php</div>
<div class="index-item-description">Ajoute un objet au tableau selon un intitulé donné</div>
</dd>
<dt class="field">
<span class="method-title">setAutorite</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="Framework/Url.html#methodsetAutorite">Url::setAutorite()</a> in Url.php</div>
</dd>
<dt class="field">
<span class="method-title">setChemin</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="Framework/Application.html#methodsetChemin">Application::setChemin()</a> in Application.php</div>
<div class="index-item-description">Modificateur pour le chemin de base</div>
</dd>
<dt class="field">
<span class="method-title">setChemin</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="Framework/Url.html#methodsetChemin">Url::setChemin()</a> in Url.php</div>
</dd>
<dt class="field">
<span class="method-title">setContexte</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="Framework/GestionnaireException.html#methodsetContexte">GestionnaireException::setContexte()</a> in GestionnaireException.php</div>
<div class="index-item-description">Definit si l'on veut afficher le contexte ou non</div>
</dd>
<dt class="field">
<span class="method-title">setFragment</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="Framework/Url.html#methodsetFragment">Url::setFragment()</a> in Url.php</div>
</dd>
<dt class="field">
<span class="method-title">setHote</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="Framework/Url.html#methodsetHote">Url::setHote()</a> in Url.php</div>
</dd>
<dt class="field">
<span class="method-title">setInfo</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="Framework/Application.html#methodsetInfo">Application::setInfo()</a> in Application.php</div>
<div class="index-item-description">Le tableau des informations sur l'application possède les clés suivantes :</div>
</dd>
<dt class="field">
<span class="method-title">setInfoUtilisateur</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="Framework/Url.html#methodsetInfoUtilisateur">Url::setInfoUtilisateur()</a> in Url.php</div>
<div class="index-item-description">Setteur pour la partie infoUtilisateur. Si deux argument sont passé, ils sont combinés dans la partie infoUtilisateur de cette manière username &quot;:&quot; password.</div>
</dd>
<dt class="field">
<span class="method-title">setOption</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="Framework/Url.html#methodsetOption">Url::setOption()</a> in Url.php</div>
<div class="index-item-description">Met à jour la valeur de l'option spécifiée.</div>
</dd>
<dt class="field">
<span class="method-title">setPort</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="Framework/Url.html#methodsetPort">Url::setPort()</a> in Url.php</div>
</dd>
<dt class="field">
<span class="method-title">setRequete</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="Framework/Url.html#methodsetRequete">Url::setRequete()</a> in Url.php</div>
</dd>
<dt class="field">
<span class="method-title">setSchema</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="Framework/Url.html#methodsetSchema">Url::setSchema()</a> in Url.php</div>
</dd>
<dt class="field">
<span class="method-title">setTemps</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="Framework/Chronometre.html#methodsetTemps">Chronometre::setTemps()</a> in Chronometre.php</div>
<div class="index-item-description">Setteur pour la variable temps</div>
</dd>
<dt class="field">
<span class="method-title">setVariableRequete</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="Framework/Url.html#methodsetVariableRequete">Url::setVariableRequete()</a> in Url.php</div>
</dd>
<dt class="field">
<span class="method-title">setVariablesRequete</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="Framework/Url.html#methodsetVariablesRequete">Url::setVariablesRequete()</a> in Url.php</div>
</dd>
<dt class="field">
SquelettePhp
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="Framework/SquelettePhp.html">SquelettePhp</a> in SquelettePhp.php</div>
<div class="index-item-description">Classe SquelettePhp, traitant les squelette Php utilisant la syntaxe courte php ou pas.</div>
</dd>
<dt class="field">
<span class="include-title">SquelettePhp.php</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="Framework/_SquelettePhp.php.html">SquelettePhp.php</a> in SquelettePhp.php</div>
</dd>
</dl>
<a name="u"></a>
<div class="index-letter-section">
<div style="float: left" class="index-letter-title">u</div>
<div style="float: right"><a href="#top">top</a></div>
<div style="clear: both"></div>
</div>
<dl>
<dt class="field">
<span class="method-title">unsetVariableRequete</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="Framework/Url.html#methodunsetVariableRequete">Url::unsetVariableRequete()</a> in Url.php</div>
</dd>
<dt class="field">
Url
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="Framework/Url.html">Url</a> in Url.php</div>
<div class="index-item-description">classe Url, gérant le découpage des paramètres, leurs modification etc...</div>
</dd>
<dt class="field">
<span class="include-title">Url.php</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="Framework/_Url.php.html">Url.php</a> in Url.php</div>
</dd>
</dl>
<a name="v"></a>
<div class="index-letter-section">
<div style="float: left" class="index-letter-title">v</div>
<div style="float: right"><a href="#top">top</a></div>
<div style="clear: both"></div>
</div>
<dl>
<dt class="field">
<span class="method-title">verifierOuvrirFichier</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="Framework/Log.html#methodverifierOuvrirFichier">Log::verifierOuvrirFichier()</a> in Log.php</div>
<div class="index-item-description">Vérifie la présence d'un fichier dans le tableau, ses droits d'écriture,</div>
</dd>
<dt class="field">
<span class="method-title">viderLog</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="Framework/Log.html#methodviderLog">Log::viderLog()</a> in Log.php</div>
<div class="index-item-description">Vide un fichier log indiqué</div>
</dd>
</dl>
<a name="_"></a>
<div class="index-letter-section">
<div style="float: left" class="index-letter-title">_</div>
<div style="float: right"><a href="#top">top</a></div>
<div style="clear: both"></div>
</div>
<dl>
<dt class="field">
<span class="method-title">__construct</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="Framework/Chronometre.html#method__construct">Chronometre::__construct()</a> in Chronometre.php</div>
<div class="index-item-description">Constructeur : *</div>
</dd>
<dt class="field">
<span class="method-title">__construct</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="Framework/Modele.html#method__construct">Modele::__construct()</a> in Modele.php</div>
<div class="index-item-description">Constructeur par défaut, appelé à l'initialisation.</div>
</dd>
<dt class="field">
<span class="method-title">__construct</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="Framework/Url.html#method__construct">Url::__construct()</a> in Url.php</div>
</dd>
<dt class="field">
<span class="method-title">__construct</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="Framework/GestionnaireException.html#method__construct">GestionnaireException::__construct()</a> in GestionnaireException.php</div>
<div class="index-item-description">Constructeur avec paramètres optionnel</div>
</dd>
<dt class="field">
<span class="method-title">__construct</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="Framework/Controleur.html#method__construct">Controleur::__construct()</a> in Controleur.php</div>
<div class="index-item-description">Constructeur par défaut</div>
</dd>
<dt class="field">
<span class="method-title">__destruct</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="Framework/Modele.html#method__destruct">Modele::__destruct()</a> in Modele.php</div>
<div class="index-item-description">Destructeur de classe, se contente de fermer explicitement la connexion</div>
</dd>
<dt class="field">
<span class="method-title">__destruct</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="Framework/Log.html#method__destruct">Log::__destruct()</a> in Log.php</div>
<div class="index-item-description">destructeur de classe, ferme les descripteurs ouverts</div>
</dd>
<dt class="field">
<span class="method-title">__destruct</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="Framework/GestionnaireException.html#method__destruct">GestionnaireException::__destruct()</a> in GestionnaireException.php</div>
</dd>
<dt class="field">
<span class="method-title">__toString</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="Framework/Url.html#method__toString">Url::__toString()</a> in Url.php</div>
</dd>
</dl>
 
<div class="index-letter-menu">
<a class="index-letter" href="elementindex.html#a">a</a>
<a class="index-letter" href="elementindex.html#c">c</a>
<a class="index-letter" href="elementindex.html#d">d</a>
<a class="index-letter" href="elementindex.html#e">e</a>
<a class="index-letter" href="elementindex.html#g">g</a>
<a class="index-letter" href="elementindex.html#i">i</a>
<a class="index-letter" href="elementindex.html#l">l</a>
<a class="index-letter" href="elementindex.html#m">m</a>
<a class="index-letter" href="elementindex.html#n">n</a>
<a class="index-letter" href="elementindex.html#o">o</a>
<a class="index-letter" href="elementindex.html#p">p</a>
<a class="index-letter" href="elementindex.html#r">r</a>
<a class="index-letter" href="elementindex.html#s">s</a>
<a class="index-letter" href="elementindex.html#u">u</a>
<a class="index-letter" href="elementindex.html#v">v</a>
<a class="index-letter" href="elementindex.html#_">_</a>
</div> </body>
</html>
/tags/v0.3-aleaume/doc/HTMLframesConverter/li_Framework.html
New file
0,0 → 1,181
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<!-- template designed by Marco Von Ballmoos -->
<title></title>
<meta http-equiv='Content-Type' content='text/html; charset=UTF-8'/>
<link rel="stylesheet" href="media/stylesheet.css" />
<script src="media/lib/classTree.js"></script>
<meta http-equiv='Content-Type' content='text/html; charset=UTF-8'/>
<script language="javascript" type="text/javascript">
var imgPlus = new Image();
var imgMinus = new Image();
imgPlus.src = "media/images/plus.png";
imgMinus.src = "media/images/minus.png";
function showNode(Node){
switch(navigator.family){
case 'nn4':
// Nav 4.x code fork...
var oTable = document.layers["span" + Node];
var oImg = document.layers["img" + Node];
break;
case 'ie4':
// IE 4/5 code fork...
var oTable = document.all["span" + Node];
var oImg = document.all["img" + Node];
break;
case 'gecko':
// Standards Compliant code fork...
var oTable = document.getElementById("span" + Node);
var oImg = document.getElementById("img" + Node);
break;
}
oImg.src = imgMinus.src;
oTable.style.display = "block";
}
function hideNode(Node){
switch(navigator.family){
case 'nn4':
// Nav 4.x code fork...
var oTable = document.layers["span" + Node];
var oImg = document.layers["img" + Node];
break;
case 'ie4':
// IE 4/5 code fork...
var oTable = document.all["span" + Node];
var oImg = document.all["img" + Node];
break;
case 'gecko':
// Standards Compliant code fork...
var oTable = document.getElementById("span" + Node);
var oImg = document.getElementById("img" + Node);
break;
}
oImg.src = imgPlus.src;
oTable.style.display = "none";
}
function nodeIsVisible(Node){
switch(navigator.family){
case 'nn4':
// Nav 4.x code fork...
var oTable = document.layers["span" + Node];
break;
case 'ie4':
// IE 4/5 code fork...
var oTable = document.all["span" + Node];
break;
case 'gecko':
// Standards Compliant code fork...
var oTable = document.getElementById("span" + Node);
break;
}
return (oTable && oTable.style.display == "block");
}
function toggleNodeVisibility(Node){
if (nodeIsVisible(Node)){
hideNode(Node);
}else{
showNode(Node);
}
}
</script>
</head>
<body>
<h3 class="package-title">Framework</h3>
<div class="tree">
<script language="Javascript">
if (document.getElementById) {
var tree = new WebFXTree('<span class="package">Framework</span>');
tree.setBehavior('classic');
var class_trees = new WebFXTreeItem('Class trees', 'classtrees_Framework.html');
tree.add(class_trees);
 
var elements = new WebFXTreeItem('Index of elements', 'elementindex_Framework.html');
tree.add(elements);
 
var parent_node;
 
var tree_classe = new WebFXTreeItem('Class(es)', '');
var classe = new WebFXTreeItem('Application', 'Framework/Application.html');
tree_classe.add(classe);
var classe = new WebFXTreeItem('Chronometre', 'Framework/Chronometre.html');
tree_classe.add(classe);
var classe = new WebFXTreeItem('Config', 'Framework/Config.html');
tree_classe.add(classe);
var classe = new WebFXTreeItem('Controleur', 'Framework/Controleur.html');
tree_classe.add(classe);
var classe = new WebFXTreeItem('Debug', 'Framework/Debug.html');
tree_classe.add(classe);
var classe = new WebFXTreeItem('GestionnaireException', 'Framework/GestionnaireException.html');
tree_classe.add(classe);
var classe = new WebFXTreeItem('Log', 'Framework/Log.html');
tree_classe.add(classe);
var classe = new WebFXTreeItem('Modele', 'Framework/Modele.html');
tree_classe.add(classe);
var classe = new WebFXTreeItem('Registre', 'Framework/Registre.html');
tree_classe.add(classe);
var classe = new WebFXTreeItem('SquelettePhp', 'Framework/SquelettePhp.html');
tree_classe.add(classe);
var classe = new WebFXTreeItem('Url', 'Framework/Url.html');
tree_classe.add(classe);
tree.add(tree_classe);
var tree_function = new WebFXTreeItem('Function(s)', '');
var fic = new WebFXTreeItem('autoloadAppliDefaut', 'Framework/_autoload.inc.php.html#functionautoloadAppliDefaut');
tree_function.add(fic);
var fic = new WebFXTreeItem('autoloadFw', 'Framework/_autoload.inc.php.html#functionautoloadFw');
tree_function.add(fic);
tree.add(tree_function);
var tree_file = new WebFXTreeItem('File(s)', '');
var file = new WebFXTreeItem('Application.php', 'Framework/_Application.php.html');
tree_file.add(file);
var file = new WebFXTreeItem('autoload.inc.php', 'Framework/_autoload.inc.php.html');
tree_file.add(file);
var file = new WebFXTreeItem('Chronometre.php', 'Framework/_Chronometre.php.html');
tree_file.add(file);
var file = new WebFXTreeItem('Config.php', 'Framework/_Config.php.html');
tree_file.add(file);
var file = new WebFXTreeItem('Controleur.php', 'Framework/_Controleur.php.html');
tree_file.add(file);
var file = new WebFXTreeItem('Debug.php', 'Framework/_Debug.php.html');
tree_file.add(file);
var file = new WebFXTreeItem('GestionnaireException.php', 'Framework/_GestionnaireException.php.html');
tree_file.add(file);
var file = new WebFXTreeItem('Log.php', 'Framework/_Log.php.html');
tree_file.add(file);
var file = new WebFXTreeItem('Modele.php', 'Framework/_Modele.php.html');
tree_file.add(file);
var file = new WebFXTreeItem('Registre.php', 'Framework/_Registre.php.html');
tree_file.add(file);
var file = new WebFXTreeItem('SquelettePhp.php', 'Framework/_SquelettePhp.php.html');
tree_file.add(file);
var file = new WebFXTreeItem('Url.php', 'Framework/_Url.php.html');
tree_file.add(file);
tree.add(tree_file);
document.write(tree);
}
</script>
</div>
<p class="notes">
Generated by
<a href="http://www.phpdoc.org" target="_blank">phpDocumentor <span class="field">1.4.3</span></a>
</p>
</body>
</html>
/tags/v0.3-aleaume/doc/HTMLframesConverter/classtrees_Framework.html
New file
0,0 → 1,64
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<!-- template designed by Marco Von Ballmoos -->
<title></title>
<meta http-equiv='Content-Type' content='text/html; charset=UTF-8'/>
<link rel="stylesheet" href="media/stylesheet.css" />
</head>
<body>
<!-- Start of Class Data -->
<H2>
</H2>
<h2>Root class Application</h2>
<ul>
<li><a href="Framework/Application.html">Application</a></li></ul>
 
<h2>Root class Chronometre</h2>
<ul>
<li><a href="Framework/Chronometre.html">Chronometre</a></li></ul>
 
<h2>Root class Config</h2>
<ul>
<li><a href="Framework/Config.html">Config</a></li></ul>
 
<h2>Root class Controleur</h2>
<ul>
<li><a href="Framework/Controleur.html">Controleur</a></li></ul>
 
<h2>Root class Debug</h2>
<ul>
<li><a href="Framework/Debug.html">Debug</a></li></ul>
 
<h2>Root class GestionnaireException</h2>
<ul>
<li><a href="Framework/GestionnaireException.html">GestionnaireException</a></li></ul>
 
<h2>Root class Log</h2>
<ul>
<li><a href="Framework/Log.html">Log</a></li></ul>
 
<h2>Root class Modele</h2>
<ul>
<li><a href="Framework/Modele.html">Modele</a></li></ul>
 
<h2>Root class Registre</h2>
<ul>
<li><a href="Framework/Registre.html">Registre</a></li></ul>
 
<h2>Root class SquelettePhp</h2>
<ul>
<li><a href="Framework/SquelettePhp.html">SquelettePhp</a></li></ul>
 
<h2>Root class Url</h2>
<ul>
<li><a href="Framework/Url.html">Url</a></li></ul>
 
<p class="notes" id="credit">
Documentation generated on Thu, 04 Mar 2010 19:27:07 +0100 by <a href="http://www.phpdoc.org" target="_blank">phpDocumentor 1.4.3</a>
</p>
</body>
</html>
/tags/v0.3-aleaume/doc/HTMLframesConverter/blank.html
New file
0,0 → 1,13
<html>
<head>
<title>Documentation</title>
<link rel="stylesheet" href="media/stylesheet.css" />
<meta http-equiv='Content-Type' content='text/html; charset=iso-8859-1'/>
</head>
<body>
<div align="center"><h1>Documentation</h1></div>
<b>Welcome to Framework!</b><br />
<br />
This documentation was generated by <a href="http://www.phpdoc.org">phpDocumentor v1.4.3</a><br />
</body>
</html>
/tags/v0.3-aleaume/doc/HTMLframesConverter/index.html
New file
0,0 → 1,24
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html
PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//FR"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-frameset.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<!-- Generated by phpDocumentor on Thu, 04 Mar 2010 19:27:07 +0100 -->
<title>Documentation</title>
<meta http-equiv='Content-Type' content='text/html; charset=UTF-8'/>
</head>
 
<FRAMESET rows='120,*'>
<FRAME src='packages.html' name='left_top' frameborder="1" bordercolor="#999999">
<FRAMESET cols='25%,*'>
<FRAME src='li_Framework.html' name='left_bottom' frameborder="1" bordercolor="#999999">
<FRAME src='blank.html' name='right' frameborder="1" bordercolor="#999999">
</FRAMESET>
<NOFRAMES>
<H2>Frame Alert</H2>
<P>This document is designed to be viewed using the frames feature.
If you see this message, you are using a non-frame-capable web client.</P>
</NOFRAMES>
</FRAMESET>
</HTML>
/tags/v0.3-aleaume/doc/HTMLframesConverter/Framework/Config.html
New file
0,0 → 1,264
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<!-- template designed by Marco Von Ballmoos -->
<title>Docs For Class Config</title>
<meta http-equiv='Content-Type' content='text/html; charset=UTF-8'/>
<link rel="stylesheet" href="../media/stylesheet.css" />
<script src="../media/lib/classTree.js"></script>
<script language="javascript" type="text/javascript">
var imgPlus = new Image();
var imgMinus = new Image();
imgPlus.src = "../media/images/plus.png";
imgMinus.src = "../media/images/minus.png";
function showNode(Node){
switch(navigator.family){
case 'nn4':
// Nav 4.x code fork...
var oTable = document.layers["span" + Node];
var oImg = document.layers["img" + Node];
break;
case 'ie4':
// IE 4/5 code fork...
var oTable = document.all["span" + Node];
var oImg = document.all["img" + Node];
break;
case 'gecko':
// Standards Compliant code fork...
var oTable = document.getElementById("span" + Node);
var oImg = document.getElementById("img" + Node);
break;
}
oImg.src = imgMinus.src;
oTable.style.display = "block";
}
function hideNode(Node){
switch(navigator.family){
case 'nn4':
// Nav 4.x code fork...
var oTable = document.layers["span" + Node];
var oImg = document.layers["img" + Node];
break;
case 'ie4':
// IE 4/5 code fork...
var oTable = document.all["span" + Node];
var oImg = document.all["img" + Node];
break;
case 'gecko':
// Standards Compliant code fork...
var oTable = document.getElementById("span" + Node);
var oImg = document.getElementById("img" + Node);
break;
}
oImg.src = imgPlus.src;
oTable.style.display = "none";
}
function nodeIsVisible(Node){
switch(navigator.family){
case 'nn4':
// Nav 4.x code fork...
var oTable = document.layers["span" + Node];
break;
case 'ie4':
// IE 4/5 code fork...
var oTable = document.all["span" + Node];
break;
case 'gecko':
// Standards Compliant code fork...
var oTable = document.getElementById("span" + Node);
break;
}
return (oTable && oTable.style.display == "block");
}
function toggleNodeVisibility(Node){
if (nodeIsVisible(Node)){
hideNode(Node);
}else{
showNode(Node);
}
}
</script>
</head>
<body>
<div class="page-body">
<h2 class="class-name">Class Config</h2>
 
<a name="sec-description"></a>
<div class="info-box">
<div class="info-box-title">Description</div>
<div class="nav-bar">
<span class="disabled">Description</span> |
<a href="#sec-method-summary">Methods</a> (<a href="#sec-methods">details</a>)
</div>
<div class="info-box-body">
<!-- ========== Info from phpDoc block ========= -->
<p class="short-description">Config permet de charger automatiquement les fichiers ini du Framework et de l'application.</p>
<p class="description"><p>Elle offre l'accès en lecture seule aux paramètres de config. C'est une Singleton.</p><p>PHP Version 5</p></p>
<ul class="tags">
<li><span class="field">author:</span> Jean-Pascal MILCENT &lt;<a href="mailto:jpm@tela-botanica.org">jpm@tela-botanica.org</a>&gt;</li>
<li><span class="field">version:</span> SVN: &lt;svn_id&gt;</li>
<li><span class="field">copyright:</span> 2009 Tela-Botanica</li>
<li><span class="field">link:</span> /doc/framework/</li>
<li><span class="field">license:</span> GPL-v3</li>
</ul>
<p class="notes">
Located in <a class="field" href="_Config.php.html">/Config.php</a> (line <span class="field"><a href="../__filesource/fsource_Framework__Config.php.html#a19">19</a></span>)
</p>
<pre></pre>
</div>
</div>
 
 
 
 
<a name="sec-method-summary"></a>
<div class="info-box">
<div class="info-box-title">Method Summary</span></div>
<div class="nav-bar">
<a href="#sec-description">Description</a> |
<span class="disabled">Methods</span> (<a href="#sec-methods">details</a>)
</div>
<div class="info-box-body">
<div class="method-summary">
<div class="method-definition">
static <span class="method-result">array</span>
<a href="#charger" title="details" class="method-name">charger</a>
(<span class="var-type">string</span>&nbsp;<span class="var-name">$fichier_ini</span>)
</div>
<div class="method-definition">
static <span class="method-result">boolean</span>
<a href="#existe" title="details" class="method-name">existe</a>
(<span class="var-type">string</span>&nbsp;<span class="var-name">$param</span>)
</div>
<div class="method-definition">
static <span class="method-result">string</span>
<a href="#get" title="details" class="method-name">get</a>
([<span class="var-type">string</span>&nbsp;<span class="var-name">$param</span> = <span class="var-default">null</span>])
</div>
</div>
</div>
</div>
 
<a name="sec-methods"></a>
<div class="info-box">
<div class="info-box-title">Methods</div>
<div class="nav-bar">
<a href="#sec-description">Description</a> |
<a href="#sec-method-summary">Methods</a> (<span class="disabled">details</span>)
</div>
<div class="info-box-body">
<A NAME='method_detail'></A>
<a name="methodcharger" id="charger"><!-- --></a>
<div class="evenrow">
<div class="method-header">
<span class="method-title">static charger</span> (line <span class="line-number"><a href="../__filesource/fsource_Framework__Config.php.html#a244">244</a></span>)
</div>
<!-- ========== Info from phpDoc block ========= -->
<p class="short-description">Charge un fichier ini dans le tableau des paramètres de l'appli</p>
<ul class="tags">
<li><span class="field">return:</span> le fichier ini parsé</li>
<li><span class="field">access:</span> public</li>
</ul>
<div class="method-signature">
static <span class="method-result">array</span>
<span class="method-name">
charger
</span>
(<span class="var-type">string</span>&nbsp;<span class="var-name">$fichier_ini</span>)
</div>
<ul class="parameters">
<li>
<span class="var-type">string</span>
<span class="var-name">$fichier_ini</span><span class="var-description">: le nom du fichier à charger</span> </li>
</ul>
</div>
<a name="methodexiste" id="existe"><!-- --></a>
<div class="oddrow">
<div class="method-header">
<span class="method-title">static existe</span> (line <span class="line-number"><a href="../__filesource/fsource_Framework__Config.php.html#a264">264</a></span>)
</div>
<!-- ========== Info from phpDoc block ========= -->
<p class="short-description">Vérifie si la valeur d'un paramètre existe</p>
<ul class="tags">
<li><span class="field">return:</span> vrai si le paramètre existe, false sinon</li>
<li><span class="field">access:</span> public</li>
</ul>
<div class="method-signature">
static <span class="method-result">boolean</span>
<span class="method-name">
existe
</span>
(<span class="var-type">string</span>&nbsp;<span class="var-name">$param</span>)
</div>
<ul class="parameters">
<li>
<span class="var-type">string</span>
<span class="var-name">$param</span><span class="var-description">: le nom du paramètre</span> </li>
</ul>
</div>
<a name="methodget" id="get"><!-- --></a>
<div class="evenrow">
<div class="method-header">
<span class="method-title">static get</span> (line <span class="line-number"><a href="../__filesource/fsource_Framework__Config.php.html#a254">254</a></span>)
</div>
<!-- ========== Info from phpDoc block ========= -->
<p class="short-description">Acesseur pour la valeur d'un paramètre</p>
<ul class="tags">
<li><span class="field">return:</span> la valeur du paramètre</li>
<li><span class="field">access:</span> public</li>
</ul>
<div class="method-signature">
static <span class="method-result">string</span>
<span class="method-name">
get
</span>
([<span class="var-type">string</span>&nbsp;<span class="var-name">$param</span> = <span class="var-default">null</span>])
</div>
<ul class="parameters">
<li>
<span class="var-type">string</span>
<span class="var-name">$param</span><span class="var-description">: le nom du paramètre</span> </li>
</ul>
</div>
</div>
</div>
 
 
<p class="notes" id="credit">
Documentation generated on Thu, 04 Mar 2010 19:27:16 +0100 by <a href="http://www.phpdoc.org" target="_blank">phpDocumentor 1.4.3</a>
</p>
</div></body>
</html>
/tags/v0.3-aleaume/doc/HTMLframesConverter/Framework/Modele.html
New file
0,0 → 1,395
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<!-- template designed by Marco Von Ballmoos -->
<title>Docs For Class Modele</title>
<meta http-equiv='Content-Type' content='text/html; charset=UTF-8'/>
<link rel="stylesheet" href="../media/stylesheet.css" />
<script src="../media/lib/classTree.js"></script>
<script language="javascript" type="text/javascript">
var imgPlus = new Image();
var imgMinus = new Image();
imgPlus.src = "../media/images/plus.png";
imgMinus.src = "../media/images/minus.png";
function showNode(Node){
switch(navigator.family){
case 'nn4':
// Nav 4.x code fork...
var oTable = document.layers["span" + Node];
var oImg = document.layers["img" + Node];
break;
case 'ie4':
// IE 4/5 code fork...
var oTable = document.all["span" + Node];
var oImg = document.all["img" + Node];
break;
case 'gecko':
// Standards Compliant code fork...
var oTable = document.getElementById("span" + Node);
var oImg = document.getElementById("img" + Node);
break;
}
oImg.src = imgMinus.src;
oTable.style.display = "block";
}
function hideNode(Node){
switch(navigator.family){
case 'nn4':
// Nav 4.x code fork...
var oTable = document.layers["span" + Node];
var oImg = document.layers["img" + Node];
break;
case 'ie4':
// IE 4/5 code fork...
var oTable = document.all["span" + Node];
var oImg = document.all["img" + Node];
break;
case 'gecko':
// Standards Compliant code fork...
var oTable = document.getElementById("span" + Node);
var oImg = document.getElementById("img" + Node);
break;
}
oImg.src = imgPlus.src;
oTable.style.display = "none";
}
function nodeIsVisible(Node){
switch(navigator.family){
case 'nn4':
// Nav 4.x code fork...
var oTable = document.layers["span" + Node];
break;
case 'ie4':
// IE 4/5 code fork...
var oTable = document.all["span" + Node];
break;
case 'gecko':
// Standards Compliant code fork...
var oTable = document.getElementById("span" + Node);
break;
}
return (oTable && oTable.style.display == "block");
}
function toggleNodeVisibility(Node){
if (nodeIsVisible(Node)){
hideNode(Node);
}else{
showNode(Node);
}
}
</script>
</head>
<body>
<div class="page-body">
<h2 class="class-name">Class Modele</h2>
 
<a name="sec-description"></a>
<div class="info-box">
<div class="info-box-title">Description</div>
<div class="nav-bar">
<span class="disabled">Description</span> |
<a href="#sec-method-summary">Methods</a> (<a href="#sec-methods">details</a>)
</div>
<div class="info-box-body">
<!-- ========== Info from phpDoc block ========= -->
<p class="short-description">Classe modèle, donc d'accés au données, elle ne devrait pas être appelée de l'extérieur.</p>
<p class="description"><p>Elle fait office d'abstraction légère de base de données en utilisant diveres possibilités d'abstraction de base de données (PDO, mysql, mysqli, sqlite) Elle est abstraite donc doit obligatoirement être étendue.</p><p>PHP Version 5</p></p>
<ul class="tags">
<li><span class="field">author:</span> aurelien &lt;<a href="mailto:aurelien@tela-botanica.org">aurelien@tela-botanica.org</a>&gt;</li>
<li><span class="field">version:</span> SVN: $$Id: Modele.php 145 2010-03-02 17:23:09Z jpm $$</li>
<li><span class="field">copyright:</span> 2009 Tela-Botanica</li>
<li><span class="field">link:</span> /doc/framework/</li>
<li><span class="field">abstract:</span> </li>
<li><span class="field">license:</span> <a href="http://www.cecill.info/licences/Licence_CeCILL_V2-fr.txt">Licence CECILL</a></li>
<li><span class="field">license:</span> <a href="http://www.gnu.org/licenses/gpl.html">Licence GNU-GPL</a></li>
</ul>
<p class="notes">
Located in <a class="field" href="_Modele.php.html">/Modele.php</a> (line <span class="field"><a href="../__filesource/fsource_Framework__Modele.php.html#a21">21</a></span>)
</p>
<pre></pre>
</div>
</div>
 
 
 
 
<a name="sec-method-summary"></a>
<div class="info-box">
<div class="info-box-title">Method Summary</span></div>
<div class="nav-bar">
<a href="#sec-description">Description</a> |
<span class="disabled">Methods</span> (<a href="#sec-methods">details</a>)
</div>
<div class="info-box-body">
<div class="method-summary">
<div class="method-definition">
<span class="method-result">Modele</span>
<a href="#__construct" title="details" class="method-name">__construct</a>
()
</div>
<div class="method-definition">
<span class="method-result">void</span>
<a href="#__destruct" title="details" class="method-name">__destruct</a>
()
</div>
<div class="method-definition">
<span class="method-result">void</span>
<a href="#initialiserProtocole" title="details" class="method-name">initialiserProtocole</a>
()
</div>
<div class="method-definition">
<span class="method-result">void</span>
<a href="#proteger" title="details" class="method-name">proteger</a>
(<span class="var-type"></span>&nbsp;<span class="var-name">$chaine</span>)
</div>
<div class="method-definition">
<span class="method-result">PDOStatement</span>
<a href="#requete" title="details" class="method-name">requete</a>
(<span class="var-type">string</span>&nbsp;<span class="var-name">$requete</span>)
</div>
<div class="method-definition">
<span class="method-result">void</span>
<a href="#requeteTous" title="details" class="method-name">requeteTous</a>
(<span class="var-type"></span>&nbsp;<span class="var-name">$requete</span>, [<span class="var-type"></span>&nbsp;<span class="var-name">$mode</span> = <span class="var-default">'ASSOC'</span>])
</div>
<div class="method-definition">
<span class="method-result">void</span>
<a href="#requeteUn" title="details" class="method-name">requeteUn</a>
(<span class="var-type"></span>&nbsp;<span class="var-name">$requete</span>, [<span class="var-type"></span>&nbsp;<span class="var-name">$mode</span> = <span class="var-default">'ASSOC'</span>])
</div>
</div>
</div>
</div>
 
<a name="sec-methods"></a>
<div class="info-box">
<div class="info-box-title">Methods</div>
<div class="nav-bar">
<a href="#sec-description">Description</a> |
<a href="#sec-method-summary">Methods</a> (<span class="disabled">details</span>)
</div>
<div class="info-box-body">
<A NAME='method_detail'></A>
<a name="method__construct" id="__construct"><!-- --></a>
<div class="oddrow">
<div class="method-header">
<span class="method-title">Constructor __construct</span> (line <span class="line-number"><a href="../__filesource/fsource_Framework__Modele.php.html#a77">77</a></span>)
</div>
<!-- ========== Info from phpDoc block ========= -->
<p class="short-description">Constructeur par défaut, appelé à l'initialisation.</p>
<ul class="tags">
<li><span class="field">access:</span> public</li>
</ul>
<div class="method-signature">
<span class="method-result">Modele</span>
<span class="method-name">
__construct
</span>
()
</div>
</div>
<a name="method__destruct" id="__destruct"><!-- --></a>
<div class="evenrow">
<div class="method-header">
<span class="method-title">Destructor __destruct</span> (line <span class="line-number"><a href="../__filesource/fsource_Framework__Modele.php.html#a323">323</a></span>)
</div>
<!-- ========== Info from phpDoc block ========= -->
<p class="short-description">Destructeur de classe, se contente de fermer explicitement la connexion</p>
<ul class="tags">
<li><span class="field">access:</span> public</li>
</ul>
<div class="method-signature">
<span class="method-result">void</span>
<span class="method-name">
__destruct
</span>
()
</div>
</div>
<a name="methodinitialiserProtocole" id="initialiserProtocole"><!-- --></a>
<div class="oddrow">
<div class="method-header">
<span class="method-title">initialiserProtocole</span> (line <span class="line-number"><a href="../__filesource/fsource_Framework__Modele.php.html#a295">295</a></span>)
</div>
<!-- ========== Info from phpDoc block ========= -->
<p class="short-description">initialise les constantes de classe à leur bonne valeur</p>
<p class="description"><p>et lance une exception si le protocole n'est pas bien défini</p></p>
<ul class="tags">
<li><span class="field">throws:</span> Exception</li>
<li><span class="field">access:</span> public</li>
</ul>
<div class="method-signature">
<span class="method-result">void</span>
<span class="method-name">
initialiserProtocole
</span>
()
</div>
</div>
<a name="methodproteger" id="proteger"><!-- --></a>
<div class="evenrow">
<div class="method-header">
<span class="method-title">proteger</span> (line <span class="line-number"><a href="../__filesource/fsource_Framework__Modele.php.html#a263">263</a></span>)
</div>
<!-- ========== Info from phpDoc block ========= -->
<p class="short-description">protège une chaine de caractères avant l'insertion dans la base de données</p>
<ul class="tags">
<li><span class="field">access:</span> protected</li>
</ul>
<div class="method-signature">
<span class="method-result">void</span>
<span class="method-name">
proteger
</span>
(<span class="var-type"></span>&nbsp;<span class="var-name">$chaine</span>)
</div>
<ul class="parameters">
<li>
<span class="var-type"></span>
<span class="var-name">$chaine</span> </li>
</ul>
</div>
<a name="methodrequete" id="requete"><!-- --></a>
<div class="oddrow">
<div class="method-header">
<span class="method-title">requete</span> (line <span class="line-number"><a href="../__filesource/fsource_Framework__Modele.php.html#a146">146</a></span>)
</div>
<!-- ========== Info from phpDoc block ========= -->
<p class="short-description">Fonction qui appelle la bonne fonction pour executer une requête suivant le type de bdd.</p>
<ul class="tags">
<li><span class="field">return:</span> un objet contenant le résultat de la requête</li>
<li><span class="field">access:</span> protected</li>
</ul>
<div class="method-signature">
<span class="method-result">PDOStatement</span>
<span class="method-name">
requete
</span>
(<span class="var-type">string</span>&nbsp;<span class="var-name">$requete</span>)
</div>
<ul class="parameters">
<li>
<span class="var-type">string</span>
<span class="var-name">$requete</span><span class="var-description">: la requete à effectuer</span> </li>
</ul>
</div>
<a name="methodrequeteTous" id="requeteTous"><!-- --></a>
<div class="evenrow">
<div class="method-header">
<span class="method-title">requeteTous</span> (line <span class="line-number"><a href="../__filesource/fsource_Framework__Modele.php.html#a203">203</a></span>)
</div>
<!-- ========== Info from phpDoc block ========= -->
<ul class="tags">
<li><span class="field">access:</span> protected</li>
</ul>
<div class="method-signature">
<span class="method-result">void</span>
<span class="method-name">
requeteTous
</span>
(<span class="var-type"></span>&nbsp;<span class="var-name">$requete</span>, [<span class="var-type"></span>&nbsp;<span class="var-name">$mode</span> = <span class="var-default">'ASSOC'</span>])
</div>
<ul class="parameters">
<li>
<span class="var-type"></span>
<span class="var-name">$requete</span> </li>
<li>
<span class="var-type"></span>
<span class="var-name">$mode</span> </li>
</ul>
</div>
<a name="methodrequeteUn" id="requeteUn"><!-- --></a>
<div class="oddrow">
<div class="method-header">
<span class="method-title">requeteUn</span> (line <span class="line-number"><a href="../__filesource/fsource_Framework__Modele.php.html#a172">172</a></span>)
</div>
<!-- ========== Info from phpDoc block ========= -->
<ul class="tags">
<li><span class="field">access:</span> protected</li>
</ul>
<div class="method-signature">
<span class="method-result">void</span>
<span class="method-name">
requeteUn
</span>
(<span class="var-type"></span>&nbsp;<span class="var-name">$requete</span>, [<span class="var-type"></span>&nbsp;<span class="var-name">$mode</span> = <span class="var-default">'ASSOC'</span>])
</div>
<ul class="parameters">
<li>
<span class="var-type"></span>
<span class="var-name">$requete</span> </li>
<li>
<span class="var-type"></span>
<span class="var-name">$mode</span> </li>
</ul>
</div>
</div>
</div>
 
 
<p class="notes" id="credit">
Documentation generated on Thu, 04 Mar 2010 19:27:25 +0100 by <a href="http://www.phpdoc.org" target="_blank">phpDocumentor 1.4.3</a>
</p>
</div></body>
</html>
/tags/v0.3-aleaume/doc/HTMLframesConverter/Framework/_autoload.inc.php.html
New file
0,0 → 1,225
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<!-- template designed by Marco Von Ballmoos -->
<title>Docs for page autoload.inc.php</title>
<meta http-equiv='Content-Type' content='text/html; charset=UTF-8'/>
<link rel="stylesheet" href="../media/stylesheet.css" />
<script src="../media/lib/classTree.js"></script>
<script language="javascript" type="text/javascript">
var imgPlus = new Image();
var imgMinus = new Image();
imgPlus.src = "../media/images/plus.png";
imgMinus.src = "../media/images/minus.png";
function showNode(Node){
switch(navigator.family){
case 'nn4':
// Nav 4.x code fork...
var oTable = document.layers["span" + Node];
var oImg = document.layers["img" + Node];
break;
case 'ie4':
// IE 4/5 code fork...
var oTable = document.all["span" + Node];
var oImg = document.all["img" + Node];
break;
case 'gecko':
// Standards Compliant code fork...
var oTable = document.getElementById("span" + Node);
var oImg = document.getElementById("img" + Node);
break;
}
oImg.src = imgMinus.src;
oTable.style.display = "block";
}
function hideNode(Node){
switch(navigator.family){
case 'nn4':
// Nav 4.x code fork...
var oTable = document.layers["span" + Node];
var oImg = document.layers["img" + Node];
break;
case 'ie4':
// IE 4/5 code fork...
var oTable = document.all["span" + Node];
var oImg = document.all["img" + Node];
break;
case 'gecko':
// Standards Compliant code fork...
var oTable = document.getElementById("span" + Node);
var oImg = document.getElementById("img" + Node);
break;
}
oImg.src = imgPlus.src;
oTable.style.display = "none";
}
function nodeIsVisible(Node){
switch(navigator.family){
case 'nn4':
// Nav 4.x code fork...
var oTable = document.layers["span" + Node];
break;
case 'ie4':
// IE 4/5 code fork...
var oTable = document.all["span" + Node];
break;
case 'gecko':
// Standards Compliant code fork...
var oTable = document.getElementById("span" + Node);
break;
}
return (oTable && oTable.style.display == "block");
}
function toggleNodeVisibility(Node){
if (nodeIsVisible(Node)){
hideNode(Node);
}else{
showNode(Node);
}
}
</script>
</head>
<body>
<div class="page-body">
<h2 class="file-name">/autoload.inc.php</h2>
 
<a name="sec-description"></a>
<div class="info-box">
<div class="info-box-title">Description</div>
<div class="nav-bar">
<span class="disabled">Description</span> |
<a href="#sec-constants">Constants</a>
| <a href="#sec-functions">Functions</a>
</div>
<div class="info-box-body">
<!-- ========== Info from phpDoc block ========= -->
<p class="short-description">Fichier contenant la fonction de chargement automatique de classes, il doit toujours rester à la racine du framework car il initialise le chemin de l'application en se basant sur son propre emplacement.</p>
<p class="description"><p>PHP Version 5.1.2</p></p>
<ul class="tags">
<li><span class="field">author:</span> Jean-Pascal MILCENT &lt;<a href="mailto:jpm@tela-botanica.org">jpm@tela-botanica.org</a>&gt;</li>
<li><span class="field">author:</span> Aurelien PERONNET &lt;<a href="mailto:aurelien@tela-botanica.org">aurelien@tela-botanica.org</a>&gt;</li>
<li><span class="field">version:</span> $$Id: autoload.inc.php 153 2010-03-04 10:48:32Z jpm $$</li>
<li><span class="field">copyright:</span> 1999-2009 Tela Botanica (accueil@tela-botanica.org)</li>
<li><span class="field">filesource:</span> <a href="../__filesource/fsource_Framework__autoload.inc.php.html">Source Code for this file</a></li>
<li><span class="field">license:</span> GPL</li>
<li><span class="field">license:</span> CECILL</li>
</ul>
</div>
</div>
 
<a name="sec-constants"></a>
<div class="info-box">
<div class="info-box-title">Constants</div>
<div class="nav-bar">
<a href="#sec-description">Description</a> |
<span class="disabled">Constants</span>
| <a href="#sec-functions">Functions</a>
</div>
<div class="info-box-body">
<a name="defineDS"><!-- --></a>
<div class="evenrow">
<div>
<span class="const-title">
<span class="const-name">DS</span> = DIRECTORY_SEPARATOR
(line <span class="line-number"><a href="../__filesource/fsource_Framework__autoload.inc.php.html#a23">23</a></span>)
</span>
</div>
<!-- ========== Info from phpDoc block ========= -->
</div>
<a name="definePS"><!-- --></a>
<div class="oddrow">
<div>
<span class="const-title">
<span class="const-name">PS</span> = PATH_SEPARATOR
(line <span class="line-number"><a href="../__filesource/fsource_Framework__autoload.inc.php.html#a27">27</a></span>)
</span>
</div>
<!-- ========== Info from phpDoc block ========= -->
</div>
</div>
</div>
<a name="sec-functions"></a>
<div class="info-box">
<div class="info-box-title">Functions</div>
<div class="nav-bar">
<a href="#sec-description">Description</a> |
<a href="#sec-constants">Constants</a>
| <span class="disabled">Functions</span>
</div>
<div class="info-box-body">
<a name="functionautoloadAppliDefaut" id="functionautoloadAppliDefaut"><!-- --></a>
<div class="evenrow">
<div>
<span class="method-title">autoloadAppliDefaut</span> (line <span class="line-number"><a href="../__filesource/fsource_Framework__autoload.inc.php.html#a48">48</a></span>)
</div>
 
<!-- ========== Info from phpDoc block ========= -->
<div class="method-signature">
<span class="method-result">void</span>
<span class="method-name">
autoloadAppliDefaut
</span>
(<span class="var-type"></span>&nbsp;<span class="var-name">$nom_classe</span>)
</div>
 
<ul class="parameters">
<li>
<span class="var-type"></span>
<span class="var-name">$nom_classe</span> </li>
</ul>
</div>
<a name="functionautoloadFw" id="functionautoloadFw"><!-- --></a>
<div class="oddrow">
<div>
<span class="method-title">autoloadFw</span> (line <span class="line-number"><a href="../__filesource/fsource_Framework__autoload.inc.php.html#a31">31</a></span>)
</div>
 
<!-- ========== Info from phpDoc block ========= -->
<div class="method-signature">
<span class="method-result">void</span>
<span class="method-name">
autoloadFw
</span>
(<span class="var-type"></span>&nbsp;<span class="var-name">$nom_classe_fw</span>)
</div>
 
<ul class="parameters">
<li>
<span class="var-type"></span>
<span class="var-name">$nom_classe_fw</span> </li>
</ul>
</div>
</div>
</div>
<p class="notes" id="credit">
Documentation generated on Thu, 04 Mar 2010 19:27:08 +0100 by <a href="http://www.phpdoc.org" target="_blank">phpDocumentor 1.4.3</a>
</p>
</div></body>
</html>
/tags/v0.3-aleaume/doc/HTMLframesConverter/Framework/GestionnaireException.html
New file
0,0 → 1,430
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<!-- template designed by Marco Von Ballmoos -->
<title>Docs For Class GestionnaireException</title>
<meta http-equiv='Content-Type' content='text/html; charset=UTF-8'/>
<link rel="stylesheet" href="../media/stylesheet.css" />
<script src="../media/lib/classTree.js"></script>
<script language="javascript" type="text/javascript">
var imgPlus = new Image();
var imgMinus = new Image();
imgPlus.src = "../media/images/plus.png";
imgMinus.src = "../media/images/minus.png";
function showNode(Node){
switch(navigator.family){
case 'nn4':
// Nav 4.x code fork...
var oTable = document.layers["span" + Node];
var oImg = document.layers["img" + Node];
break;
case 'ie4':
// IE 4/5 code fork...
var oTable = document.all["span" + Node];
var oImg = document.all["img" + Node];
break;
case 'gecko':
// Standards Compliant code fork...
var oTable = document.getElementById("span" + Node);
var oImg = document.getElementById("img" + Node);
break;
}
oImg.src = imgMinus.src;
oTable.style.display = "block";
}
function hideNode(Node){
switch(navigator.family){
case 'nn4':
// Nav 4.x code fork...
var oTable = document.layers["span" + Node];
var oImg = document.layers["img" + Node];
break;
case 'ie4':
// IE 4/5 code fork...
var oTable = document.all["span" + Node];
var oImg = document.all["img" + Node];
break;
case 'gecko':
// Standards Compliant code fork...
var oTable = document.getElementById("span" + Node);
var oImg = document.getElementById("img" + Node);
break;
}
oImg.src = imgPlus.src;
oTable.style.display = "none";
}
function nodeIsVisible(Node){
switch(navigator.family){
case 'nn4':
// Nav 4.x code fork...
var oTable = document.layers["span" + Node];
break;
case 'ie4':
// IE 4/5 code fork...
var oTable = document.all["span" + Node];
break;
case 'gecko':
// Standards Compliant code fork...
var oTable = document.getElementById("span" + Node);
break;
}
return (oTable && oTable.style.display == "block");
}
function toggleNodeVisibility(Node){
if (nodeIsVisible(Node)){
hideNode(Node);
}else{
showNode(Node);
}
}
</script>
</head>
<body>
<div class="page-body">
<h2 class="class-name">Class GestionnaireException</h2>
 
<a name="sec-description"></a>
<div class="info-box">
<div class="info-box-title">Description</div>
<div class="nav-bar">
<span class="disabled">Description</span> |
<a href="#sec-method-summary">Methods</a> (<a href="#sec-methods">details</a>)
</div>
<div class="info-box-body">
<!-- ========== Info from phpDoc block ========= -->
<p class="short-description">Classe de gestion des exceptions.</p>
<p class="description"><p>C'est un Singleton.</p><p>PHP Version 5</p></p>
<ul class="tags">
<li><span class="field">author:</span> aurelien &lt;<a href="mailto:aurelien@tela-botanica.org">aurelien@tela-botanica.org</a>&gt;</li>
<li><span class="field">version:</span> SVN: $$Id: GestionnaireException.php 158 2010-03-04 17:14:36Z jpm $$</li>
<li><span class="field">copyright:</span> 2009 Tela-Botanica</li>
<li><span class="field">link:</span> /doc/framework/</li>
<li><span class="field">license:</span> <a href="http://www.gnu.org/licenses/gpl.html">Licence GNU-GPL</a></li>
<li><span class="field">license:</span> <a href="http://www.cecill.info/licences/Licence_CeCILL_V2-fr.txt">Licence CECILL</a></li>
</ul>
<p class="notes">
Located in <a class="field" href="_GestionnaireException.php.html">/GestionnaireException.php</a> (line <span class="field"><a href="../__filesource/fsource_Framework__GestionnaireException.php.html#a19">19</a></span>)
</p>
<pre></pre>
</div>
</div>
 
 
 
 
<a name="sec-method-summary"></a>
<div class="info-box">
<div class="info-box-title">Method Summary</span></div>
<div class="nav-bar">
<a href="#sec-description">Description</a> |
<span class="disabled">Methods</span> (<a href="#sec-methods">details</a>)
</div>
<div class="info-box-body">
<div class="method-summary">
<div class="method-definition">
static <span class="method-result">void</span>
<a href="#gererErreur" title="details" class="method-name">gererErreur</a>
(<span class="var-type">int</span>&nbsp;<span class="var-name">$niveau</span>, <span class="var-type">string</span>&nbsp;<span class="var-name">$message</span>, <span class="var-type">string</span>&nbsp;<span class="var-name">$fichier</span>, <span class="var-type">int</span>&nbsp;<span class="var-name">$ligne</span>, <span class="var-type">string</span>&nbsp;<span class="var-name">$contexte</span>)
</div>
<div class="method-definition">
static <span class="method-result">void</span>
<a href="#gererException" title="details" class="method-name">gererException</a>
(<span class="var-type"></span>&nbsp;<span class="var-name">$e</span>)
</div>
<div class="method-definition">
static <span class="method-result">void</span>
<a href="#getContexte" title="details" class="method-name">getContexte</a>
()
</div>
<div class="method-definition">
static <span class="method-result">void</span>
<a href="#getExceptions" title="details" class="method-name">getExceptions</a>
()
</div>
<div class="method-definition">
static <span class="method-result">GestionnaireErreur</span>
<a href="#getInstance" title="details" class="method-name">getInstance</a>
()
</div>
<div class="method-definition">
<span class="method-result">GestionnaireException</span>
<a href="#__construct" title="details" class="method-name">__construct</a>
(<span class="var-type">bool</span>&nbsp;<span class="var-name">0</span>)
</div>
<div class="method-definition">
<span class="method-result">void</span>
<a href="#__destruct" title="details" class="method-name">__destruct</a>
()
</div>
<div class="method-definition">
<span class="method-result">void</span>
<a href="#setContexte" title="details" class="method-name">setContexte</a>
(<span class="var-type">bool</span>&nbsp;<span class="var-name">$contexte</span>)
</div>
</div>
</div>
</div>
 
<a name="sec-methods"></a>
<div class="info-box">
<div class="info-box-title">Methods</div>
<div class="nav-bar">
<a href="#sec-description">Description</a> |
<a href="#sec-method-summary">Methods</a> (<span class="disabled">details</span>)
</div>
<div class="info-box-body">
<A NAME='method_detail'></A>
<a name="methodgererErreur" id="gererErreur"><!-- --></a>
<div class="evenrow">
<div class="method-header">
<span class="method-title">static gererErreur</span> (line <span class="line-number"><a href="../__filesource/fsource_Framework__GestionnaireException.php.html#a110">110</a></span>)
</div>
<!-- ========== Info from phpDoc block ========= -->
<p class="short-description">Gère les erreurs en les convertissant en exceptions (remplace la fonction gestion d'erreurs native de php)</p>
<ul class="tags">
<li><span class="field">access:</span> public</li>
</ul>
<div class="method-signature">
static <span class="method-result">void</span>
<span class="method-name">
gererErreur
</span>
(<span class="var-type">int</span>&nbsp;<span class="var-name">$niveau</span>, <span class="var-type">string</span>&nbsp;<span class="var-name">$message</span>, <span class="var-type">string</span>&nbsp;<span class="var-name">$fichier</span>, <span class="var-type">int</span>&nbsp;<span class="var-name">$ligne</span>, <span class="var-type">string</span>&nbsp;<span class="var-name">$contexte</span>)
</div>
<ul class="parameters">
<li>
<span class="var-type">int</span>
<span class="var-name">$niveau</span><span class="var-description">: le niveau de l'erreur</span> </li>
<li>
<span class="var-type">string</span>
<span class="var-name">$message</span><span class="var-description">: le message associé à l'erreur</span> </li>
<li>
<span class="var-type">string</span>
<span class="var-name">$fichier</span><span class="var-description">: le nom du fichier où l'erreur s'est produite</span> </li>
<li>
<span class="var-type">int</span>
<span class="var-name">$ligne</span><span class="var-description">: la ligne où l'erreur s'est produite</span> </li>
<li>
<span class="var-type">string</span>
<span class="var-name">$contexte</span><span class="var-description">: le contexte associé à l'erreur</span> </li>
</ul>
</div>
<a name="methodgererException" id="gererException"><!-- --></a>
<div class="oddrow">
<div class="method-header">
<span class="method-title">static gererException</span> (line <span class="line-number"><a href="../__filesource/fsource_Framework__GestionnaireException.php.html#a92">92</a></span>)
</div>
<!-- ========== Info from phpDoc block ========= -->
<p class="short-description">Fonction de gestion des exceptions, remplace le handler par défaut</p>
<ul class="tags">
<li><span class="field">access:</span> public</li>
</ul>
<div class="method-signature">
static <span class="method-result">void</span>
<span class="method-name">
gererException
</span>
(<span class="var-type"></span>&nbsp;<span class="var-name">$e</span>)
</div>
<ul class="parameters">
<li>
<span class="var-type">Exception</span>
<span class="var-name">$e</span><span class="var-description">: l'exception à traiter</span> </li>
</ul>
</div>
<a name="methodgetContexte" id="getContexte"><!-- --></a>
<div class="evenrow">
<div class="method-header">
<span class="method-title">static getContexte</span> (line <span class="line-number"><a href="../__filesource/fsource_Framework__GestionnaireException.php.html#a64">64</a></span>)
</div>
<!-- ========== Info from phpDoc block ========= -->
<p class="short-description">Renvoie le booleen définissant si l'on affiche le contexte ou non</p>
<ul class="tags">
<li><span class="field">access:</span> public</li>
</ul>
<div class="method-signature">
static <span class="method-result">void</span>
<span class="method-name">
getContexte
</span>
()
</div>
</div>
<a name="methodgetExceptions" id="getExceptions"><!-- --></a>
<div class="oddrow">
<div class="method-header">
<span class="method-title">static getExceptions</span> (line <span class="line-number"><a href="../__filesource/fsource_Framework__GestionnaireException.php.html#a131">131</a></span>)
</div>
<!-- ========== Info from phpDoc block ========= -->
<p class="short-description">Renvoie les exceptions au format (X)HTML</p>
<p class="description"><p>ou bien au format texte suivant le mode d'utilisation de PHP</p></p>
<ul class="tags">
<li><span class="field">access:</span> public</li>
</ul>
<div class="method-signature">
static <span class="method-result">void</span>
<span class="method-name">
getExceptions
</span>
()
</div>
</div>
<a name="methodgetInstance" id="getInstance"><!-- --></a>
<div class="evenrow">
<div class="method-header">
<span class="method-title">static getInstance</span> (line <span class="line-number"><a href="../__filesource/fsource_Framework__GestionnaireException.php.html#a79">79</a></span>)
</div>
<!-- ========== Info from phpDoc block ========= -->
<p class="short-description">Fonction d'accès au singleton</p>
<ul class="tags">
<li><span class="field">return:</span> le gestionnaire d'exceptions courant</li>
<li><span class="field">access:</span> public</li>
</ul>
<div class="method-signature">
static <span class="method-result">GestionnaireErreur</span>
<span class="method-name">
getInstance
</span>
()
</div>
</div>
<a name="method__construct" id="__construct"><!-- --></a>
<div class="oddrow">
<div class="method-header">
<span class="method-title">Constructor __construct</span> (line <span class="line-number"><a href="../__filesource/fsource_Framework__GestionnaireException.php.html#a51">51</a></span>)
</div>
<!-- ========== Info from phpDoc block ========= -->
<p class="short-description">Constructeur avec paramètres optionnel</p>
<ul class="tags">
<li><span class="field">access:</span> public</li>
</ul>
<div class="method-signature">
<span class="method-result">GestionnaireException</span>
<span class="method-name">
__construct
</span>
(<span class="var-type">bool</span>&nbsp;<span class="var-name">0</span>)
</div>
<ul class="parameters">
<li>
<span class="var-type">bool</span>
<span class="var-name">0</span><span class="var-description">: indique si l'on veut afficher ou non le contexte des exceptions (i.e. la trace)</span> </li>
</ul>
</div>
<a name="method__destruct" id="__destruct"><!-- --></a>
<div class="evenrow">
<div class="method-header">
<span class="method-title">Destructor __destruct</span> (line <span class="line-number"><a href="../__filesource/fsource_Framework__GestionnaireException.php.html#a178">178</a></span>)
</div>
<!-- ========== Info from phpDoc block ========= -->
<ul class="tags">
<li><span class="field">access:</span> public</li>
</ul>
<div class="method-signature">
<span class="method-result">void</span>
<span class="method-name">
__destruct
</span>
()
</div>
</div>
<a name="methodsetContexte" id="setContexte"><!-- --></a>
<div class="oddrow">
<div class="method-header">
<span class="method-title">setContexte</span> (line <span class="line-number"><a href="../__filesource/fsource_Framework__GestionnaireException.php.html#a72">72</a></span>)
</div>
<!-- ========== Info from phpDoc block ========= -->
<p class="short-description">Definit si l'on veut afficher le contexte ou non</p>
<ul class="tags">
<li><span class="field">access:</span> public</li>
</ul>
<div class="method-signature">
<span class="method-result">void</span>
<span class="method-name">
setContexte
</span>
(<span class="var-type">bool</span>&nbsp;<span class="var-name">$contexte</span>)
</div>
<ul class="parameters">
<li>
<span class="var-type">bool</span>
<span class="var-name">$contexte</span><span class="var-description">: true si on veut afficher le contexte, false sinon, par défaut vaut false</span> </li>
</ul>
</div>
</div>
</div>
 
 
<p class="notes" id="credit">
Documentation generated on Thu, 04 Mar 2010 19:27:23 +0100 by <a href="http://www.phpdoc.org" target="_blank">phpDocumentor 1.4.3</a>
</p>
</div></body>
</html>
/tags/v0.3-aleaume/doc/HTMLframesConverter/Framework/_Log.php.html
New file
0,0 → 1,140
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<!-- template designed by Marco Von Ballmoos -->
<title>Docs for page Log.php</title>
<meta http-equiv='Content-Type' content='text/html; charset=UTF-8'/>
<link rel="stylesheet" href="../media/stylesheet.css" />
<script src="../media/lib/classTree.js"></script>
<script language="javascript" type="text/javascript">
var imgPlus = new Image();
var imgMinus = new Image();
imgPlus.src = "../media/images/plus.png";
imgMinus.src = "../media/images/minus.png";
function showNode(Node){
switch(navigator.family){
case 'nn4':
// Nav 4.x code fork...
var oTable = document.layers["span" + Node];
var oImg = document.layers["img" + Node];
break;
case 'ie4':
// IE 4/5 code fork...
var oTable = document.all["span" + Node];
var oImg = document.all["img" + Node];
break;
case 'gecko':
// Standards Compliant code fork...
var oTable = document.getElementById("span" + Node);
var oImg = document.getElementById("img" + Node);
break;
}
oImg.src = imgMinus.src;
oTable.style.display = "block";
}
function hideNode(Node){
switch(navigator.family){
case 'nn4':
// Nav 4.x code fork...
var oTable = document.layers["span" + Node];
var oImg = document.layers["img" + Node];
break;
case 'ie4':
// IE 4/5 code fork...
var oTable = document.all["span" + Node];
var oImg = document.all["img" + Node];
break;
case 'gecko':
// Standards Compliant code fork...
var oTable = document.getElementById("span" + Node);
var oImg = document.getElementById("img" + Node);
break;
}
oImg.src = imgPlus.src;
oTable.style.display = "none";
}
function nodeIsVisible(Node){
switch(navigator.family){
case 'nn4':
// Nav 4.x code fork...
var oTable = document.layers["span" + Node];
break;
case 'ie4':
// IE 4/5 code fork...
var oTable = document.all["span" + Node];
break;
case 'gecko':
// Standards Compliant code fork...
var oTable = document.getElementById("span" + Node);
break;
}
return (oTable && oTable.style.display == "block");
}
function toggleNodeVisibility(Node){
if (nodeIsVisible(Node)){
hideNode(Node);
}else{
showNode(Node);
}
}
</script>
</head>
<body>
<div class="page-body">
<h2 class="file-name">/Log.php</h2>
 
<a name="sec-description"></a>
<div class="info-box">
<div class="info-box-title">Description</div>
<div class="nav-bar">
<span class="disabled">Description</span> |
<a href="#sec-classes">Classes</a>
</div>
<div class="info-box-body">
<!-- ========== Info from phpDoc block ========= -->
<ul class="tags">
<li><span class="field">filesource:</span> <a href="../__filesource/fsource_Framework__Log.php.html">Source Code for this file</a></li>
</ul>
</div>
</div>
<a name="sec-classes"></a>
<div class="info-box">
<div class="info-box-title">Classes</div>
<div class="nav-bar">
<a href="#sec-description">Description</a> |
<span class="disabled">Classes</span>
</div>
<div class="info-box-body">
<table cellpadding="2" cellspacing="0" class="class-table">
<tr>
<th class="class-table-header">Class</th>
<th class="class-table-header">Description</th>
</tr>
<tr>
<td style="padding-right: 2em; vertical-align: top">
<a href="../Framework/Log.html">Log</a>
</td>
<td>
Classe permettant de logger des messages dans les fichier situés dans le dossier de log
</td>
</tr>
</table>
</div>
</div>
 
<p class="notes" id="credit">
Documentation generated on Thu, 04 Mar 2010 19:27:23 +0100 by <a href="http://www.phpdoc.org" target="_blank">phpDocumentor 1.4.3</a>
</p>
</div></body>
</html>
/tags/v0.3-aleaume/doc/HTMLframesConverter/Framework/_SquelettePhp.php.html
New file
0,0 → 1,140
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<!-- template designed by Marco Von Ballmoos -->
<title>Docs for page SquelettePhp.php</title>
<meta http-equiv='Content-Type' content='text/html; charset=UTF-8'/>
<link rel="stylesheet" href="../media/stylesheet.css" />
<script src="../media/lib/classTree.js"></script>
<script language="javascript" type="text/javascript">
var imgPlus = new Image();
var imgMinus = new Image();
imgPlus.src = "../media/images/plus.png";
imgMinus.src = "../media/images/minus.png";
function showNode(Node){
switch(navigator.family){
case 'nn4':
// Nav 4.x code fork...
var oTable = document.layers["span" + Node];
var oImg = document.layers["img" + Node];
break;
case 'ie4':
// IE 4/5 code fork...
var oTable = document.all["span" + Node];
var oImg = document.all["img" + Node];
break;
case 'gecko':
// Standards Compliant code fork...
var oTable = document.getElementById("span" + Node);
var oImg = document.getElementById("img" + Node);
break;
}
oImg.src = imgMinus.src;
oTable.style.display = "block";
}
function hideNode(Node){
switch(navigator.family){
case 'nn4':
// Nav 4.x code fork...
var oTable = document.layers["span" + Node];
var oImg = document.layers["img" + Node];
break;
case 'ie4':
// IE 4/5 code fork...
var oTable = document.all["span" + Node];
var oImg = document.all["img" + Node];
break;
case 'gecko':
// Standards Compliant code fork...
var oTable = document.getElementById("span" + Node);
var oImg = document.getElementById("img" + Node);
break;
}
oImg.src = imgPlus.src;
oTable.style.display = "none";
}
function nodeIsVisible(Node){
switch(navigator.family){
case 'nn4':
// Nav 4.x code fork...
var oTable = document.layers["span" + Node];
break;
case 'ie4':
// IE 4/5 code fork...
var oTable = document.all["span" + Node];
break;
case 'gecko':
// Standards Compliant code fork...
var oTable = document.getElementById("span" + Node);
break;
}
return (oTable && oTable.style.display == "block");
}
function toggleNodeVisibility(Node){
if (nodeIsVisible(Node)){
hideNode(Node);
}else{
showNode(Node);
}
}
</script>
</head>
<body>
<div class="page-body">
<h2 class="file-name">/SquelettePhp.php</h2>
 
<a name="sec-description"></a>
<div class="info-box">
<div class="info-box-title">Description</div>
<div class="nav-bar">
<span class="disabled">Description</span> |
<a href="#sec-classes">Classes</a>
</div>
<div class="info-box-body">
<!-- ========== Info from phpDoc block ========= -->
<ul class="tags">
<li><span class="field">filesource:</span> <a href="../__filesource/fsource_Framework__SquelettePhp.php.html">Source Code for this file</a></li>
</ul>
</div>
</div>
<a name="sec-classes"></a>
<div class="info-box">
<div class="info-box-title">Classes</div>
<div class="nav-bar">
<a href="#sec-description">Description</a> |
<span class="disabled">Classes</span>
</div>
<div class="info-box-body">
<table cellpadding="2" cellspacing="0" class="class-table">
<tr>
<th class="class-table-header">Class</th>
<th class="class-table-header">Description</th>
</tr>
<tr>
<td style="padding-right: 2em; vertical-align: top">
<a href="../Framework/SquelettePhp.html">SquelettePhp</a>
</td>
<td>
Classe SquelettePhp, traitant les squelette Php utilisant la syntaxe courte php ou pas.
</td>
</tr>
</table>
</div>
</div>
 
<p class="notes" id="credit">
Documentation generated on Thu, 04 Mar 2010 19:27:25 +0100 by <a href="http://www.phpdoc.org" target="_blank">phpDocumentor 1.4.3</a>
</p>
</div></body>
</html>
/tags/v0.3-aleaume/doc/HTMLframesConverter/Framework/_Registre.php.html
New file
0,0 → 1,140
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<!-- template designed by Marco Von Ballmoos -->
<title>Docs for page Registre.php</title>
<meta http-equiv='Content-Type' content='text/html; charset=UTF-8'/>
<link rel="stylesheet" href="../media/stylesheet.css" />
<script src="../media/lib/classTree.js"></script>
<script language="javascript" type="text/javascript">
var imgPlus = new Image();
var imgMinus = new Image();
imgPlus.src = "../media/images/plus.png";
imgMinus.src = "../media/images/minus.png";
function showNode(Node){
switch(navigator.family){
case 'nn4':
// Nav 4.x code fork...
var oTable = document.layers["span" + Node];
var oImg = document.layers["img" + Node];
break;
case 'ie4':
// IE 4/5 code fork...
var oTable = document.all["span" + Node];
var oImg = document.all["img" + Node];
break;
case 'gecko':
// Standards Compliant code fork...
var oTable = document.getElementById("span" + Node);
var oImg = document.getElementById("img" + Node);
break;
}
oImg.src = imgMinus.src;
oTable.style.display = "block";
}
function hideNode(Node){
switch(navigator.family){
case 'nn4':
// Nav 4.x code fork...
var oTable = document.layers["span" + Node];
var oImg = document.layers["img" + Node];
break;
case 'ie4':
// IE 4/5 code fork...
var oTable = document.all["span" + Node];
var oImg = document.all["img" + Node];
break;
case 'gecko':
// Standards Compliant code fork...
var oTable = document.getElementById("span" + Node);
var oImg = document.getElementById("img" + Node);
break;
}
oImg.src = imgPlus.src;
oTable.style.display = "none";
}
function nodeIsVisible(Node){
switch(navigator.family){
case 'nn4':
// Nav 4.x code fork...
var oTable = document.layers["span" + Node];
break;
case 'ie4':
// IE 4/5 code fork...
var oTable = document.all["span" + Node];
break;
case 'gecko':
// Standards Compliant code fork...
var oTable = document.getElementById("span" + Node);
break;
}
return (oTable && oTable.style.display == "block");
}
function toggleNodeVisibility(Node){
if (nodeIsVisible(Node)){
hideNode(Node);
}else{
showNode(Node);
}
}
</script>
</head>
<body>
<div class="page-body">
<h2 class="file-name">/Registre.php</h2>
 
<a name="sec-description"></a>
<div class="info-box">
<div class="info-box-title">Description</div>
<div class="nav-bar">
<span class="disabled">Description</span> |
<a href="#sec-classes">Classes</a>
</div>
<div class="info-box-body">
<!-- ========== Info from phpDoc block ========= -->
<ul class="tags">
<li><span class="field">filesource:</span> <a href="../__filesource/fsource_Framework__Registre.php.html">Source Code for this file</a></li>
</ul>
</div>
</div>
<a name="sec-classes"></a>
<div class="info-box">
<div class="info-box-title">Classes</div>
<div class="nav-bar">
<a href="#sec-description">Description</a> |
<span class="disabled">Classes</span>
</div>
<div class="info-box-body">
<table cellpadding="2" cellspacing="0" class="class-table">
<tr>
<th class="class-table-header">Class</th>
<th class="class-table-header">Description</th>
</tr>
<tr>
<td style="padding-right: 2em; vertical-align: top">
<a href="../Framework/Registre.html">Registre</a>
</td>
<td>
Classe registre, qui permet un accès à différentes variables à travers les autres classes.
</td>
</tr>
</table>
</div>
</div>
 
<p class="notes" id="credit">
Documentation generated on Thu, 04 Mar 2010 19:27:25 +0100 by <a href="http://www.phpdoc.org" target="_blank">phpDocumentor 1.4.3</a>
</p>
</div></body>
</html>
/tags/v0.3-aleaume/doc/HTMLframesConverter/Framework/_Chronometre.php.html
New file
0,0 → 1,140
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<!-- template designed by Marco Von Ballmoos -->
<title>Docs for page Chronometre.php</title>
<meta http-equiv='Content-Type' content='text/html; charset=UTF-8'/>
<link rel="stylesheet" href="../media/stylesheet.css" />
<script src="../media/lib/classTree.js"></script>
<script language="javascript" type="text/javascript">
var imgPlus = new Image();
var imgMinus = new Image();
imgPlus.src = "../media/images/plus.png";
imgMinus.src = "../media/images/minus.png";
function showNode(Node){
switch(navigator.family){
case 'nn4':
// Nav 4.x code fork...
var oTable = document.layers["span" + Node];
var oImg = document.layers["img" + Node];
break;
case 'ie4':
// IE 4/5 code fork...
var oTable = document.all["span" + Node];
var oImg = document.all["img" + Node];
break;
case 'gecko':
// Standards Compliant code fork...
var oTable = document.getElementById("span" + Node);
var oImg = document.getElementById("img" + Node);
break;
}
oImg.src = imgMinus.src;
oTable.style.display = "block";
}
function hideNode(Node){
switch(navigator.family){
case 'nn4':
// Nav 4.x code fork...
var oTable = document.layers["span" + Node];
var oImg = document.layers["img" + Node];
break;
case 'ie4':
// IE 4/5 code fork...
var oTable = document.all["span" + Node];
var oImg = document.all["img" + Node];
break;
case 'gecko':
// Standards Compliant code fork...
var oTable = document.getElementById("span" + Node);
var oImg = document.getElementById("img" + Node);
break;
}
oImg.src = imgPlus.src;
oTable.style.display = "none";
}
function nodeIsVisible(Node){
switch(navigator.family){
case 'nn4':
// Nav 4.x code fork...
var oTable = document.layers["span" + Node];
break;
case 'ie4':
// IE 4/5 code fork...
var oTable = document.all["span" + Node];
break;
case 'gecko':
// Standards Compliant code fork...
var oTable = document.getElementById("span" + Node);
break;
}
return (oTable && oTable.style.display == "block");
}
function toggleNodeVisibility(Node){
if (nodeIsVisible(Node)){
hideNode(Node);
}else{
showNode(Node);
}
}
</script>
</head>
<body>
<div class="page-body">
<h2 class="file-name">/Chronometre.php</h2>
 
<a name="sec-description"></a>
<div class="info-box">
<div class="info-box-title">Description</div>
<div class="nav-bar">
<span class="disabled">Description</span> |
<a href="#sec-classes">Classes</a>
</div>
<div class="info-box-body">
<!-- ========== Info from phpDoc block ========= -->
<ul class="tags">
<li><span class="field">filesource:</span> <a href="../__filesource/fsource_Framework__Chronometre.php.html">Source Code for this file</a></li>
</ul>
</div>
</div>
<a name="sec-classes"></a>
<div class="info-box">
<div class="info-box-title">Classes</div>
<div class="nav-bar">
<a href="#sec-description">Description</a> |
<span class="disabled">Classes</span>
</div>
<div class="info-box-body">
<table cellpadding="2" cellspacing="0" class="class-table">
<tr>
<th class="class-table-header">Class</th>
<th class="class-table-header">Description</th>
</tr>
<tr>
<td style="padding-right: 2em; vertical-align: top">
<a href="../Framework/Chronometre.html">Chronometre</a>
</td>
<td>
Classe Chronometre() - Permet de stocker et d'afficher les temps d'éxécution de script.
</td>
</tr>
</table>
</div>
</div>
 
<p class="notes" id="credit">
Documentation generated on Thu, 04 Mar 2010 19:27:09 +0100 by <a href="http://www.phpdoc.org" target="_blank">phpDocumentor 1.4.3</a>
</p>
</div></body>
</html>
/tags/v0.3-aleaume/doc/HTMLframesConverter/Framework/_Debug.php.html
New file
0,0 → 1,140
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<!-- template designed by Marco Von Ballmoos -->
<title>Docs for page Debug.php</title>
<meta http-equiv='Content-Type' content='text/html; charset=UTF-8'/>
<link rel="stylesheet" href="../media/stylesheet.css" />
<script src="../media/lib/classTree.js"></script>
<script language="javascript" type="text/javascript">
var imgPlus = new Image();
var imgMinus = new Image();
imgPlus.src = "../media/images/plus.png";
imgMinus.src = "../media/images/minus.png";
function showNode(Node){
switch(navigator.family){
case 'nn4':
// Nav 4.x code fork...
var oTable = document.layers["span" + Node];
var oImg = document.layers["img" + Node];
break;
case 'ie4':
// IE 4/5 code fork...
var oTable = document.all["span" + Node];
var oImg = document.all["img" + Node];
break;
case 'gecko':
// Standards Compliant code fork...
var oTable = document.getElementById("span" + Node);
var oImg = document.getElementById("img" + Node);
break;
}
oImg.src = imgMinus.src;
oTable.style.display = "block";
}
function hideNode(Node){
switch(navigator.family){
case 'nn4':
// Nav 4.x code fork...
var oTable = document.layers["span" + Node];
var oImg = document.layers["img" + Node];
break;
case 'ie4':
// IE 4/5 code fork...
var oTable = document.all["span" + Node];
var oImg = document.all["img" + Node];
break;
case 'gecko':
// Standards Compliant code fork...
var oTable = document.getElementById("span" + Node);
var oImg = document.getElementById("img" + Node);
break;
}
oImg.src = imgPlus.src;
oTable.style.display = "none";
}
function nodeIsVisible(Node){
switch(navigator.family){
case 'nn4':
// Nav 4.x code fork...
var oTable = document.layers["span" + Node];
break;
case 'ie4':
// IE 4/5 code fork...
var oTable = document.all["span" + Node];
break;
case 'gecko':
// Standards Compliant code fork...
var oTable = document.getElementById("span" + Node);
break;
}
return (oTable && oTable.style.display == "block");
}
function toggleNodeVisibility(Node){
if (nodeIsVisible(Node)){
hideNode(Node);
}else{
showNode(Node);
}
}
</script>
</head>
<body>
<div class="page-body">
<h2 class="file-name">/Debug.php</h2>
 
<a name="sec-description"></a>
<div class="info-box">
<div class="info-box-title">Description</div>
<div class="nav-bar">
<span class="disabled">Description</span> |
<a href="#sec-classes">Classes</a>
</div>
<div class="info-box-body">
<!-- ========== Info from phpDoc block ========= -->
<ul class="tags">
<li><span class="field">filesource:</span> <a href="../__filesource/fsource_Framework__Debug.php.html">Source Code for this file</a></li>
</ul>
</div>
</div>
<a name="sec-classes"></a>
<div class="info-box">
<div class="info-box-title">Classes</div>
<div class="nav-bar">
<a href="#sec-description">Description</a> |
<span class="disabled">Classes</span>
</div>
<div class="info-box-body">
<table cellpadding="2" cellspacing="0" class="class-table">
<tr>
<th class="class-table-header">Class</th>
<th class="class-table-header">Description</th>
</tr>
<tr>
<td style="padding-right: 2em; vertical-align: top">
<a href="../Framework/Debug.html">Debug</a>
</td>
<td>
Classe fournissant des fonctions de débogage équivalante à var_dump et print_r.
</td>
</tr>
</table>
</div>
</div>
 
<p class="notes" id="credit">
Documentation generated on Thu, 04 Mar 2010 19:27:20 +0100 by <a href="http://www.phpdoc.org" target="_blank">phpDocumentor 1.4.3</a>
</p>
</div></body>
</html>
/tags/v0.3-aleaume/doc/HTMLframesConverter/Framework/Log.html
New file
0,0 → 1,334
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<!-- template designed by Marco Von Ballmoos -->
<title>Docs For Class Log</title>
<meta http-equiv='Content-Type' content='text/html; charset=UTF-8'/>
<link rel="stylesheet" href="../media/stylesheet.css" />
<script src="../media/lib/classTree.js"></script>
<script language="javascript" type="text/javascript">
var imgPlus = new Image();
var imgMinus = new Image();
imgPlus.src = "../media/images/plus.png";
imgMinus.src = "../media/images/minus.png";
function showNode(Node){
switch(navigator.family){
case 'nn4':
// Nav 4.x code fork...
var oTable = document.layers["span" + Node];
var oImg = document.layers["img" + Node];
break;
case 'ie4':
// IE 4/5 code fork...
var oTable = document.all["span" + Node];
var oImg = document.all["img" + Node];
break;
case 'gecko':
// Standards Compliant code fork...
var oTable = document.getElementById("span" + Node);
var oImg = document.getElementById("img" + Node);
break;
}
oImg.src = imgMinus.src;
oTable.style.display = "block";
}
function hideNode(Node){
switch(navigator.family){
case 'nn4':
// Nav 4.x code fork...
var oTable = document.layers["span" + Node];
var oImg = document.layers["img" + Node];
break;
case 'ie4':
// IE 4/5 code fork...
var oTable = document.all["span" + Node];
var oImg = document.all["img" + Node];
break;
case 'gecko':
// Standards Compliant code fork...
var oTable = document.getElementById("span" + Node);
var oImg = document.getElementById("img" + Node);
break;
}
oImg.src = imgPlus.src;
oTable.style.display = "none";
}
function nodeIsVisible(Node){
switch(navigator.family){
case 'nn4':
// Nav 4.x code fork...
var oTable = document.layers["span" + Node];
break;
case 'ie4':
// IE 4/5 code fork...
var oTable = document.all["span" + Node];
break;
case 'gecko':
// Standards Compliant code fork...
var oTable = document.getElementById("span" + Node);
break;
}
return (oTable && oTable.style.display == "block");
}
function toggleNodeVisibility(Node){
if (nodeIsVisible(Node)){
hideNode(Node);
}else{
showNode(Node);
}
}
</script>
</head>
<body>
<div class="page-body">
<h2 class="class-name">Class Log</h2>
 
<a name="sec-description"></a>
<div class="info-box">
<div class="info-box-title">Description</div>
<div class="nav-bar">
<span class="disabled">Description</span> |
<a href="#sec-method-summary">Methods</a> (<a href="#sec-methods">details</a>)
</div>
<div class="info-box-body">
<!-- ========== Info from phpDoc block ========= -->
<p class="short-description">Classe permettant de logger des messages dans les fichier situés dans le dossier de log</p>
<p class="description"><p>PHP Version 5</p></p>
<ul class="tags">
<li><span class="field">author:</span> aurelien &lt;<a href="mailto:aurelien@tela-botanica.org">aurelien@tela-botanica.org</a>&gt;</li>
<li><span class="field">version:</span> SVN: &lt;svn_id&gt;</li>
<li><span class="field">copyright:</span> 2009 Tela-Botanica</li>
<li><span class="field">link:</span> /doc/framework/</li>
<li><span class="field">license:</span> <a href="http://www.cecill.info/licences/Licence_CeCILL_V2-fr.txt">Licence CECILL</a></li>
</ul>
<p class="notes">
Located in <a class="field" href="_Log.php.html">/Log.php</a> (line <span class="field"><a href="../__filesource/fsource_Framework__Log.php.html#a17">17</a></span>)
</p>
<pre></pre>
</div>
</div>
 
 
 
 
<a name="sec-method-summary"></a>
<div class="info-box">
<div class="info-box-title">Method Summary</span></div>
<div class="nav-bar">
<a href="#sec-description">Description</a> |
<span class="disabled">Methods</span> (<a href="#sec-methods">details</a>)
</div>
<div class="info-box-body">
<div class="method-summary">
<div class="method-definition">
static <span class="method-result">void</span>
<a href="#ajouterEntree" title="details" class="method-name">ajouterEntree</a>
(<span class="var-type">string</span>&nbsp;<span class="var-name">$nomFichier</span>, <span class="var-type"></span>&nbsp;<span class="var-name">$entree</span>, [<span class="var-type"></span>&nbsp;<span class="var-name">$mode</span> = <span class="var-default">'a+'</span>])
</div>
<div class="method-definition">
static <span class="method-result"><a href="../Framework/Log.html">Log</a></span>
<a href="#getInstance" title="details" class="method-name">getInstance</a>
()
</div>
<div class="method-definition">
static <span class="method-result">boolean</span>
<a href="#verifierOuvrirFichier" title="details" class="method-name">verifierOuvrirFichier</a>
(<span class="var-type">string</span>&nbsp;<span class="var-name">$nomFichier</span>, <span class="var-type"></span>&nbsp;<span class="var-name">$mode</span>)
</div>
<div class="method-definition">
static <span class="method-result">void</span>
<a href="#viderLog" title="details" class="method-name">viderLog</a>
(<span class="var-type">string</span>&nbsp;<span class="var-name">$nomFichier</span>)
</div>
<div class="method-definition">
<span class="method-result">void</span>
<a href="#__destruct" title="details" class="method-name">__destruct</a>
()
</div>
</div>
</div>
</div>
 
<a name="sec-methods"></a>
<div class="info-box">
<div class="info-box-title">Methods</div>
<div class="nav-bar">
<a href="#sec-description">Description</a> |
<a href="#sec-method-summary">Methods</a> (<span class="disabled">details</span>)
</div>
<div class="info-box-body">
<A NAME='method_detail'></A>
<a name="methodajouterEntree" id="ajouterEntree"><!-- --></a>
<div class="evenrow">
<div class="method-header">
<span class="method-title">static ajouterEntree</span> (line <span class="line-number"><a href="../__filesource/fsource_Framework__Log.php.html#a95">95</a></span>)
</div>
<!-- ========== Info from phpDoc block ========= -->
<p class="short-description">Ajoute une entrée au log spécifié par le paramètre $nomFichier</p>
<ul class="tags">
<li><span class="field">access:</span> public</li>
</ul>
<div class="method-signature">
static <span class="method-result">void</span>
<span class="method-name">
ajouterEntree
</span>
(<span class="var-type">string</span>&nbsp;<span class="var-name">$nomFichier</span>, <span class="var-type"></span>&nbsp;<span class="var-name">$entree</span>, [<span class="var-type"></span>&nbsp;<span class="var-name">$mode</span> = <span class="var-default">'a+'</span>])
</div>
<ul class="parameters">
<li>
<span class="var-type">string</span>
<span class="var-name">$nomFichier</span><span class="var-description">: le nom du fichier dans lequel écrire</span> </li>
<li>
<span class="var-type"></span>
<span class="var-name">$entree</span> </li>
<li>
<span class="var-type"></span>
<span class="var-name">$mode</span> </li>
</ul>
</div>
<a name="methodgetInstance" id="getInstance"><!-- --></a>
<div class="oddrow">
<div class="method-header">
<span class="method-title">static getInstance</span> (line <span class="line-number"><a href="../__filesource/fsource_Framework__Log.php.html#a83">83</a></span>)
</div>
<!-- ========== Info from phpDoc block ========= -->
<p class="short-description">Fonction qui renvoie l'instance de classe en assurant son unicité, c'est l'unique méthode qui doit être</p>
<p class="description"><p>utilisée pour récupérer l'objet Registre</p></p>
<ul class="tags">
<li><span class="field">return:</span> le gestionnaire de log en cours</li>
<li><span class="field">access:</span> public</li>
</ul>
<div class="method-signature">
static <span class="method-result"><a href="../Framework/Log.html">Log</a></span>
<span class="method-name">
getInstance
</span>
()
</div>
</div>
<a name="methodverifierOuvrirFichier" id="verifierOuvrirFichier"><!-- --></a>
<div class="evenrow">
<div class="method-header">
<span class="method-title">static verifierOuvrirFichier</span> (line <span class="line-number"><a href="../__filesource/fsource_Framework__Log.php.html#a126">126</a></span>)
</div>
<!-- ========== Info from phpDoc block ========= -->
<p class="short-description">Vérifie la présence d'un fichier dans le tableau, ses droits d'écriture,</p>
<p class="description"><p>l'ouvre si nécessaire</p></p>
<ul class="tags">
<li><span class="field">return:</span> true si le fichier est ouvert ou maintenant accessible, false sinon</li>
<li><span class="field">access:</span> public</li>
</ul>
<div class="method-signature">
static <span class="method-result">boolean</span>
<span class="method-name">
verifierOuvrirFichier
</span>
(<span class="var-type">string</span>&nbsp;<span class="var-name">$nomFichier</span>, <span class="var-type"></span>&nbsp;<span class="var-name">$mode</span>)
</div>
<ul class="parameters">
<li>
<span class="var-type">string</span>
<span class="var-name">$nomFichier</span><span class="var-description">: le nom du fichier dont on doit vérifier la présence</span> </li>
<li>
<span class="var-type"></span>
<span class="var-name">$mode</span> </li>
</ul>
</div>
<a name="methodviderLog" id="viderLog"><!-- --></a>
<div class="oddrow">
<div class="method-header">
<span class="method-title">static viderLog</span> (line <span class="line-number"><a href="../__filesource/fsource_Framework__Log.php.html#a116">116</a></span>)
</div>
<!-- ========== Info from phpDoc block ========= -->
<p class="short-description">Vide un fichier log indiqué</p>
<ul class="tags">
<li><span class="field">access:</span> public</li>
</ul>
<div class="method-signature">
static <span class="method-result">void</span>
<span class="method-name">
viderLog
</span>
(<span class="var-type">string</span>&nbsp;<span class="var-name">$nomFichier</span>)
</div>
<ul class="parameters">
<li>
<span class="var-type">string</span>
<span class="var-name">$nomFichier</span><span class="var-description">: le nom du fichier à vider</span> </li>
</ul>
</div>
<a name="method__destruct" id="__destruct"><!-- --></a>
<div class="evenrow">
<div class="method-header">
<span class="method-title">Destructor __destruct</span> (line <span class="line-number"><a href="../__filesource/fsource_Framework__Log.php.html#a179">179</a></span>)
</div>
<!-- ========== Info from phpDoc block ========= -->
<p class="short-description">destructeur de classe, ferme les descripteurs ouverts</p>
<ul class="tags">
<li><span class="field">access:</span> public</li>
</ul>
<div class="method-signature">
<span class="method-result">void</span>
<span class="method-name">
__destruct
</span>
()
</div>
</div>
</div>
</div>
 
 
<p class="notes" id="credit">
Documentation generated on Thu, 04 Mar 2010 19:27:23 +0100 by <a href="http://www.phpdoc.org" target="_blank">phpDocumentor 1.4.3</a>
</p>
</div></body>
</html>
/tags/v0.3-aleaume/doc/HTMLframesConverter/Framework/_Controleur.php.html
New file
0,0 → 1,140
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<!-- template designed by Marco Von Ballmoos -->
<title>Docs for page Controleur.php</title>
<meta http-equiv='Content-Type' content='text/html; charset=UTF-8'/>
<link rel="stylesheet" href="../media/stylesheet.css" />
<script src="../media/lib/classTree.js"></script>
<script language="javascript" type="text/javascript">
var imgPlus = new Image();
var imgMinus = new Image();
imgPlus.src = "../media/images/plus.png";
imgMinus.src = "../media/images/minus.png";
function showNode(Node){
switch(navigator.family){
case 'nn4':
// Nav 4.x code fork...
var oTable = document.layers["span" + Node];
var oImg = document.layers["img" + Node];
break;
case 'ie4':
// IE 4/5 code fork...
var oTable = document.all["span" + Node];
var oImg = document.all["img" + Node];
break;
case 'gecko':
// Standards Compliant code fork...
var oTable = document.getElementById("span" + Node);
var oImg = document.getElementById("img" + Node);
break;
}
oImg.src = imgMinus.src;
oTable.style.display = "block";
}
function hideNode(Node){
switch(navigator.family){
case 'nn4':
// Nav 4.x code fork...
var oTable = document.layers["span" + Node];
var oImg = document.layers["img" + Node];
break;
case 'ie4':
// IE 4/5 code fork...
var oTable = document.all["span" + Node];
var oImg = document.all["img" + Node];
break;
case 'gecko':
// Standards Compliant code fork...
var oTable = document.getElementById("span" + Node);
var oImg = document.getElementById("img" + Node);
break;
}
oImg.src = imgPlus.src;
oTable.style.display = "none";
}
function nodeIsVisible(Node){
switch(navigator.family){
case 'nn4':
// Nav 4.x code fork...
var oTable = document.layers["span" + Node];
break;
case 'ie4':
// IE 4/5 code fork...
var oTable = document.all["span" + Node];
break;
case 'gecko':
// Standards Compliant code fork...
var oTable = document.getElementById("span" + Node);
break;
}
return (oTable && oTable.style.display == "block");
}
function toggleNodeVisibility(Node){
if (nodeIsVisible(Node)){
hideNode(Node);
}else{
showNode(Node);
}
}
</script>
</head>
<body>
<div class="page-body">
<h2 class="file-name">/Controleur.php</h2>
 
<a name="sec-description"></a>
<div class="info-box">
<div class="info-box-title">Description</div>
<div class="nav-bar">
<span class="disabled">Description</span> |
<a href="#sec-classes">Classes</a>
</div>
<div class="info-box-body">
<!-- ========== Info from phpDoc block ========= -->
<ul class="tags">
<li><span class="field">filesource:</span> <a href="../__filesource/fsource_Framework__Controleur.php.html">Source Code for this file</a></li>
</ul>
</div>
</div>
<a name="sec-classes"></a>
<div class="info-box">
<div class="info-box-title">Classes</div>
<div class="nav-bar">
<a href="#sec-description">Description</a> |
<span class="disabled">Classes</span>
</div>
<div class="info-box-body">
<table cellpadding="2" cellspacing="0" class="class-table">
<tr>
<th class="class-table-header">Class</th>
<th class="class-table-header">Description</th>
</tr>
<tr>
<td style="padding-right: 2em; vertical-align: top">
<a href="../Framework/Controleur.html">Controleur</a>
</td>
<td>
Classe Controleur, coeur d'une application, c'est normalement la seule classe d'une application qui devrait être appelée de l'extérieur.
</td>
</tr>
</table>
</div>
</div>
 
<p class="notes" id="credit">
Documentation generated on Thu, 04 Mar 2010 19:27:16 +0100 by <a href="http://www.phpdoc.org" target="_blank">phpDocumentor 1.4.3</a>
</p>
</div></body>
</html>
/tags/v0.3-aleaume/doc/HTMLframesConverter/Framework/SquelettePhp.html
New file
0,0 → 1,196
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<!-- template designed by Marco Von Ballmoos -->
<title>Docs For Class SquelettePhp</title>
<meta http-equiv='Content-Type' content='text/html; charset=UTF-8'/>
<link rel="stylesheet" href="../media/stylesheet.css" />
<script src="../media/lib/classTree.js"></script>
<script language="javascript" type="text/javascript">
var imgPlus = new Image();
var imgMinus = new Image();
imgPlus.src = "../media/images/plus.png";
imgMinus.src = "../media/images/minus.png";
function showNode(Node){
switch(navigator.family){
case 'nn4':
// Nav 4.x code fork...
var oTable = document.layers["span" + Node];
var oImg = document.layers["img" + Node];
break;
case 'ie4':
// IE 4/5 code fork...
var oTable = document.all["span" + Node];
var oImg = document.all["img" + Node];
break;
case 'gecko':
// Standards Compliant code fork...
var oTable = document.getElementById("span" + Node);
var oImg = document.getElementById("img" + Node);
break;
}
oImg.src = imgMinus.src;
oTable.style.display = "block";
}
function hideNode(Node){
switch(navigator.family){
case 'nn4':
// Nav 4.x code fork...
var oTable = document.layers["span" + Node];
var oImg = document.layers["img" + Node];
break;
case 'ie4':
// IE 4/5 code fork...
var oTable = document.all["span" + Node];
var oImg = document.all["img" + Node];
break;
case 'gecko':
// Standards Compliant code fork...
var oTable = document.getElementById("span" + Node);
var oImg = document.getElementById("img" + Node);
break;
}
oImg.src = imgPlus.src;
oTable.style.display = "none";
}
function nodeIsVisible(Node){
switch(navigator.family){
case 'nn4':
// Nav 4.x code fork...
var oTable = document.layers["span" + Node];
break;
case 'ie4':
// IE 4/5 code fork...
var oTable = document.all["span" + Node];
break;
case 'gecko':
// Standards Compliant code fork...
var oTable = document.getElementById("span" + Node);
break;
}
return (oTable && oTable.style.display == "block");
}
function toggleNodeVisibility(Node){
if (nodeIsVisible(Node)){
hideNode(Node);
}else{
showNode(Node);
}
}
</script>
</head>
<body>
<div class="page-body">
<h2 class="class-name">Class SquelettePhp</h2>
 
<a name="sec-description"></a>
<div class="info-box">
<div class="info-box-title">Description</div>
<div class="nav-bar">
<span class="disabled">Description</span> |
<a href="#sec-method-summary">Methods</a> (<a href="#sec-methods">details</a>)
</div>
<div class="info-box-body">
<!-- ========== Info from phpDoc block ========= -->
<p class="short-description">Classe SquelettePhp, traitant les squelette Php utilisant la syntaxe courte php ou pas.</p>
<p class="description"><p>Ces méthodes sont statiques.</p></p>
<ul class="tags">
<li><span class="field">author:</span> Jean-Pascal MILCENT &lt;<a href="mailto:jpm@tela-botanica.org">jpm@tela-botanica.org</a>&gt;</li>
<li><span class="field">version:</span> SVN: $$Id: SquelettePhp.php 153 2010-03-04 10:48:32Z jpm $$</li>
<li><span class="field">copyright:</span> 2010 Tela-Botanica</li>
<li><span class="field">link:</span> /doc/framework/</li>
<li><span class="field">license:</span> <a href="http://www.gnu.org/licenses/gpl.html">Licence GNU-GPL</a></li>
<li><span class="field">license:</span> <a href="http://www.cecill.info/licences/Licence_CeCILL_V2-fr.txt">Licence CECILL</a></li>
</ul>
<p class="notes">
Located in <a class="field" href="_SquelettePhp.php.html">/SquelettePhp.php</a> (line <span class="field"><a href="../__filesource/fsource_Framework__SquelettePhp.php.html#a16">16</a></span>)
</p>
<pre></pre>
</div>
</div>
 
 
 
 
<a name="sec-method-summary"></a>
<div class="info-box">
<div class="info-box-title">Method Summary</span></div>
<div class="nav-bar">
<a href="#sec-description">Description</a> |
<span class="disabled">Methods</span> (<a href="#sec-methods">details</a>)
</div>
<div class="info-box-body">
<div class="method-summary">
<div class="method-definition">
static <span class="method-result">boolean</span>
<a href="#analyser" title="details" class="method-name">analyser</a>
(<span class="var-type">String</span>&nbsp;<span class="var-name">$fichier</span>, [<span class="var-type"></span>&nbsp;<span class="var-name">$donnees</span> = <span class="var-default">array()</span>])
</div>
</div>
</div>
</div>
 
<a name="sec-methods"></a>
<div class="info-box">
<div class="info-box-title">Methods</div>
<div class="nav-bar">
<a href="#sec-description">Description</a> |
<a href="#sec-method-summary">Methods</a> (<span class="disabled">details</span>)
</div>
<div class="info-box-body">
<A NAME='method_detail'></A>
<a name="methodanalyser" id="analyser"><!-- --></a>
<div class="oddrow">
<div class="method-header">
<span class="method-title">static analyser</span> (line <span class="line-number"><a href="../__filesource/fsource_Framework__SquelettePhp.php.html#a27">27</a></span>)
</div>
<!-- ========== Info from phpDoc block ========= -->
<p class="short-description">Fonction prenant en paramètre un chemin de fichier squelette et un tableau associatif de données, en extrait les variables, charge le squelette et retourne le résultat des deux combinés.</p>
<ul class="tags">
<li><span class="field">return:</span> false si la vue n'existe pas, sinon la chaine résultat.</li>
<li><span class="field">access:</span> public</li>
</ul>
<div class="method-signature">
static <span class="method-result">boolean</span>
<span class="method-name">
analyser
</span>
(<span class="var-type">String</span>&nbsp;<span class="var-name">$fichier</span>, [<span class="var-type"></span>&nbsp;<span class="var-name">$donnees</span> = <span class="var-default">array()</span>])
</div>
<ul class="parameters">
<li>
<span class="var-type">String</span>
<span class="var-name">$fichier</span><span class="var-description">: le chemin du fichier du squelette</span> </li>
<li>
<span class="var-type">Array</span>
<span class="var-name">$donnees</span><span class="var-description">: un tableau associatif contenant les variables a injecter dans le squelette.</span> </li>
</ul>
</div>
</div>
</div>
 
 
<p class="notes" id="credit">
Documentation generated on Thu, 04 Mar 2010 19:27:25 +0100 by <a href="http://www.phpdoc.org" target="_blank">phpDocumentor 1.4.3</a>
</p>
</div></body>
</html>
/tags/v0.3-aleaume/doc/HTMLframesConverter/Framework/Registre.html
New file
0,0 → 1,333
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<!-- template designed by Marco Von Ballmoos -->
<title>Docs For Class Registre</title>
<meta http-equiv='Content-Type' content='text/html; charset=UTF-8'/>
<link rel="stylesheet" href="../media/stylesheet.css" />
<script src="../media/lib/classTree.js"></script>
<script language="javascript" type="text/javascript">
var imgPlus = new Image();
var imgMinus = new Image();
imgPlus.src = "../media/images/plus.png";
imgMinus.src = "../media/images/minus.png";
function showNode(Node){
switch(navigator.family){
case 'nn4':
// Nav 4.x code fork...
var oTable = document.layers["span" + Node];
var oImg = document.layers["img" + Node];
break;
case 'ie4':
// IE 4/5 code fork...
var oTable = document.all["span" + Node];
var oImg = document.all["img" + Node];
break;
case 'gecko':
// Standards Compliant code fork...
var oTable = document.getElementById("span" + Node);
var oImg = document.getElementById("img" + Node);
break;
}
oImg.src = imgMinus.src;
oTable.style.display = "block";
}
function hideNode(Node){
switch(navigator.family){
case 'nn4':
// Nav 4.x code fork...
var oTable = document.layers["span" + Node];
var oImg = document.layers["img" + Node];
break;
case 'ie4':
// IE 4/5 code fork...
var oTable = document.all["span" + Node];
var oImg = document.all["img" + Node];
break;
case 'gecko':
// Standards Compliant code fork...
var oTable = document.getElementById("span" + Node);
var oImg = document.getElementById("img" + Node);
break;
}
oImg.src = imgPlus.src;
oTable.style.display = "none";
}
function nodeIsVisible(Node){
switch(navigator.family){
case 'nn4':
// Nav 4.x code fork...
var oTable = document.layers["span" + Node];
break;
case 'ie4':
// IE 4/5 code fork...
var oTable = document.all["span" + Node];
break;
case 'gecko':
// Standards Compliant code fork...
var oTable = document.getElementById("span" + Node);
break;
}
return (oTable && oTable.style.display == "block");
}
function toggleNodeVisibility(Node){
if (nodeIsVisible(Node)){
hideNode(Node);
}else{
showNode(Node);
}
}
</script>
</head>
<body>
<div class="page-body">
<h2 class="class-name">Class Registre</h2>
 
<a name="sec-description"></a>
<div class="info-box">
<div class="info-box-title">Description</div>
<div class="nav-bar">
<span class="disabled">Description</span> |
<a href="#sec-method-summary">Methods</a> (<a href="#sec-methods">details</a>)
</div>
<div class="info-box-body">
<!-- ========== Info from phpDoc block ========= -->
<p class="short-description">Classe registre, qui permet un accès à différentes variables à travers les autres classes.</p>
<p class="description"><p>C'est un singleton</p><p>PHP Version 5</p></p>
<ul class="tags">
<li><span class="field">author:</span> Jean-Pascal Milcent &lt;<a href="mailto:jmp@tela-botanica.org">jmp@tela-botanica.org</a>&gt;</li>
<li><span class="field">version:</span> SVN: $$Id: Registre.php 120 2009-09-01 12:21:14Z aurelien $$</li>
<li><span class="field">copyright:</span> 2009 Tela-Botanica</li>
<li><span class="field">link:</span> /doc/framework/</li>
<li><span class="field">license:</span> <a href="http://www.gnu.org/licenses/gpl.html">Licence GNU-GPL</a></li>
<li><span class="field">license:</span> <a href="http://www.cecill.info/licences/Licence_CeCILL_V2-fr.txt">Licence CECILL</a></li>
</ul>
<p class="notes">
Located in <a class="field" href="_Registre.php.html">/Registre.php</a> (line <span class="field"><a href="../__filesource/fsource_Framework__Registre.php.html#a19">19</a></span>)
</p>
<pre></pre>
</div>
</div>
 
 
 
 
<a name="sec-method-summary"></a>
<div class="info-box">
<div class="info-box-title">Method Summary</span></div>
<div class="nav-bar">
<a href="#sec-description">Description</a> |
<span class="disabled">Methods</span> (<a href="#sec-methods">details</a>)
</div>
<div class="info-box-body">
<div class="method-summary">
<div class="method-definition">
static <span class="method-result">void</span>
<a href="#getInstance" title="details" class="method-name">getInstance</a>
()
</div>
<div class="method-definition">
<span class="method-result">void</span>
<a href="#detruire" title="details" class="method-name">detruire</a>
(<span class="var-type"></span>&nbsp;<span class="var-name">$intitule</span>)
</div>
<div class="method-definition">
<span class="method-result">boolean</span>
<a href="#existe" title="details" class="method-name">existe</a>
(<span class="var-type"></span>&nbsp;<span class="var-name">$intitule</span>)
</div>
<div class="method-definition">
<span class="method-result">mixed</span>
<a href="#get" title="details" class="method-name">get</a>
(<span class="var-type"></span>&nbsp;<span class="var-name">$intitule</span>)
</div>
<div class="method-definition">
<span class="method-result">void</span>
<a href="#set" title="details" class="method-name">set</a>
(<span class="var-type">string</span>&nbsp;<span class="var-name">$intitule</span>, <span class="var-type">mixed</span>&nbsp;<span class="var-name">$objet</span>)
</div>
</div>
</div>
</div>
 
<a name="sec-methods"></a>
<div class="info-box">
<div class="info-box-title">Methods</div>
<div class="nav-bar">
<a href="#sec-description">Description</a> |
<a href="#sec-method-summary">Methods</a> (<span class="disabled">details</span>)
</div>
<div class="info-box-body">
<A NAME='method_detail'></A>
<a name="methodgetInstance" id="getInstance"><!-- --></a>
<div class="evenrow">
<div class="method-header">
<span class="method-title">static getInstance</span> (line <span class="line-number"><a href="../__filesource/fsource_Framework__Registre.php.html#a40">40</a></span>)
</div>
<!-- ========== Info from phpDoc block ========= -->
<p class="short-description">Fonction qui renvoie l'instance de classe en assurant son unicité, c'est l'unique méthode qui doit être</p>
<p class="description"><p>utilisée pour récupérer l'objet Registre</p></p>
<ul class="tags">
<li><span class="field">access:</span> public</li>
</ul>
<div class="method-signature">
static <span class="method-result">void</span>
<span class="method-name">
getInstance
</span>
()
</div>
</div>
<a name="methoddetruire" id="detruire"><!-- --></a>
<div class="oddrow">
<div class="method-header">
<span class="method-title">detruire</span> (line <span class="line-number"><a href="../__filesource/fsource_Framework__Registre.php.html#a77">77</a></span>)
</div>
<!-- ========== Info from phpDoc block ========= -->
<p class="short-description">Détruit l'objet associé à l'intitulé, n'a pas d'effet si il n'y a pas d'objet associé</p>
<ul class="tags">
<li><span class="field">access:</span> public</li>
</ul>
<div class="method-signature">
<span class="method-result">void</span>
<span class="method-name">
detruire
</span>
(<span class="var-type"></span>&nbsp;<span class="var-name">$intitule</span>)
</div>
<ul class="parameters">
<li>
<span class="var-type"></span>
<span class="var-name">$intitule</span> </li>
</ul>
</div>
<a name="methodexiste" id="existe"><!-- --></a>
<div class="evenrow">
<div class="method-header">
<span class="method-title">existe</span> (line <span class="line-number"><a href="../__filesource/fsource_Framework__Registre.php.html#a87">87</a></span>)
</div>
<!-- ========== Info from phpDoc block ========= -->
<p class="short-description">Teste si un objet est présent sous un intitulé donné</p>
<ul class="tags">
<li><span class="field">return:</span> true si un objet associé à cet intitulé est présent, false sinon</li>
<li><span class="field">access:</span> public</li>
</ul>
<div class="method-signature">
<span class="method-result">boolean</span>
<span class="method-name">
existe
</span>
(<span class="var-type"></span>&nbsp;<span class="var-name">$intitule</span>)
</div>
<ul class="parameters">
<li>
<span class="var-type"></span>
<span class="var-name">$intitule</span> </li>
</ul>
</div>
<a name="methodget" id="get"><!-- --></a>
<div class="oddrow">
<div class="method-header">
<span class="method-title">get</span> (line <span class="line-number"><a href="../__filesource/fsource_Framework__Registre.php.html#a67">67</a></span>)
</div>
<!-- ========== Info from phpDoc block ========= -->
<p class="short-description">Renvoie l'objet associé à l'intitulé donné en paramètre</p>
<ul class="tags">
<li><span class="field">return:</span> l'objet associé à l'intitulé ou null s'il n'est pas présent</li>
<li><span class="field">access:</span> public</li>
</ul>
<div class="method-signature">
<span class="method-result">mixed</span>
<span class="method-name">
get
</span>
(<span class="var-type"></span>&nbsp;<span class="var-name">$intitule</span>)
</div>
<ul class="parameters">
<li>
<span class="var-type"></span>
<span class="var-name">$intitule</span> </li>
</ul>
</div>
<a name="methodset" id="set"><!-- --></a>
<div class="evenrow">
<div class="method-header">
<span class="method-title">set</span> (line <span class="line-number"><a href="../__filesource/fsource_Framework__Registre.php.html#a53">53</a></span>)
</div>
<!-- ========== Info from phpDoc block ========= -->
<p class="short-description">Ajoute un objet au tableau selon un intitulé donné</p>
<ul class="tags">
<li><span class="field">access:</span> public</li>
</ul>
<div class="method-signature">
<span class="method-result">void</span>
<span class="method-name">
set
</span>
(<span class="var-type">string</span>&nbsp;<span class="var-name">$intitule</span>, <span class="var-type">mixed</span>&nbsp;<span class="var-name">$objet</span>)
</div>
<ul class="parameters">
<li>
<span class="var-type">string</span>
<span class="var-name">$intitule</span><span class="var-description">: l'intitulé sous lequel l'objet sera conservé</span> </li>
<li>
<span class="var-type">mixed</span>
<span class="var-name">$objet</span><span class="var-description">: l'objet à conserver</span> </li>
</ul>
</div>
</div>
</div>
 
 
<p class="notes" id="credit">
Documentation generated on Thu, 04 Mar 2010 19:27:25 +0100 by <a href="http://www.phpdoc.org" target="_blank">phpDocumentor 1.4.3</a>
</p>
</div></body>
</html>
/tags/v0.3-aleaume/doc/HTMLframesConverter/Framework/Chronometre.html
New file
0,0 → 1,299
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<!-- template designed by Marco Von Ballmoos -->
<title>Docs For Class Chronometre</title>
<meta http-equiv='Content-Type' content='text/html; charset=UTF-8'/>
<link rel="stylesheet" href="../media/stylesheet.css" />
<script src="../media/lib/classTree.js"></script>
<script language="javascript" type="text/javascript">
var imgPlus = new Image();
var imgMinus = new Image();
imgPlus.src = "../media/images/plus.png";
imgMinus.src = "../media/images/minus.png";
function showNode(Node){
switch(navigator.family){
case 'nn4':
// Nav 4.x code fork...
var oTable = document.layers["span" + Node];
var oImg = document.layers["img" + Node];
break;
case 'ie4':
// IE 4/5 code fork...
var oTable = document.all["span" + Node];
var oImg = document.all["img" + Node];
break;
case 'gecko':
// Standards Compliant code fork...
var oTable = document.getElementById("span" + Node);
var oImg = document.getElementById("img" + Node);
break;
}
oImg.src = imgMinus.src;
oTable.style.display = "block";
}
function hideNode(Node){
switch(navigator.family){
case 'nn4':
// Nav 4.x code fork...
var oTable = document.layers["span" + Node];
var oImg = document.layers["img" + Node];
break;
case 'ie4':
// IE 4/5 code fork...
var oTable = document.all["span" + Node];
var oImg = document.all["img" + Node];
break;
case 'gecko':
// Standards Compliant code fork...
var oTable = document.getElementById("span" + Node);
var oImg = document.getElementById("img" + Node);
break;
}
oImg.src = imgPlus.src;
oTable.style.display = "none";
}
function nodeIsVisible(Node){
switch(navigator.family){
case 'nn4':
// Nav 4.x code fork...
var oTable = document.layers["span" + Node];
break;
case 'ie4':
// IE 4/5 code fork...
var oTable = document.all["span" + Node];
break;
case 'gecko':
// Standards Compliant code fork...
var oTable = document.getElementById("span" + Node);
break;
}
return (oTable && oTable.style.display == "block");
}
function toggleNodeVisibility(Node){
if (nodeIsVisible(Node)){
hideNode(Node);
}else{
showNode(Node);
}
}
</script>
</head>
<body>
<div class="page-body">
<h2 class="class-name">Class Chronometre</h2>
 
<a name="sec-description"></a>
<div class="info-box">
<div class="info-box-title">Description</div>
<div class="nav-bar">
<span class="disabled">Description</span> |
<a href="#sec-method-summary">Methods</a> (<a href="#sec-methods">details</a>)
</div>
<div class="info-box-body">
<!-- ========== Info from phpDoc block ========= -->
<p class="short-description">Classe Chronometre() - Permet de stocker et d'afficher les temps d'éxécution de script.</p>
<p class="description"><p>Cette classe permet de réaliser un ensemble de mesure de temps prises à différents endroits d'un script. Ces mesures peuvent ensuite être affichées au sein d'un tableau XHTML.</p><p>PHP Version 5</p></p>
<ul class="tags">
<li><span class="field">author:</span> Jean-Pascal MILCENT &lt;<a href="mailto:jpm@tela-botanica.org">jpm@tela-botanica.org</a>&gt;</li>
<li><span class="field">version:</span> Release: &lt;package_version&gt;</li>
<li><span class="field">copyright:</span> 2009 Tela-Botanica</li>
<li><span class="field">link:</span> /doc/framework/</li>
<li><span class="field">license:</span> <a href="http://www.cecill.info/licences/Licence_CeCILL_V2-fr.txt">Licence CECILL</a></li>
</ul>
<p class="notes">
Located in <a class="field" href="_Chronometre.php.html">/Chronometre.php</a> (line <span class="field"><a href="../__filesource/fsource_Framework__Chronometre.php.html#a23">23</a></span>)
</p>
<pre></pre>
</div>
</div>
 
 
 
 
<a name="sec-method-summary"></a>
<div class="info-box">
<div class="info-box-title">Method Summary</span></div>
<div class="nav-bar">
<a href="#sec-description">Description</a> |
<span class="disabled">Methods</span> (<a href="#sec-methods">details</a>)
</div>
<div class="info-box-body">
<div class="method-summary">
<div class="method-definition">
<span class="method-result">Chronometre</span>
<a href="#__construct" title="details" class="method-name">__construct</a>
()
</div>
<div class="method-definition">
<span class="method-result">string</span>
<a href="#afficherChrono" title="details" class="method-name">afficherChrono</a>
([<span class="var-type">int</span>&nbsp;<span class="var-name">$indentation_origine</span> = <span class="var-default">8</span>], [<span class="var-type">int</span>&nbsp;<span class="var-name">$indentation</span> = <span class="var-default">4</span>])
</div>
<div class="method-definition">
<span class="method-result">int</span>
<a href="#getTemps" title="details" class="method-name">getTemps</a>
([<span class="var-type">string</span>&nbsp;<span class="var-name">$cle</span> = <span class="var-default">null</span>])
</div>
<div class="method-definition">
<span class="method-result">null</span>
<a href="#setTemps" title="details" class="method-name">setTemps</a>
([<span class="var-type">array()</span>&nbsp;<span class="var-name">$moment</span> = <span class="var-default">array ()</span>])
</div>
</div>
</div>
</div>
 
<a name="sec-methods"></a>
<div class="info-box">
<div class="info-box-title">Methods</div>
<div class="nav-bar">
<a href="#sec-description">Description</a> |
<a href="#sec-method-summary">Methods</a> (<span class="disabled">details</span>)
</div>
<div class="info-box-body">
<A NAME='method_detail'></A>
<a name="method__construct" id="__construct"><!-- --></a>
<div class="evenrow">
<div class="method-header">
<span class="method-title">Constructor __construct</span> (line <span class="line-number"><a href="../__filesource/fsource_Framework__Chronometre.php.html#a28">28</a></span>)
</div>
<!-- ========== Info from phpDoc block ========= -->
<p class="short-description">Constructeur : *</p>
<ul class="tags">
<li><span class="field">access:</span> public</li>
</ul>
<div class="method-signature">
<span class="method-result">Chronometre</span>
<span class="method-name">
__construct
</span>
()
</div>
</div>
<a name="methodafficherChrono" id="afficherChrono"><!-- --></a>
<div class="oddrow">
<div class="method-header">
<span class="method-title">afficherChrono</span> (line <span class="line-number"><a href="../__filesource/fsource_Framework__Chronometre.php.html#a82">82</a></span>)
</div>
<!-- ========== Info from phpDoc block ========= -->
<p class="short-description">Méthode afficherChrono() - Permet d'afficher les temps d'éxécution de différentes parties d'un script.</p>
<p class="description"><p>Cette fonction permet d'afficher un ensemble de mesure de temps prises à différents endroits d'un script. Ces mesures sont affichées au sein d'un tableau XHTML dont on peut controler l'indentation des balises. Pour un site en production, il suffit d'ajouter un style #chrono {display:none;} dans la css. De cette façon, le tableau ne s'affichera pas. Le webmaster lui pourra rajouter sa propre feuille de style affichant le tableau. Le développeur initial de cette fonction est Loic d'Anterroches. Elle a été modifiée par Jean-Pascal Milcent. Elle utilise une variable gobale : $_CHRONO_</p></p>
<ul class="tags">
<li><span class="field">return:</span> la chaine XHTML de mesure des temps.</li>
<li><span class="field">author:</span> Jean-Pascal MILCENT &lt;<a href="mailto:jpm@tela-botanica.org">jpm@tela-botanica.org</a>&gt;</li>
<li><span class="field">author:</span> Loic d'Anterroches</li>
<li><span class="field">access:</span> public</li>
</ul>
<div class="method-signature">
<span class="method-result">string</span>
<span class="method-name">
afficherChrono
</span>
([<span class="var-type">int</span>&nbsp;<span class="var-name">$indentation_origine</span> = <span class="var-default">8</span>], [<span class="var-type">int</span>&nbsp;<span class="var-name">$indentation</span> = <span class="var-default">4</span>])
</div>
<ul class="parameters">
<li>
<span class="var-type">int</span>
<span class="var-name">$indentation_origine</span><span class="var-description">: l'indentation de base.</span> </li>
<li>
<span class="var-type">int</span>
<span class="var-name">$indentation</span><span class="var-description">: le pas d'indentation.</span> </li>
</ul>
</div>
<a name="methodgetTemps" id="getTemps"><!-- --></a>
<div class="evenrow">
<div class="method-header">
<span class="method-title">getTemps</span> (line <span class="line-number"><a href="../__filesource/fsource_Framework__Chronometre.php.html#a38">38</a></span>)
</div>
<!-- ========== Info from phpDoc block ========= -->
<p class="short-description">Accesseurs :</p>
<ul class="tags">
<li><span class="field">return:</span> le temps écoulé</li>
<li><span class="field">access:</span> public</li>
</ul>
<div class="method-signature">
<span class="method-result">int</span>
<span class="method-name">
getTemps
</span>
([<span class="var-type">string</span>&nbsp;<span class="var-name">$cle</span> = <span class="var-default">null</span>])
</div>
<ul class="parameters">
<li>
<span class="var-type">string</span>
<span class="var-name">$cle</span><span class="var-description">: la cle associée à un chronomètre particulier</span> </li>
</ul>
</div>
<a name="methodsetTemps" id="setTemps"><!-- --></a>
<div class="oddrow">
<div class="method-header">
<span class="method-title">setTemps</span> (line <span class="line-number"><a href="../__filesource/fsource_Framework__Chronometre.php.html#a54">54</a></span>)
</div>
<!-- ========== Info from phpDoc block ========= -->
<p class="short-description">Setteur pour la variable temps</p>
<ul class="tags">
<li><span class="field">access:</span> public</li>
</ul>
<div class="method-signature">
<span class="method-result">null</span>
<span class="method-name">
setTemps
</span>
([<span class="var-type">array()</span>&nbsp;<span class="var-name">$moment</span> = <span class="var-default">array ()</span>])
</div>
<ul class="parameters">
<li>
<span class="var-type">array()</span>
<span class="var-name">$moment</span><span class="var-description">: ajoute des points de chronométrage au tableau _temps</span> </li>
</ul>
</div>
</div>
</div>
 
 
<p class="notes" id="credit">
Documentation generated on Thu, 04 Mar 2010 19:27:11 +0100 by <a href="http://www.phpdoc.org" target="_blank">phpDocumentor 1.4.3</a>
</p>
</div></body>
</html>
/tags/v0.3-aleaume/doc/HTMLframesConverter/Framework/Debug.html
New file
0,0 → 1,334
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<!-- template designed by Marco Von Ballmoos -->
<title>Docs For Class Debug</title>
<meta http-equiv='Content-Type' content='text/html; charset=UTF-8'/>
<link rel="stylesheet" href="../media/stylesheet.css" />
<script src="../media/lib/classTree.js"></script>
<script language="javascript" type="text/javascript">
var imgPlus = new Image();
var imgMinus = new Image();
imgPlus.src = "../media/images/plus.png";
imgMinus.src = "../media/images/minus.png";
function showNode(Node){
switch(navigator.family){
case 'nn4':
// Nav 4.x code fork...
var oTable = document.layers["span" + Node];
var oImg = document.layers["img" + Node];
break;
case 'ie4':
// IE 4/5 code fork...
var oTable = document.all["span" + Node];
var oImg = document.all["img" + Node];
break;
case 'gecko':
// Standards Compliant code fork...
var oTable = document.getElementById("span" + Node);
var oImg = document.getElementById("img" + Node);
break;
}
oImg.src = imgMinus.src;
oTable.style.display = "block";
}
function hideNode(Node){
switch(navigator.family){
case 'nn4':
// Nav 4.x code fork...
var oTable = document.layers["span" + Node];
var oImg = document.layers["img" + Node];
break;
case 'ie4':
// IE 4/5 code fork...
var oTable = document.all["span" + Node];
var oImg = document.all["img" + Node];
break;
case 'gecko':
// Standards Compliant code fork...
var oTable = document.getElementById("span" + Node);
var oImg = document.getElementById("img" + Node);
break;
}
oImg.src = imgPlus.src;
oTable.style.display = "none";
}
function nodeIsVisible(Node){
switch(navigator.family){
case 'nn4':
// Nav 4.x code fork...
var oTable = document.layers["span" + Node];
break;
case 'ie4':
// IE 4/5 code fork...
var oTable = document.all["span" + Node];
break;
case 'gecko':
// Standards Compliant code fork...
var oTable = document.getElementById("span" + Node);
break;
}
return (oTable && oTable.style.display == "block");
}
function toggleNodeVisibility(Node){
if (nodeIsVisible(Node)){
hideNode(Node);
}else{
showNode(Node);
}
}
</script>
</head>
<body>
<div class="page-body">
<h2 class="class-name">Class Debug</h2>
 
<a name="sec-description"></a>
<div class="info-box">
<div class="info-box-title">Description</div>
<div class="nav-bar">
<span class="disabled">Description</span> |
<a href="#sec-var-summary">Vars</a> (<a href="#sec-vars">details</a>)
| <a href="#sec-method-summary">Methods</a> (<a href="#sec-methods">details</a>)
</div>
<div class="info-box-body">
<!-- ========== Info from phpDoc block ========= -->
<p class="short-description">Classe fournissant des fonctions de débogage équivalante à var_dump et print_r.</p>
<p class="description"><p>L'affichage et l'utilisation de ces fonctions sont améliorés via cette classe. Cette classe est inspirée de la classe Zend_Debug.</p><p>PHP version 5</p></p>
<ul class="tags">
<li><span class="field">author:</span> Jean-Pascal MILCENT &lt;<a href="mailto:jpm@tela-botanica.org">jpm@tela-botanica.org</a>&gt;</li>
<li><span class="field">version:</span> $$Id: Debug.php 153 2010-03-04 10:48:32Z jpm $$</li>
<li><span class="field">copyright:</span> 1999-2009 Tela Botanica (accueil@tela-botanica.org)</li>
<li><span class="field">license:</span> GPL</li>
<li><span class="field">license:</span> CECILL</li>
</ul>
<p class="notes">
Located in <a class="field" href="_Debug.php.html">/Debug.php</a> (line <span class="field"><a href="../__filesource/fsource_Framework__Debug.php.html#a20">20</a></span>)
</p>
<pre></pre>
</div>
</div>
 
 
 
<a name="sec-var-summary"></a>
<div class="info-box">
<div class="info-box-title">Variable Summary</span></div>
<div class="nav-bar">
<a href="#sec-description">Description</a> |
<span class="disabled">Vars</span> (<a href="#sec-vars">details</a>)
|
<a href="#sec-method-summary">Methods</a> (<a href="#sec-methods">details</a>)
</div>
<div class="info-box-body">
<div class="var-summary">
<div class="var-title">
static <span class="var-type">mixed</span>
<a href="#$mode" title="details" class="var-name">$mode</a>
</div>
</div>
</div>
</div>
 
<a name="sec-method-summary"></a>
<div class="info-box">
<div class="info-box-title">Method Summary</span></div>
<div class="nav-bar">
<a href="#sec-description">Description</a> |
<a href="#sec-var-summary">Vars</a> (<a href="#sec-vars">details</a>)
|
<span class="disabled">Methods</span> (<a href="#sec-methods">details</a>)
</div>
<div class="info-box-body">
<div class="method-summary">
<div class="method-definition">
static <span class="method-result">string</span>
<a href="#dump" title="details" class="method-name">dump</a>
(<span class="var-type">mixed</span>&nbsp;<span class="var-name">$variable</span>, [<span class="var-type">string</span>&nbsp;<span class="var-name">$mot_cle</span> = <span class="var-default">null</span>], [<span class="var-type">boolean</span>&nbsp;<span class="var-name">$echo</span> = <span class="var-default">true</span>])
</div>
<div class="method-definition">
static <span class="method-result">string</span>
<a href="#getMode" title="details" class="method-name">getMode</a>
()
</div>
<div class="method-definition">
static <span class="method-result">string</span>
<a href="#printr" title="details" class="method-name">printr</a>
(<span class="var-type">mixed</span>&nbsp;<span class="var-name">$variable</span>, [<span class="var-type">string</span>&nbsp;<span class="var-name">$mot_cle</span> = <span class="var-default">null</span>], [<span class="var-type">boolean</span>&nbsp;<span class="var-name">$echo</span> = <span class="var-default">true</span>])
</div>
</div>
</div>
</div>
 
<a name="sec-vars"></a>
<div class="info-box">
<div class="info-box-title">Variables</div>
<div class="nav-bar">
<a href="#sec-description">Description</a> |
<a href="#sec-var-summary">Vars</a> (<span class="disabled">details</span>)
|
<a href="#sec-method-summary">Methods</a> (<a href="#sec-methods">details</a>)
</div>
<div class="info-box-body">
<a name="var$mode" id="$mode"><!-- --></A>
<div class="evenrow">
 
<div class="var-header">
<span class="var-title">
static <span class="var-type">mixed</span>
<span class="var-name">$mode</span>
= <span class="var-default"> null</span> (line <span class="line-number"><a href="../__filesource/fsource_Framework__Debug.php.html#a25">25</a></span>)
</span>
</div>
 
<!-- ========== Info from phpDoc block ========= -->
<p class="short-description">mode de php (cli ou sapi)</p>
<ul class="tags">
<li><span class="field">access:</span> protected</li>
</ul>
 
</div>
 
</div>
</div>
<a name="sec-methods"></a>
<div class="info-box">
<div class="info-box-title">Methods</div>
<div class="nav-bar">
<a href="#sec-description">Description</a> |
<a href="#sec-var-summary">Vars</a> (<a href="#sec-vars">details</a>)
<a href="#sec-method-summary">Methods</a> (<span class="disabled">details</span>)
</div>
<div class="info-box-body">
<A NAME='method_detail'></A>
<a name="methoddump" id="dump"><!-- --></a>
<div class="oddrow">
<div class="method-header">
<span class="method-title">static dump</span> (line <span class="line-number"><a href="../__filesource/fsource_Framework__Debug.php.html#a45">45</a></span>)
</div>
<!-- ========== Info from phpDoc block ========= -->
<p class="short-description">Equivalent de var_dump</p>
<ul class="tags">
<li><span class="field">return:</span> la chaine à afficher representant le dump ou null si echo</li>
<li><span class="field">access:</span> public</li>
</ul>
<div class="method-signature">
static <span class="method-result">string</span>
<span class="method-name">
dump
</span>
(<span class="var-type">mixed</span>&nbsp;<span class="var-name">$variable</span>, [<span class="var-type">string</span>&nbsp;<span class="var-name">$mot_cle</span> = <span class="var-default">null</span>], [<span class="var-type">boolean</span>&nbsp;<span class="var-name">$echo</span> = <span class="var-default">true</span>])
</div>
<ul class="parameters">
<li>
<span class="var-type">mixed</span>
<span class="var-name">$variable</span><span class="var-description">: la variable à dumper</span> </li>
<li>
<span class="var-type">string</span>
<span class="var-name">$mot_cle</span><span class="var-description">: le mot cle à associer à la variable</span> </li>
<li>
<span class="var-type">boolean</span>
<span class="var-name">$echo</span><span class="var-description">: si true on affiche le résultat, si false on ne renvoie que la chaine sans l'afficher</span> </li>
</ul>
</div>
<a name="methodgetMode" id="getMode"><!-- --></a>
<div class="evenrow">
<div class="method-header">
<span class="method-title">static getMode</span> (line <span class="line-number"><a href="../__filesource/fsource_Framework__Debug.php.html#a31">31</a></span>)
</div>
<!-- ========== Info from phpDoc block ========= -->
<p class="short-description">Accesseur pour le mode</p>
<ul class="tags">
<li><span class="field">return:</span> le mode de php</li>
<li><span class="field">access:</span> public</li>
</ul>
<div class="method-signature">
static <span class="method-result">string</span>
<span class="method-name">
getMode
</span>
()
</div>
</div>
<a name="methodprintr" id="printr"><!-- --></a>
<div class="oddrow">
<div class="method-header">
<span class="method-title">static printr</span> (line <span class="line-number"><a href="../__filesource/fsource_Framework__Debug.php.html#a65">65</a></span>)
</div>
<!-- ========== Info from phpDoc block ========= -->
<p class="short-description">Equivalent de print_r</p>
<ul class="tags">
<li><span class="field">return:</span> la chaine contenant la variable printée ou null si echo</li>
<li><span class="field">access:</span> public</li>
</ul>
<div class="method-signature">
static <span class="method-result">string</span>
<span class="method-name">
printr
</span>
(<span class="var-type">mixed</span>&nbsp;<span class="var-name">$variable</span>, [<span class="var-type">string</span>&nbsp;<span class="var-name">$mot_cle</span> = <span class="var-default">null</span>], [<span class="var-type">boolean</span>&nbsp;<span class="var-name">$echo</span> = <span class="var-default">true</span>])
</div>
<ul class="parameters">
<li>
<span class="var-type">mixed</span>
<span class="var-name">$variable</span><span class="var-description">: la variable à afficher</span> </li>
<li>
<span class="var-type">string</span>
<span class="var-name">$mot_cle</span><span class="var-description">: le mot cle à associer</span> </li>
<li>
<span class="var-type">boolean</span>
<span class="var-name">$echo</span><span class="var-description">: faire un echo ou non</span> </li>
</ul>
</div>
</div>
</div>
 
 
<p class="notes" id="credit">
Documentation generated on Thu, 04 Mar 2010 19:27:21 +0100 by <a href="http://www.phpdoc.org" target="_blank">phpDocumentor 1.4.3</a>
</p>
</div></body>
</html>
/tags/v0.3-aleaume/doc/HTMLframesConverter/Framework/_Url.php.html
New file
0,0 → 1,140
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<!-- template designed by Marco Von Ballmoos -->
<title>Docs for page Url.php</title>
<meta http-equiv='Content-Type' content='text/html; charset=UTF-8'/>
<link rel="stylesheet" href="../media/stylesheet.css" />
<script src="../media/lib/classTree.js"></script>
<script language="javascript" type="text/javascript">
var imgPlus = new Image();
var imgMinus = new Image();
imgPlus.src = "../media/images/plus.png";
imgMinus.src = "../media/images/minus.png";
function showNode(Node){
switch(navigator.family){
case 'nn4':
// Nav 4.x code fork...
var oTable = document.layers["span" + Node];
var oImg = document.layers["img" + Node];
break;
case 'ie4':
// IE 4/5 code fork...
var oTable = document.all["span" + Node];
var oImg = document.all["img" + Node];
break;
case 'gecko':
// Standards Compliant code fork...
var oTable = document.getElementById("span" + Node);
var oImg = document.getElementById("img" + Node);
break;
}
oImg.src = imgMinus.src;
oTable.style.display = "block";
}
function hideNode(Node){
switch(navigator.family){
case 'nn4':
// Nav 4.x code fork...
var oTable = document.layers["span" + Node];
var oImg = document.layers["img" + Node];
break;
case 'ie4':
// IE 4/5 code fork...
var oTable = document.all["span" + Node];
var oImg = document.all["img" + Node];
break;
case 'gecko':
// Standards Compliant code fork...
var oTable = document.getElementById("span" + Node);
var oImg = document.getElementById("img" + Node);
break;
}
oImg.src = imgPlus.src;
oTable.style.display = "none";
}
function nodeIsVisible(Node){
switch(navigator.family){
case 'nn4':
// Nav 4.x code fork...
var oTable = document.layers["span" + Node];
break;
case 'ie4':
// IE 4/5 code fork...
var oTable = document.all["span" + Node];
break;
case 'gecko':
// Standards Compliant code fork...
var oTable = document.getElementById("span" + Node);
break;
}
return (oTable && oTable.style.display == "block");
}
function toggleNodeVisibility(Node){
if (nodeIsVisible(Node)){
hideNode(Node);
}else{
showNode(Node);
}
}
</script>
</head>
<body>
<div class="page-body">
<h2 class="file-name">/Url.php</h2>
 
<a name="sec-description"></a>
<div class="info-box">
<div class="info-box-title">Description</div>
<div class="nav-bar">
<span class="disabled">Description</span> |
<a href="#sec-classes">Classes</a>
</div>
<div class="info-box-body">
<!-- ========== Info from phpDoc block ========= -->
<ul class="tags">
<li><span class="field">filesource:</span> <a href="../__filesource/fsource_Framework__Url.php.html">Source Code for this file</a></li>
</ul>
</div>
</div>
<a name="sec-classes"></a>
<div class="info-box">
<div class="info-box-title">Classes</div>
<div class="nav-bar">
<a href="#sec-description">Description</a> |
<span class="disabled">Classes</span>
</div>
<div class="info-box-body">
<table cellpadding="2" cellspacing="0" class="class-table">
<tr>
<th class="class-table-header">Class</th>
<th class="class-table-header">Description</th>
</tr>
<tr>
<td style="padding-right: 2em; vertical-align: top">
<a href="../Framework/Url.html">Url</a>
</td>
<td>
classe Url, gérant le découpage des paramètres, leurs modification etc...
</td>
</tr>
</table>
</div>
</div>
 
<p class="notes" id="credit">
Documentation generated on Thu, 04 Mar 2010 19:27:25 +0100 by <a href="http://www.phpdoc.org" target="_blank">phpDocumentor 1.4.3</a>
</p>
</div></body>
</html>
/tags/v0.3-aleaume/doc/HTMLframesConverter/Framework/_Application.php.html
New file
0,0 → 1,140
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<!-- template designed by Marco Von Ballmoos -->
<title>Docs for page Application.php</title>
<meta http-equiv='Content-Type' content='text/html; charset=UTF-8'/>
<link rel="stylesheet" href="../media/stylesheet.css" />
<script src="../media/lib/classTree.js"></script>
<script language="javascript" type="text/javascript">
var imgPlus = new Image();
var imgMinus = new Image();
imgPlus.src = "../media/images/plus.png";
imgMinus.src = "../media/images/minus.png";
function showNode(Node){
switch(navigator.family){
case 'nn4':
// Nav 4.x code fork...
var oTable = document.layers["span" + Node];
var oImg = document.layers["img" + Node];
break;
case 'ie4':
// IE 4/5 code fork...
var oTable = document.all["span" + Node];
var oImg = document.all["img" + Node];
break;
case 'gecko':
// Standards Compliant code fork...
var oTable = document.getElementById("span" + Node);
var oImg = document.getElementById("img" + Node);
break;
}
oImg.src = imgMinus.src;
oTable.style.display = "block";
}
function hideNode(Node){
switch(navigator.family){
case 'nn4':
// Nav 4.x code fork...
var oTable = document.layers["span" + Node];
var oImg = document.layers["img" + Node];
break;
case 'ie4':
// IE 4/5 code fork...
var oTable = document.all["span" + Node];
var oImg = document.all["img" + Node];
break;
case 'gecko':
// Standards Compliant code fork...
var oTable = document.getElementById("span" + Node);
var oImg = document.getElementById("img" + Node);
break;
}
oImg.src = imgPlus.src;
oTable.style.display = "none";
}
function nodeIsVisible(Node){
switch(navigator.family){
case 'nn4':
// Nav 4.x code fork...
var oTable = document.layers["span" + Node];
break;
case 'ie4':
// IE 4/5 code fork...
var oTable = document.all["span" + Node];
break;
case 'gecko':
// Standards Compliant code fork...
var oTable = document.getElementById("span" + Node);
break;
}
return (oTable && oTable.style.display == "block");
}
function toggleNodeVisibility(Node){
if (nodeIsVisible(Node)){
hideNode(Node);
}else{
showNode(Node);
}
}
</script>
</head>
<body>
<div class="page-body">
<h2 class="file-name">/Application.php</h2>
 
<a name="sec-description"></a>
<div class="info-box">
<div class="info-box-title">Description</div>
<div class="nav-bar">
<span class="disabled">Description</span> |
<a href="#sec-classes">Classes</a>
</div>
<div class="info-box-body">
<!-- ========== Info from phpDoc block ========= -->
<ul class="tags">
<li><span class="field">filesource:</span> <a href="../__filesource/fsource_Framework__Application.php.html">Source Code for this file</a></li>
</ul>
</div>
</div>
<a name="sec-classes"></a>
<div class="info-box">
<div class="info-box-title">Classes</div>
<div class="nav-bar">
<a href="#sec-description">Description</a> |
<span class="disabled">Classes</span>
</div>
<div class="info-box-body">
<table cellpadding="2" cellspacing="0" class="class-table">
<tr>
<th class="class-table-header">Class</th>
<th class="class-table-header">Description</th>
</tr>
<tr>
<td style="padding-right: 2em; vertical-align: top">
<a href="../Framework/Application.html">Application</a>
</td>
<td>
Classe fournissant des informations au Framework sur l'application.
</td>
</tr>
</table>
</div>
</div>
 
<p class="notes" id="credit">
Documentation generated on Thu, 04 Mar 2010 19:27:07 +0100 by <a href="http://www.phpdoc.org" target="_blank">phpDocumentor 1.4.3</a>
</p>
</div></body>
</html>
/tags/v0.3-aleaume/doc/HTMLframesConverter/Framework/_Modele.php.html
New file
0,0 → 1,140
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<!-- template designed by Marco Von Ballmoos -->
<title>Docs for page Modele.php</title>
<meta http-equiv='Content-Type' content='text/html; charset=UTF-8'/>
<link rel="stylesheet" href="../media/stylesheet.css" />
<script src="../media/lib/classTree.js"></script>
<script language="javascript" type="text/javascript">
var imgPlus = new Image();
var imgMinus = new Image();
imgPlus.src = "../media/images/plus.png";
imgMinus.src = "../media/images/minus.png";
function showNode(Node){
switch(navigator.family){
case 'nn4':
// Nav 4.x code fork...
var oTable = document.layers["span" + Node];
var oImg = document.layers["img" + Node];
break;
case 'ie4':
// IE 4/5 code fork...
var oTable = document.all["span" + Node];
var oImg = document.all["img" + Node];
break;
case 'gecko':
// Standards Compliant code fork...
var oTable = document.getElementById("span" + Node);
var oImg = document.getElementById("img" + Node);
break;
}
oImg.src = imgMinus.src;
oTable.style.display = "block";
}
function hideNode(Node){
switch(navigator.family){
case 'nn4':
// Nav 4.x code fork...
var oTable = document.layers["span" + Node];
var oImg = document.layers["img" + Node];
break;
case 'ie4':
// IE 4/5 code fork...
var oTable = document.all["span" + Node];
var oImg = document.all["img" + Node];
break;
case 'gecko':
// Standards Compliant code fork...
var oTable = document.getElementById("span" + Node);
var oImg = document.getElementById("img" + Node);
break;
}
oImg.src = imgPlus.src;
oTable.style.display = "none";
}
function nodeIsVisible(Node){
switch(navigator.family){
case 'nn4':
// Nav 4.x code fork...
var oTable = document.layers["span" + Node];
break;
case 'ie4':
// IE 4/5 code fork...
var oTable = document.all["span" + Node];
break;
case 'gecko':
// Standards Compliant code fork...
var oTable = document.getElementById("span" + Node);
break;
}
return (oTable && oTable.style.display == "block");
}
function toggleNodeVisibility(Node){
if (nodeIsVisible(Node)){
hideNode(Node);
}else{
showNode(Node);
}
}
</script>
</head>
<body>
<div class="page-body">
<h2 class="file-name">/Modele.php</h2>
 
<a name="sec-description"></a>
<div class="info-box">
<div class="info-box-title">Description</div>
<div class="nav-bar">
<span class="disabled">Description</span> |
<a href="#sec-classes">Classes</a>
</div>
<div class="info-box-body">
<!-- ========== Info from phpDoc block ========= -->
<ul class="tags">
<li><span class="field">filesource:</span> <a href="../__filesource/fsource_Framework__Modele.php.html">Source Code for this file</a></li>
</ul>
</div>
</div>
<a name="sec-classes"></a>
<div class="info-box">
<div class="info-box-title">Classes</div>
<div class="nav-bar">
<a href="#sec-description">Description</a> |
<span class="disabled">Classes</span>
</div>
<div class="info-box-body">
<table cellpadding="2" cellspacing="0" class="class-table">
<tr>
<th class="class-table-header">Class</th>
<th class="class-table-header">Description</th>
</tr>
<tr>
<td style="padding-right: 2em; vertical-align: top">
<a href="../Framework/Modele.html">Modele</a>
</td>
<td>
Classe modèle, donc d'accés au données, elle ne devrait pas être appelée de l'extérieur.
</td>
</tr>
</table>
</div>
</div>
 
<p class="notes" id="credit">
Documentation generated on Thu, 04 Mar 2010 19:27:23 +0100 by <a href="http://www.phpdoc.org" target="_blank">phpDocumentor 1.4.3</a>
</p>
</div></body>
</html>
/tags/v0.3-aleaume/doc/HTMLframesConverter/Framework/_Config.php.html
New file
0,0 → 1,140
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<!-- template designed by Marco Von Ballmoos -->
<title>Docs for page Config.php</title>
<meta http-equiv='Content-Type' content='text/html; charset=UTF-8'/>
<link rel="stylesheet" href="../media/stylesheet.css" />
<script src="../media/lib/classTree.js"></script>
<script language="javascript" type="text/javascript">
var imgPlus = new Image();
var imgMinus = new Image();
imgPlus.src = "../media/images/plus.png";
imgMinus.src = "../media/images/minus.png";
function showNode(Node){
switch(navigator.family){
case 'nn4':
// Nav 4.x code fork...
var oTable = document.layers["span" + Node];
var oImg = document.layers["img" + Node];
break;
case 'ie4':
// IE 4/5 code fork...
var oTable = document.all["span" + Node];
var oImg = document.all["img" + Node];
break;
case 'gecko':
// Standards Compliant code fork...
var oTable = document.getElementById("span" + Node);
var oImg = document.getElementById("img" + Node);
break;
}
oImg.src = imgMinus.src;
oTable.style.display = "block";
}
function hideNode(Node){
switch(navigator.family){
case 'nn4':
// Nav 4.x code fork...
var oTable = document.layers["span" + Node];
var oImg = document.layers["img" + Node];
break;
case 'ie4':
// IE 4/5 code fork...
var oTable = document.all["span" + Node];
var oImg = document.all["img" + Node];
break;
case 'gecko':
// Standards Compliant code fork...
var oTable = document.getElementById("span" + Node);
var oImg = document.getElementById("img" + Node);
break;
}
oImg.src = imgPlus.src;
oTable.style.display = "none";
}
function nodeIsVisible(Node){
switch(navigator.family){
case 'nn4':
// Nav 4.x code fork...
var oTable = document.layers["span" + Node];
break;
case 'ie4':
// IE 4/5 code fork...
var oTable = document.all["span" + Node];
break;
case 'gecko':
// Standards Compliant code fork...
var oTable = document.getElementById("span" + Node);
break;
}
return (oTable && oTable.style.display == "block");
}
function toggleNodeVisibility(Node){
if (nodeIsVisible(Node)){
hideNode(Node);
}else{
showNode(Node);
}
}
</script>
</head>
<body>
<div class="page-body">
<h2 class="file-name">/Config.php</h2>
 
<a name="sec-description"></a>
<div class="info-box">
<div class="info-box-title">Description</div>
<div class="nav-bar">
<span class="disabled">Description</span> |
<a href="#sec-classes">Classes</a>
</div>
<div class="info-box-body">
<!-- ========== Info from phpDoc block ========= -->
<ul class="tags">
<li><span class="field">filesource:</span> <a href="../__filesource/fsource_Framework__Config.php.html">Source Code for this file</a></li>
</ul>
</div>
</div>
<a name="sec-classes"></a>
<div class="info-box">
<div class="info-box-title">Classes</div>
<div class="nav-bar">
<a href="#sec-description">Description</a> |
<span class="disabled">Classes</span>
</div>
<div class="info-box-body">
<table cellpadding="2" cellspacing="0" class="class-table">
<tr>
<th class="class-table-header">Class</th>
<th class="class-table-header">Description</th>
</tr>
<tr>
<td style="padding-right: 2em; vertical-align: top">
<a href="../Framework/Config.html">Config</a>
</td>
<td>
Config permet de charger automatiquement les fichiers ini du Framework et de l'application.
</td>
</tr>
</table>
</div>
</div>
 
<p class="notes" id="credit">
Documentation generated on Thu, 04 Mar 2010 19:27:11 +0100 by <a href="http://www.phpdoc.org" target="_blank">phpDocumentor 1.4.3</a>
</p>
</div></body>
</html>
/tags/v0.3-aleaume/doc/HTMLframesConverter/Framework/_GestionnaireException.php.html
New file
0,0 → 1,140
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<!-- template designed by Marco Von Ballmoos -->
<title>Docs for page GestionnaireException.php</title>
<meta http-equiv='Content-Type' content='text/html; charset=UTF-8'/>
<link rel="stylesheet" href="../media/stylesheet.css" />
<script src="../media/lib/classTree.js"></script>
<script language="javascript" type="text/javascript">
var imgPlus = new Image();
var imgMinus = new Image();
imgPlus.src = "../media/images/plus.png";
imgMinus.src = "../media/images/minus.png";
function showNode(Node){
switch(navigator.family){
case 'nn4':
// Nav 4.x code fork...
var oTable = document.layers["span" + Node];
var oImg = document.layers["img" + Node];
break;
case 'ie4':
// IE 4/5 code fork...
var oTable = document.all["span" + Node];
var oImg = document.all["img" + Node];
break;
case 'gecko':
// Standards Compliant code fork...
var oTable = document.getElementById("span" + Node);
var oImg = document.getElementById("img" + Node);
break;
}
oImg.src = imgMinus.src;
oTable.style.display = "block";
}
function hideNode(Node){
switch(navigator.family){
case 'nn4':
// Nav 4.x code fork...
var oTable = document.layers["span" + Node];
var oImg = document.layers["img" + Node];
break;
case 'ie4':
// IE 4/5 code fork...
var oTable = document.all["span" + Node];
var oImg = document.all["img" + Node];
break;
case 'gecko':
// Standards Compliant code fork...
var oTable = document.getElementById("span" + Node);
var oImg = document.getElementById("img" + Node);
break;
}
oImg.src = imgPlus.src;
oTable.style.display = "none";
}
function nodeIsVisible(Node){
switch(navigator.family){
case 'nn4':
// Nav 4.x code fork...
var oTable = document.layers["span" + Node];
break;
case 'ie4':
// IE 4/5 code fork...
var oTable = document.all["span" + Node];
break;
case 'gecko':
// Standards Compliant code fork...
var oTable = document.getElementById("span" + Node);
break;
}
return (oTable && oTable.style.display == "block");
}
function toggleNodeVisibility(Node){
if (nodeIsVisible(Node)){
hideNode(Node);
}else{
showNode(Node);
}
}
</script>
</head>
<body>
<div class="page-body">
<h2 class="file-name">/GestionnaireException.php</h2>
 
<a name="sec-description"></a>
<div class="info-box">
<div class="info-box-title">Description</div>
<div class="nav-bar">
<span class="disabled">Description</span> |
<a href="#sec-classes">Classes</a>
</div>
<div class="info-box-body">
<!-- ========== Info from phpDoc block ========= -->
<ul class="tags">
<li><span class="field">filesource:</span> <a href="../__filesource/fsource_Framework__GestionnaireException.php.html">Source Code for this file</a></li>
</ul>
</div>
</div>
<a name="sec-classes"></a>
<div class="info-box">
<div class="info-box-title">Classes</div>
<div class="nav-bar">
<a href="#sec-description">Description</a> |
<span class="disabled">Classes</span>
</div>
<div class="info-box-body">
<table cellpadding="2" cellspacing="0" class="class-table">
<tr>
<th class="class-table-header">Class</th>
<th class="class-table-header">Description</th>
</tr>
<tr>
<td style="padding-right: 2em; vertical-align: top">
<a href="../Framework/GestionnaireException.html">GestionnaireException</a>
</td>
<td>
Classe de gestion des exceptions.
</td>
</tr>
</table>
</div>
</div>
 
<p class="notes" id="credit">
Documentation generated on Thu, 04 Mar 2010 19:27:21 +0100 by <a href="http://www.phpdoc.org" target="_blank">phpDocumentor 1.4.3</a>
</p>
</div></body>
</html>
/tags/v0.3-aleaume/doc/HTMLframesConverter/Framework/Controleur.html
New file
0,0 → 1,339
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<!-- template designed by Marco Von Ballmoos -->
<title>Docs For Class Controleur</title>
<meta http-equiv='Content-Type' content='text/html; charset=UTF-8'/>
<link rel="stylesheet" href="../media/stylesheet.css" />
<script src="../media/lib/classTree.js"></script>
<script language="javascript" type="text/javascript">
var imgPlus = new Image();
var imgMinus = new Image();
imgPlus.src = "../media/images/plus.png";
imgMinus.src = "../media/images/minus.png";
function showNode(Node){
switch(navigator.family){
case 'nn4':
// Nav 4.x code fork...
var oTable = document.layers["span" + Node];
var oImg = document.layers["img" + Node];
break;
case 'ie4':
// IE 4/5 code fork...
var oTable = document.all["span" + Node];
var oImg = document.all["img" + Node];
break;
case 'gecko':
// Standards Compliant code fork...
var oTable = document.getElementById("span" + Node);
var oImg = document.getElementById("img" + Node);
break;
}
oImg.src = imgMinus.src;
oTable.style.display = "block";
}
function hideNode(Node){
switch(navigator.family){
case 'nn4':
// Nav 4.x code fork...
var oTable = document.layers["span" + Node];
var oImg = document.layers["img" + Node];
break;
case 'ie4':
// IE 4/5 code fork...
var oTable = document.all["span" + Node];
var oImg = document.all["img" + Node];
break;
case 'gecko':
// Standards Compliant code fork...
var oTable = document.getElementById("span" + Node);
var oImg = document.getElementById("img" + Node);
break;
}
oImg.src = imgPlus.src;
oTable.style.display = "none";
}
function nodeIsVisible(Node){
switch(navigator.family){
case 'nn4':
// Nav 4.x code fork...
var oTable = document.layers["span" + Node];
break;
case 'ie4':
// IE 4/5 code fork...
var oTable = document.all["span" + Node];
break;
case 'gecko':
// Standards Compliant code fork...
var oTable = document.getElementById("span" + Node);
break;
}
return (oTable && oTable.style.display == "block");
}
function toggleNodeVisibility(Node){
if (nodeIsVisible(Node)){
hideNode(Node);
}else{
showNode(Node);
}
}
</script>
</head>
<body>
<div class="page-body">
<h2 class="class-name">Class Controleur</h2>
 
<a name="sec-description"></a>
<div class="info-box">
<div class="info-box-title">Description</div>
<div class="nav-bar">
<span class="disabled">Description</span> |
<a href="#sec-method-summary">Methods</a> (<a href="#sec-methods">details</a>)
</div>
<div class="info-box-body">
<!-- ========== Info from phpDoc block ========= -->
<p class="short-description">Classe Controleur, coeur d'une application, c'est normalement la seule classe d'une application qui devrait être appelée de l'extérieur.</p>
<p class="description"><p>Elle est abstraite donc doit obligatoirement être étendue.</p></p>
<ul class="tags">
<li><span class="field">author:</span> Jean-Pascal MILCENT &lt;<a href="mailto:jpm@tela-botanica.org">jpm@tela-botanica.org</a>&gt;</li>
<li><span class="field">author:</span> Aurélien PERONNET &lt;<a href="mailto:aurelien@tela-botanica.org">aurelien@tela-botanica.org</a>&gt;</li>
<li><span class="field">version:</span> SVN: $$Id: Controleur.php 158 2010-03-04 17:14:36Z jpm $$</li>
<li><span class="field">copyright:</span> 2009 Tela-Botanica</li>
<li><span class="field">link:</span> /doc/framework/</li>
<li><span class="field">abstract:</span> </li>
<li><span class="field">license:</span> <a href="http://www.gnu.org/licenses/gpl.html">Licence GNU-GPL</a></li>
<li><span class="field">license:</span> <a href="http://www.cecill.info/licences/Licence_CeCILL_V2-fr.txt">Licence CECILL</a></li>
</ul>
<p class="notes">
Located in <a class="field" href="_Controleur.php.html">/Controleur.php</a> (line <span class="field"><a href="../__filesource/fsource_Framework__Controleur.php.html#a19">19</a></span>)
</p>
<pre></pre>
</div>
</div>
 
 
 
 
<a name="sec-method-summary"></a>
<div class="info-box">
<div class="info-box-title">Method Summary</span></div>
<div class="nav-bar">
<a href="#sec-description">Description</a> |
<span class="disabled">Methods</span> (<a href="#sec-methods">details</a>)
</div>
<div class="info-box-body">
<div class="method-summary">
<div class="method-definition">
<span class="method-result">Controleur</span>
<a href="#__construct" title="details" class="method-name">__construct</a>
()
</div>
<div class="method-definition">
<span class="method-result">boolean</span>
<a href="#chargerModele" title="details" class="method-name">chargerModele</a>
(<span class="var-type">string</span>&nbsp;<span class="var-name">$nom_modele</span>)
</div>
<div class="method-definition">
<span class="method-result">boolean</span>
<a href="#chargerVue" title="details" class="method-name">chargerVue</a>
(<span class="var-type">String</span>&nbsp;<span class="var-name">$nom_squelette</span>, [<span class="var-type">Array</span>&nbsp;<span class="var-name">$donnees</span> = <span class="var-default">array()</span>])
</div>
<div class="method-definition">
<span class="method-result">mixed</span>
<a href="#getModele" title="details" class="method-name">getModele</a>
(<span class="var-type">string</span>&nbsp;<span class="var-name">$nom_modele</span>)
</div>
<div class="method-definition">
<span class="method-result">boolean</span>
<a href="#getVue" title="details" class="method-name">getVue</a>
(<span class="var-type">String</span>&nbsp;<span class="var-name">$nom_squelette</span>, [<span class="var-type">Array</span>&nbsp;<span class="var-name">$donnees</span> = <span class="var-default">array()</span>])
</div>
</div>
</div>
</div>
 
<a name="sec-methods"></a>
<div class="info-box">
<div class="info-box-title">Methods</div>
<div class="nav-bar">
<a href="#sec-description">Description</a> |
<a href="#sec-method-summary">Methods</a> (<span class="disabled">details</span>)
</div>
<div class="info-box-body">
<A NAME='method_detail'></A>
<a name="method__construct" id="__construct"><!-- --></a>
<div class="oddrow">
<div class="method-header">
<span class="method-title">Constructor __construct</span> (line <span class="line-number"><a href="../__filesource/fsource_Framework__Controleur.php.html#a28">28</a></span>)
</div>
<!-- ========== Info from phpDoc block ========= -->
<p class="short-description">Constructeur par défaut</p>
<ul class="tags">
<li><span class="field">access:</span> public</li>
</ul>
<div class="method-signature">
<span class="method-result">Controleur</span>
<span class="method-name">
__construct
</span>
()
</div>
</div>
<a name="methodchargerModele" id="chargerModele"><!-- --></a>
<div class="evenrow">
<div class="method-header">
<span class="method-title">chargerModele</span> (line <span class="line-number"><a href="../__filesource/fsource_Framework__Controleur.php.html#a47">47</a></span>)
</div>
<!-- ========== Info from phpDoc block ========= -->
<p class="short-description">Charge un modele donné et le rend disponible sous la forme $this-&gt;nom_modele</p>
<ul class="tags">
<li><span class="field">return:</span> false si le chargement a échoué, sinon true.</li>
<li><span class="field">access:</span> protected</li>
</ul>
<div class="method-signature">
<span class="method-result">boolean</span>
<span class="method-name">
chargerModele
</span>
(<span class="var-type">string</span>&nbsp;<span class="var-name">$nom_modele</span>)
</div>
<ul class="parameters">
<li>
<span class="var-type">string</span>
<span class="var-name">$nom_modele</span><span class="var-description">: le nom du modèle à charger</span> </li>
</ul>
</div>
<a name="methodchargerVue" id="chargerVue"><!-- --></a>
<div class="oddrow">
<div class="method-header">
<span class="method-title">chargerVue</span> (line <span class="line-number"><a href="../__filesource/fsource_Framework__Controleur.php.html#a102">102</a></span>)
</div>
<!-- ========== Info from phpDoc block ========= -->
<p class="short-description">Fonction prenant en paramètre le nom d'un squelette et un tableau associatif de données, en extrait les variables, charge le squelette et crée une variable de classe portant le nom du squelette contenant les deux combinés.</p>
<ul class="tags">
<li><span class="field">return:</span> false si la vue n'existe pas, sinon true.</li>
<li><span class="field">access:</span> protected</li>
</ul>
<div class="method-signature">
<span class="method-result">boolean</span>
<span class="method-name">
chargerVue
</span>
(<span class="var-type">String</span>&nbsp;<span class="var-name">$nom_squelette</span>, [<span class="var-type">Array</span>&nbsp;<span class="var-name">$donnees</span> = <span class="var-default">array()</span>])
</div>
<ul class="parameters">
<li>
<span class="var-type">String</span>
<span class="var-name">$nom_squelette</span><span class="var-description">: le nom du squelette</span> </li>
<li>
<span class="var-type">Array</span>
<span class="var-name">$donnees</span><span class="var-description">: un tableau associatif contenant les variables a injecter dans la vue</span> </li>
</ul>
</div>
<a name="methodgetModele" id="getModele"><!-- --></a>
<div class="evenrow">
<div class="method-header">
<span class="method-title">getModele</span> (line <span class="line-number"><a href="../__filesource/fsource_Framework__Controleur.php.html#a65">65</a></span>)
</div>
<!-- ========== Info from phpDoc block ========= -->
<p class="short-description">Retourne un modele donné</p>
<ul class="tags">
<li><span class="field">return:</span> false si le chargement a échoué, sinon l'objet du modèle demandé.</li>
<li><span class="field">access:</span> protected</li>
</ul>
<div class="method-signature">
<span class="method-result">mixed</span>
<span class="method-name">
getModele
</span>
(<span class="var-type">string</span>&nbsp;<span class="var-name">$nom_modele</span>)
</div>
<ul class="parameters">
<li>
<span class="var-type">string</span>
<span class="var-name">$nom_modele</span><span class="var-description">: le nom du modèle à charger</span> </li>
</ul>
</div>
<a name="methodgetVue" id="getVue"><!-- --></a>
<div class="oddrow">
<div class="method-header">
<span class="method-title">getVue</span> (line <span class="line-number"><a href="../__filesource/fsource_Framework__Controleur.php.html#a86">86</a></span>)
</div>
<!-- ========== Info from phpDoc block ========= -->
<p class="short-description">Fonction prenant en paramètre le nom d'un squelette et un tableau associatif de données, en extrait les variables, charge le squelette et retourne le résultat des deux combinés.</p>
<ul class="tags">
<li><span class="field">return:</span> false si la vue n'existe pas, sinon la chaine résultat.</li>
<li><span class="field">access:</span> protected</li>
</ul>
<div class="method-signature">
<span class="method-result">boolean</span>
<span class="method-name">
getVue
</span>
(<span class="var-type">String</span>&nbsp;<span class="var-name">$nom_squelette</span>, [<span class="var-type">Array</span>&nbsp;<span class="var-name">$donnees</span> = <span class="var-default">array()</span>])
</div>
<ul class="parameters">
<li>
<span class="var-type">String</span>
<span class="var-name">$nom_squelette</span><span class="var-description">: le nom du squelette</span> </li>
<li>
<span class="var-type">Array</span>
<span class="var-name">$donnees</span><span class="var-description">: un tableau associatif contenant les variables a injecter dans la vue</span> </li>
</ul>
</div>
</div>
</div>
 
 
<p class="notes" id="credit">
Documentation generated on Thu, 04 Mar 2010 19:27:20 +0100 by <a href="http://www.phpdoc.org" target="_blank">phpDocumentor 1.4.3</a>
</p>
</div></body>
</html>
/tags/v0.3-aleaume/doc/HTMLframesConverter/Framework/Url.html
New file
0,0 → 1,1404
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<!-- template designed by Marco Von Ballmoos -->
<title>Docs For Class Url</title>
<meta http-equiv='Content-Type' content='text/html; charset=UTF-8'/>
<link rel="stylesheet" href="../media/stylesheet.css" />
<script src="../media/lib/classTree.js"></script>
<script language="javascript" type="text/javascript">
var imgPlus = new Image();
var imgMinus = new Image();
imgPlus.src = "../media/images/plus.png";
imgMinus.src = "../media/images/minus.png";
function showNode(Node){
switch(navigator.family){
case 'nn4':
// Nav 4.x code fork...
var oTable = document.layers["span" + Node];
var oImg = document.layers["img" + Node];
break;
case 'ie4':
// IE 4/5 code fork...
var oTable = document.all["span" + Node];
var oImg = document.all["img" + Node];
break;
case 'gecko':
// Standards Compliant code fork...
var oTable = document.getElementById("span" + Node);
var oImg = document.getElementById("img" + Node);
break;
}
oImg.src = imgMinus.src;
oTable.style.display = "block";
}
function hideNode(Node){
switch(navigator.family){
case 'nn4':
// Nav 4.x code fork...
var oTable = document.layers["span" + Node];
var oImg = document.layers["img" + Node];
break;
case 'ie4':
// IE 4/5 code fork...
var oTable = document.all["span" + Node];
var oImg = document.all["img" + Node];
break;
case 'gecko':
// Standards Compliant code fork...
var oTable = document.getElementById("span" + Node);
var oImg = document.getElementById("img" + Node);
break;
}
oImg.src = imgPlus.src;
oTable.style.display = "none";
}
function nodeIsVisible(Node){
switch(navigator.family){
case 'nn4':
// Nav 4.x code fork...
var oTable = document.layers["span" + Node];
break;
case 'ie4':
// IE 4/5 code fork...
var oTable = document.all["span" + Node];
break;
case 'gecko':
// Standards Compliant code fork...
var oTable = document.getElementById("span" + Node);
break;
}
return (oTable && oTable.style.display == "block");
}
function toggleNodeVisibility(Node){
if (nodeIsVisible(Node)){
hideNode(Node);
}else{
showNode(Node);
}
}
</script>
</head>
<body>
<div class="page-body">
<h2 class="class-name">Class Url</h2>
 
<a name="sec-description"></a>
<div class="info-box">
<div class="info-box-title">Description</div>
<div class="nav-bar">
<span class="disabled">Description</span> |
<a href="#sec-method-summary">Methods</a> (<a href="#sec-methods">details</a>)
<a href="#sec-const-summary">Constants</a> (<a href="#sec-consts">details</a>)
</div>
<div class="info-box-body">
<!-- ========== Info from phpDoc block ========= -->
<p class="short-description">classe Url, gérant le découpage des paramètres, leurs modification etc...</p>
<p class="description"><p>Traduction et conversion d'une classe (NET_Url2) issue de Pear</p></p>
<ul class="tags">
<li><span class="field">author:</span> Jean-Pascal MILCENT &lt;<a href="mailto:jpm@tela-botanica.org">jpm@tela-botanica.org</a>&gt;</li>
<li><span class="field">author:</span> Christian Schmidt &lt;<a href="mailto:schmidt@php.net">schmidt@php.net</a>&gt;</li>
<li><span class="field">author:</span> Aurélien PERONNET &lt;<a href="mailto:aurelien@tela-botanica.org">aurelien@tela-botanica.org</a>&gt;</li>
<li><span class="field">version:</span> SVN: $Id: Url.php 150 2010-03-03 15:49:06Z jpm $</li>
<li><span class="field">copyright:</span> 2009 Tela-Botanica</li>
<li><span class="field">link:</span> /doc/framework/</li>
<li><span class="field">license:</span> <a href="http://www.gnu.org/licenses/gpl.html">Licence GNU-GPL</a></li>
<li><span class="field">license:</span> <a href="http://www.cecill.info/licences/Licence_CeCILL_V2-fr.txt">Licence CECILL</a></li>
</ul>
<p class="notes">
Located in <a class="field" href="_Url.php.html">/Url.php</a> (line <span class="field"><a href="../__filesource/fsource_Framework__Url.php.html#a21">21</a></span>)
</p>
<pre></pre>
</div>
</div>
 
 
<a name="sec-const-summary"></a>
<div class="info-box">
<div class="info-box-title">Class Constant Summary</span></div>
<div class="nav-bar">
<a href="#sec-description">Description</a> |
<span class="disabled">Constants</span> (<a href="#sec-consts">details</a>)
|
<a href="#sec-method-summary">Methods</a> (<a href="#sec-methods">details</a>)
</div>
<div class="info-box-body">
<div class="const-summary">
<div class="const-title">
<img src="../media/images/Constant.png" alt=" " />
<a href="#OPTION_ENCODER_CLES" title="details" class="const-name">OPTION_ENCODER_CLES</a> = <span class="var-type"> 'encode_keys'</span>
 
</div>
<div class="const-title">
<img src="../media/images/Constant.png" alt=" " />
<a href="#OPTION_SEPARATEUR_ENTREE" title="details" class="const-name">OPTION_SEPARATEUR_ENTREE</a> = <span class="var-type"> 'input_separator'</span>
 
</div>
<div class="const-title">
<img src="../media/images/Constant.png" alt=" " />
<a href="#OPTION_SEPARATEUR_SORTIE" title="details" class="const-name">OPTION_SEPARATEUR_SORTIE</a> = <span class="var-type"> 'output_separator'</span>
 
</div>
<div class="const-title">
<img src="../media/images/Constant.png" alt=" " />
<a href="#OPTION_STRICTE" title="details" class="const-name">OPTION_STRICTE</a> = <span class="var-type"> 'strict'</span>
 
</div>
<div class="const-title">
<img src="../media/images/Constant.png" alt=" " />
<a href="#OPTION_UTILISER_CROCHETS" title="details" class="const-name">OPTION_UTILISER_CROCHETS</a> = <span class="var-type"> 'use_brackets'</span>
 
</div>
</div>
</div>
</div>
 
 
<a name="sec-method-summary"></a>
<div class="info-box">
<div class="info-box-title">Method Summary</span></div>
<div class="nav-bar">
<a href="#sec-description">Description</a> |
<a href="#sec-const-summary">Constants</a> (<a href="#sec-consts">details</a>)
<span class="disabled">Methods</span> (<a href="#sec-methods">details</a>)
</div>
<div class="info-box-body">
<div class="method-summary">
<div class="method-definition">
static <span class="method-result">string</span>
<a href="#getCanonique" title="details" class="method-name">getCanonique</a>
()
</div>
<div class="method-definition">
static <span class="method-result"><a href="../Framework/Url.html">Url</a></span>
<a href="#getDemande" title="details" class="method-name">getDemande</a>
()
</div>
<div class="method-definition">
static <span class="method-result">string</span>
<a href="#getURLDemande" title="details" class="method-name">getURLDemande</a>
()
</div>
<div class="method-definition">
<span class="method-result">Url</span>
<a href="#__construct" title="details" class="method-name">__construct</a>
(<span class="var-type">string</span>&nbsp;<span class="var-name">$url</span>, [<span class="var-type">array</span>&nbsp;<span class="var-name">$options</span> = <span class="var-default">null</span>])
</div>
<div class="method-definition">
<span class="method-result">bool</span>
<a href="#etreAbsolue" title="details" class="method-name">etreAbsolue</a>
()
</div>
<div class="method-definition">
<span class="method-result">string|bool</span>
<a href="#getAutorite" title="details" class="method-name">getAutorite</a>
()
</div>
<div class="method-definition">
<span class="method-result">string</span>
<a href="#getChemin" title="details" class="method-name">getChemin</a>
()
</div>
<div class="method-definition">
<span class="method-result">string|bool</span>
<a href="#getFragment" title="details" class="method-name">getFragment</a>
()
</div>
<div class="method-definition">
<span class="method-result">string|bool</span>
<a href="#getHote" title="details" class="method-name">getHote</a>
()
</div>
<div class="method-definition">
<span class="method-result">string|bool</span>
<a href="#getInfoUtilisateur" title="details" class="method-name">getInfoUtilisateur</a>
()
</div>
<div class="method-definition">
<span class="method-result">string|bool</span>
<a href="#getMotDePasse" title="details" class="method-name">getMotDePasse</a>
()
</div>
<div class="method-definition">
<span class="method-result">mixed</span>
<a href="#getOption" title="details" class="method-name">getOption</a>
(<span class="var-type">string</span>&nbsp;<span class="var-name">$nomOption</span>)
</div>
<div class="method-definition">
<span class="method-result">int|bool</span>
<a href="#getPort" title="details" class="method-name">getPort</a>
()
</div>
<div class="method-definition">
<span class="method-result">string|bool</span>
<a href="#getRequete" title="details" class="method-name">getRequete</a>
()
</div>
<div class="method-definition">
<span class="method-result">string|bool</span>
<a href="#getSchema" title="details" class="method-name">getSchema</a>
()
</div>
<div class="method-definition">
<span class="method-result">string</span>
<a href="#getURL" title="details" class="method-name">getURL</a>
()
</div>
<div class="method-definition">
<span class="method-result">string</span>
<a href="#getURLNormalisee" title="details" class="method-name">getURLNormalisee</a>
()
</div>
<div class="method-definition">
<span class="method-result">string|bool</span>
<a href="#getUtilisateur" title="details" class="method-name">getUtilisateur</a>
()
</div>
<div class="method-definition">
<span class="method-result">array</span>
<a href="#getVariablesRequete" title="details" class="method-name">getVariablesRequete</a>
()
</div>
<div class="method-definition">
<span class="method-result"><a href="../Framework/Url.html">Url</a></span>
<a href="#normaliser" title="details" class="method-name">normaliser</a>
()
</div>
<div class="method-definition">
<span class="method-result"><a href="../Framework/Url.html">Url</a></span>
<a href="#resoudre" title="details" class="method-name">resoudre</a>
(<span class="var-type"><a href="../Framework/Url.html">Url</a>|string</span>&nbsp;<span class="var-name">$reference</span>)
</div>
<div class="method-definition">
<span class="method-result">void</span>
<a href="#setAutorite" title="details" class="method-name">setAutorite</a>
(<span class="var-type">string|false</span>&nbsp;<span class="var-name">$autorite</span>)
</div>
<div class="method-definition">
<span class="method-result">void</span>
<a href="#setChemin" title="details" class="method-name">setChemin</a>
(<span class="var-type">string</span>&nbsp;<span class="var-name">$chemin</span>)
</div>
<div class="method-definition">
<span class="method-result">void</span>
<a href="#setFragment" title="details" class="method-name">setFragment</a>
(<span class="var-type">string|bool</span>&nbsp;<span class="var-name">$fragment</span>)
</div>
<div class="method-definition">
<span class="method-result">void</span>
<a href="#setHote" title="details" class="method-name">setHote</a>
(<span class="var-type">string|bool</span>&nbsp;<span class="var-name">$hote</span>)
</div>
<div class="method-definition">
<span class="method-result">void</span>
<a href="#setInfoUtilisateur" title="details" class="method-name">setInfoUtilisateur</a>
(<span class="var-type">string|bool</span>&nbsp;<span class="var-name">$infoUtilisateur</span>, [<span class="var-type">string|bool</span>&nbsp;<span class="var-name">$motDePasse</span> = <span class="var-default">false</span>])
</div>
<div class="method-definition">
<span class="method-result">void</span>
<a href="#setOption" title="details" class="method-name">setOption</a>
(<span class="var-type">string</span>&nbsp;<span class="var-name">$nomOption</span>, <span class="var-type">mixed</span>&nbsp;<span class="var-name">$valeur</span>)
</div>
<div class="method-definition">
<span class="method-result">void</span>
<a href="#setPort" title="details" class="method-name">setPort</a>
(<span class="var-type">int|bool</span>&nbsp;<span class="var-name">$port</span>)
</div>
<div class="method-definition">
<span class="method-result">void</span>
<a href="#setRequete" title="details" class="method-name">setRequete</a>
(<span class="var-type">string|bool</span>&nbsp;<span class="var-name">$requete</span>)
</div>
<div class="method-definition">
<span class="method-result">void</span>
<a href="#setSchema" title="details" class="method-name">setSchema</a>
(<span class="var-type">string|bool</span>&nbsp;<span class="var-name">$schema</span>)
</div>
<div class="method-definition">
<span class="method-result">array</span>
<a href="#setVariableRequete" title="details" class="method-name">setVariableRequete</a>
(<span class="var-type">string</span>&nbsp;<span class="var-name">$nom</span>, <span class="var-type">mixed</span>&nbsp;<span class="var-name">$valeur</span>)
</div>
<div class="method-definition">
<span class="method-result">void</span>
<a href="#setVariablesRequete" title="details" class="method-name">setVariablesRequete</a>
(<span class="var-type"></span>&nbsp;<span class="var-name">$tableau</span>)
</div>
<div class="method-definition">
<span class="method-result">void</span>
<a href="#unsetVariableRequete" title="details" class="method-name">unsetVariableRequete</a>
(<span class="var-type">string</span>&nbsp;<span class="var-name">$nom</span>)
</div>
<div class="method-definition">
<span class="method-result">void</span>
<a href="#__toString" title="details" class="method-name">__toString</a>
()
</div>
</div>
</div>
</div>
 
<a name="sec-methods"></a>
<div class="info-box">
<div class="info-box-title">Methods</div>
<div class="nav-bar">
<a href="#sec-description">Description</a> |
<a href="#sec-const-summary">Constants</a> (<a href="#sec-consts">details</a>)
<a href="#sec-method-summary">Methods</a> (<span class="disabled">details</span>)
</div>
<div class="info-box-body">
<A NAME='method_detail'></A>
<a name="methodgetCanonique" id="getCanonique"><!-- --></a>
<div class="evenrow">
<div class="method-header">
<span class="method-title">static getCanonique</span> (line <span class="line-number"><a href="../__filesource/fsource_Framework__Url.php.html#a678">678</a></span>)
</div>
<!-- ========== Info from phpDoc block ========= -->
<p class="short-description">Renvoie une instance de Url representant l'URL canonique du script PHP en cours d'éxécution</p>
<ul class="tags">
<li><span class="field">access:</span> public</li>
</ul>
<div class="method-signature">
static <span class="method-result">string</span>
<span class="method-name">
getCanonique
</span>
()
</div>
</div>
<a name="methodgetDemande" id="getDemande"><!-- --></a>
<div class="oddrow">
<div class="method-header">
<span class="method-title">static getDemande</span> (line <span class="line-number"><a href="../__filesource/fsource_Framework__Url.php.html#a712">712</a></span>)
</div>
<!-- ========== Info from phpDoc block ========= -->
<p class="short-description">Renvoie une instance de Url representant l'URL utilisée pour récupérer la requête en cours</p>
<ul class="tags">
<li><span class="field">access:</span> public</li>
</ul>
<div class="method-signature">
static <span class="method-result"><a href="../Framework/Url.html">Url</a></span>
<span class="method-name">
getDemande
</span>
()
</div>
</div>
<a name="methodgetURLDemande" id="getURLDemande"><!-- --></a>
<div class="evenrow">
<div class="method-header">
<span class="method-title">static getURLDemande</span> (line <span class="line-number"><a href="../__filesource/fsource_Framework__Url.php.html#a702">702</a></span>)
</div>
<!-- ========== Info from phpDoc block ========= -->
<p class="short-description">Renvoie l'URL utilisée pour récupérer la requête en cours</p>
<ul class="tags">
<li><span class="field">access:</span> public</li>
</ul>
<div class="method-signature">
static <span class="method-result">string</span>
<span class="method-name">
getURLDemande
</span>
()
</div>
</div>
<a name="method__construct" id="__construct"><!-- --></a>
<div class="oddrow">
<div class="method-header">
<span class="method-title">Constructor __construct</span> (line <span class="line-number"><a href="../__filesource/fsource_Framework__Url.php.html#a102">102</a></span>)
</div>
<!-- ========== Info from phpDoc block ========= -->
<ul class="tags">
<li><span class="field">access:</span> public</li>
</ul>
<div class="method-signature">
<span class="method-result">Url</span>
<span class="method-name">
__construct
</span>
(<span class="var-type">string</span>&nbsp;<span class="var-name">$url</span>, [<span class="var-type">array</span>&nbsp;<span class="var-name">$options</span> = <span class="var-default">null</span>])
</div>
<ul class="parameters">
<li>
<span class="var-type">string</span>
<span class="var-name">$url</span><span class="var-description">: une URL relative ou absolue</span> </li>
<li>
<span class="var-type">array</span>
<span class="var-name">$options</span> </li>
</ul>
</div>
<a name="methodetreAbsolue" id="etreAbsolue"><!-- --></a>
<div class="evenrow">
<div class="method-header">
<span class="method-title">etreAbsolue</span> (line <span class="line-number"><a href="../__filesource/fsource_Framework__Url.php.html#a546">546</a></span>)
</div>
<!-- ========== Info from phpDoc block ========= -->
<p class="short-description">Renvoie vrai ou faux suivant que l'instance en cours représente une URL relative ou absolue.</p>
<ul class="tags">
<li><span class="field">access:</span> public</li>
</ul>
<div class="method-signature">
<span class="method-result">bool</span>
<span class="method-name">
etreAbsolue
</span>
()
</div>
</div>
<a name="methodgetAutorite" id="getAutorite"><!-- --></a>
<div class="oddrow">
<div class="method-header">
<span class="method-title">getAutorite</span> (line <span class="line-number"><a href="../__filesource/fsource_Framework__Url.php.html#a248">248</a></span>)
</div>
<!-- ========== Info from phpDoc block ========= -->
<p class="short-description">Renvoie la partie autorité, i.e. [ infoUtilisateur &quot;@&quot; ] hote [ &quot;:&quot; port ], ou false si celle-ci est absente.</p>
<ul class="tags">
<li><span class="field">access:</span> public</li>
</ul>
<div class="method-signature">
<span class="method-result">string|bool</span>
<span class="method-name">
getAutorite
</span>
()
</div>
</div>
<a name="methodgetChemin" id="getChemin"><!-- --></a>
<div class="evenrow">
<div class="method-header">
<span class="method-title">getChemin</span> (line <span class="line-number"><a href="../__filesource/fsource_Framework__Url.php.html#a295">295</a></span>)
</div>
<!-- ========== Info from phpDoc block ========= -->
<p class="short-description">Renvoie la partie chemin (chemin) (éventuellement vide).</p>
<ul class="tags">
<li><span class="field">access:</span> public</li>
</ul>
<div class="method-signature">
<span class="method-result">string</span>
<span class="method-name">
getChemin
</span>
()
</div>
</div>
<a name="methodgetFragment" id="getFragment"><!-- --></a>
<div class="oddrow">
<div class="method-header">
<span class="method-title">getFragment</span> (line <span class="line-number"><a href="../__filesource/fsource_Framework__Url.php.html#a334">334</a></span>)
</div>
<!-- ========== Info from phpDoc block ========= -->
<p class="short-description">Renvoie le nom du fragment, ou false si &quot;#&quot; n'est pas present dans l'URL.</p>
<ul class="tags">
<li><span class="field">access:</span> public</li>
</ul>
<div class="method-signature">
<span class="method-result">string|bool</span>
<span class="method-name">
getFragment
</span>
()
</div>
</div>
<a name="methodgetHote" id="getHote"><!-- --></a>
<div class="evenrow">
<div class="method-header">
<span class="method-title">getHote</span> (line <span class="line-number"><a href="../__filesource/fsource_Framework__Url.php.html#a210">210</a></span>)
</div>
<!-- ========== Info from phpDoc block ========= -->
<p class="short-description">Renvoie la partie hôte, ou false s'il n'y a pas de partie autorité, c.a.d.</p>
<p class="description"><p>l'URL est relative.</p></p>
<ul class="tags">
<li><span class="field">access:</span> public</li>
</ul>
<div class="method-signature">
<span class="method-result">string|bool</span>
<span class="method-name">
getHote
</span>
()
</div>
</div>
<a name="methodgetInfoUtilisateur" id="getInfoUtilisateur"><!-- --></a>
<div class="oddrow">
<div class="method-header">
<span class="method-title">getInfoUtilisateur</span> (line <span class="line-number"><a href="../__filesource/fsource_Framework__Url.php.html#a184">184</a></span>)
</div>
<!-- ========== Info from phpDoc block ========= -->
<p class="short-description">Renvoie la partie userinfio, ou false si celle-ci n'existe pas, i.e. si la partie autorité ne contient pas de &quot;@&quot;</p>
<ul class="tags">
<li><span class="field">access:</span> public</li>
</ul>
<div class="method-signature">
<span class="method-result">string|bool</span>
<span class="method-name">
getInfoUtilisateur
</span>
()
</div>
</div>
<a name="methodgetMotDePasse" id="getMotDePasse"><!-- --></a>
<div class="evenrow">
<div class="method-header">
<span class="method-title">getMotDePasse</span> (line <span class="line-number"><a href="../__filesource/fsource_Framework__Url.php.html#a174">174</a></span>)
</div>
<!-- ========== Info from phpDoc block ========= -->
<p class="short-description">renvoie la partie mot de passe de la partie infoUtilisateur (partie après le premier &quot;:&quot;), , ou false si aucune partie infoUtilisateur n'est définie (i.e. l'URL ne contient pas de &quot;@&quot; en face du nom d'hôte) ou si la partie infoUtilisateur ne contient pas de &quot;:&quot;.</p>
<ul class="tags">
<li><span class="field">access:</span> public</li>
</ul>
<div class="method-signature">
<span class="method-result">string|bool</span>
<span class="method-name">
getMotDePasse
</span>
()
</div>
</div>
<a name="methodgetOption" id="getOption"><!-- --></a>
<div class="oddrow">
<div class="method-header">
<span class="method-title">getOption</span> (line <span class="line-number"><a href="../__filesource/fsource_Framework__Url.php.html#a751">751</a></span>)
</div>
<!-- ========== Info from phpDoc block ========= -->
<p class="short-description">Renvoie la valeur de l'option specifiée.</p>
<div class="method-signature">
<span class="method-result">mixed</span>
<span class="method-name">
getOption
</span>
(<span class="var-type">string</span>&nbsp;<span class="var-name">$nomOption</span>)
</div>
<ul class="parameters">
<li>
<span class="var-type">string</span>
<span class="var-name">$nomOption</span><span class="var-description">: Nom de l'option demandée</span> </li>
</ul>
</div>
<a name="methodgetPort" id="getPort"><!-- --></a>
<div class="evenrow">
<div class="method-header">
<span class="method-title">getPort</span> (line <span class="line-number"><a href="../__filesource/fsource_Framework__Url.php.html#a229">229</a></span>)
</div>
<!-- ========== Info from phpDoc block ========= -->
<p class="short-description">Renvoie le numéro de port, ou false si aucun numéro de port n'est spécifié, i.e. le port par défaut doit utilisé.</p>
<ul class="tags">
<li><span class="field">access:</span> public</li>
</ul>
<div class="method-signature">
<span class="method-result">int|bool</span>
<span class="method-name">
getPort
</span>
()
</div>
</div>
<a name="methodgetRequete" id="getRequete"><!-- --></a>
<div class="oddrow">
<div class="method-header">
<span class="method-title">getRequete</span> (line <span class="line-number"><a href="../__filesource/fsource_Framework__Url.php.html#a315">315</a></span>)
</div>
<!-- ========== Info from phpDoc block ========= -->
<p class="short-description">renvoie la chaine de requête (requete string) (sans le premier &quot;?&quot;), ou false si &quot;?&quot; n'est pas présent dans l'url.</p>
<ul class="tags">
<li><span class="field">see:</span> self::getVariablesRequete()</li>
<li><span class="field">access:</span> public</li>
</ul>
<div class="method-signature">
<span class="method-result">string|bool</span>
<span class="method-name">
getRequete
</span>
()
</div>
</div>
<a name="methodgetSchema" id="getSchema"><!-- --></a>
<div class="evenrow">
<div class="method-header">
<span class="method-title">getSchema</span> (line <span class="line-number"><a href="../__filesource/fsource_Framework__Url.php.html#a143">143</a></span>)
</div>
<!-- ========== Info from phpDoc block ========= -->
<p class="short-description">Retourne le schéma, c.a.d. &quot;http&quot; ou &quot;urn&quot;, ou false si aucun schéma n'est spécifié, i.e. l'url est une url relative</p>
<ul class="tags">
<li><span class="field">access:</span> public</li>
</ul>
<div class="method-signature">
<span class="method-result">string|bool</span>
<span class="method-name">
getSchema
</span>
()
</div>
</div>
<a name="methodgetURL" id="getURL"><!-- --></a>
<div class="oddrow">
<div class="method-header">
<span class="method-title">getURL</span> (line <span class="line-number"><a href="../__filesource/fsource_Framework__Url.php.html#a462">462</a></span>)
</div>
<!-- ========== Info from phpDoc block ========= -->
<p class="short-description">Renvoie un représentation sous forme de chaine de l'URL</p>
<ul class="tags">
<li><span class="field">access:</span> public</li>
</ul>
<div class="method-signature">
<span class="method-result">string</span>
<span class="method-name">
getURL
</span>
()
</div>
</div>
<a name="methodgetURLNormalisee" id="getURLNormalisee"><!-- --></a>
<div class="evenrow">
<div class="method-header">
<span class="method-title">getURLNormalisee</span> (line <span class="line-number"><a href="../__filesource/fsource_Framework__Url.php.html#a493">493</a></span>)
</div>
<!-- ========== Info from phpDoc block ========= -->
<p class="short-description">Renvoie une représentation de cette URL sous forme de chaine normalisée. Utile pour la comparaison d'URLs</p>
<ul class="tags">
<li><span class="field">access:</span> public</li>
</ul>
<div class="method-signature">
<span class="method-result">string</span>
<span class="method-name">
getURLNormalisee
</span>
()
</div>
</div>
<a name="methodgetUtilisateur" id="getUtilisateur"><!-- --></a>
<div class="oddrow">
<div class="method-header">
<span class="method-title">getUtilisateur</span> (line <span class="line-number"><a href="../__filesource/fsource_Framework__Url.php.html#a163">163</a></span>)
</div>
<!-- ========== Info from phpDoc block ========= -->
<p class="short-description">renvoie la partie user de la partie infoUtilisateur (partie précédant le premier &quot;:&quot;), ou false si aucune partie infoUtilisateur n'est définie.</p>
<ul class="tags">
<li><span class="field">access:</span> public</li>
</ul>
<div class="method-signature">
<span class="method-result">string|bool</span>
<span class="method-name">
getUtilisateur
</span>
()
</div>
</div>
<a name="methodgetVariablesRequete" id="getVariablesRequete"><!-- --></a>
<div class="evenrow">
<div class="method-header">
<span class="method-title">getVariablesRequete</span> (line <span class="line-number"><a href="../__filesource/fsource_Framework__Url.php.html#a353">353</a></span>)
</div>
<!-- ========== Info from phpDoc block ========= -->
<p class="short-description">Renvoie la requete string sous forme d'un tableau de variables telles qu'elles apparaitraient dans le $_GET d'un script PHP</p>
<ul class="tags">
<li><span class="field">access:</span> public</li>
</ul>
<div class="method-signature">
<span class="method-result">array</span>
<span class="method-name">
getVariablesRequete
</span>
()
</div>
</div>
<a name="methodnormaliser" id="normaliser"><!-- --></a>
<div class="oddrow">
<div class="method-header">
<span class="method-title">normaliser</span> (line <span class="line-number"><a href="../__filesource/fsource_Framework__Url.php.html#a504">504</a></span>)
</div>
<!-- ========== Info from phpDoc block ========= -->
<p class="short-description">Renvoie une instance normalisée de Url</p>
<ul class="tags">
<li><span class="field">access:</span> public</li>
</ul>
<div class="method-signature">
<span class="method-result"><a href="../Framework/Url.html">Url</a></span>
<span class="method-name">
normaliser
</span>
()
</div>
</div>
<a name="methodresoudre" id="resoudre"><!-- --></a>
<div class="evenrow">
<div class="method-header">
<span class="method-title">resoudre</span> (line <span class="line-number"><a href="../__filesource/fsource_Framework__Url.php.html#a558">558</a></span>)
</div>
<!-- ========== Info from phpDoc block ========= -->
<p class="short-description">Renvoie une instance de Url représentant une URL absolue relative à cette URL.</p>
<ul class="tags">
<li><span class="field">access:</span> public</li>
</ul>
<div class="method-signature">
<span class="method-result"><a href="../Framework/Url.html">Url</a></span>
<span class="method-name">
resoudre
</span>
(<span class="var-type"><a href="../Framework/Url.html">Url</a>|string</span>&nbsp;<span class="var-name">$reference</span>)
</div>
<ul class="parameters">
<li>
<span class="var-type"><a href="../Framework/Url.html">Url</a>|string</span>
<span class="var-name">$reference</span><span class="var-description">: URL relative</span> </li>
</ul>
</div>
<a name="methodsetAutorite" id="setAutorite"><!-- --></a>
<div class="oddrow">
<div class="method-header">
<span class="method-title">setAutorite</span> (line <span class="line-number"><a href="../__filesource/fsource_Framework__Url.php.html#a273">273</a></span>)
</div>
<!-- ========== Info from phpDoc block ========= -->
<ul class="tags">
<li><span class="field">access:</span> public</li>
</ul>
<div class="method-signature">
<span class="method-result">void</span>
<span class="method-name">
setAutorite
</span>
(<span class="var-type">string|false</span>&nbsp;<span class="var-name">$autorite</span>)
</div>
<ul class="parameters">
<li>
<span class="var-type">string|false</span>
<span class="var-name">$autorite</span> </li>
</ul>
</div>
<a name="methodsetChemin" id="setChemin"><!-- --></a>
<div class="evenrow">
<div class="method-header">
<span class="method-title">setChemin</span> (line <span class="line-number"><a href="../__filesource/fsource_Framework__Url.php.html#a304">304</a></span>)
</div>
<!-- ========== Info from phpDoc block ========= -->
<ul class="tags">
<li><span class="field">access:</span> public</li>
</ul>
<div class="method-signature">
<span class="method-result">void</span>
<span class="method-name">
setChemin
</span>
(<span class="var-type">string</span>&nbsp;<span class="var-name">$chemin</span>)
</div>
<ul class="parameters">
<li>
<span class="var-type">string</span>
<span class="var-name">$chemin</span> </li>
</ul>
</div>
<a name="methodsetFragment" id="setFragment"><!-- --></a>
<div class="oddrow">
<div class="method-header">
<span class="method-title">setFragment</span> (line <span class="line-number"><a href="../__filesource/fsource_Framework__Url.php.html#a343">343</a></span>)
</div>
<!-- ========== Info from phpDoc block ========= -->
<ul class="tags">
<li><span class="field">access:</span> public</li>
</ul>
<div class="method-signature">
<span class="method-result">void</span>
<span class="method-name">
setFragment
</span>
(<span class="var-type">string|bool</span>&nbsp;<span class="var-name">$fragment</span>)
</div>
<ul class="parameters">
<li>
<span class="var-type">string|bool</span>
<span class="var-name">$fragment</span> </li>
</ul>
</div>
<a name="methodsetHote" id="setHote"><!-- --></a>
<div class="evenrow">
<div class="method-header">
<span class="method-title">setHote</span> (line <span class="line-number"><a href="../__filesource/fsource_Framework__Url.php.html#a219">219</a></span>)
</div>
<!-- ========== Info from phpDoc block ========= -->
<ul class="tags">
<li><span class="field">access:</span> public</li>
</ul>
<div class="method-signature">
<span class="method-result">void</span>
<span class="method-name">
setHote
</span>
(<span class="var-type">string|bool</span>&nbsp;<span class="var-name">$hote</span>)
</div>
<ul class="parameters">
<li>
<span class="var-type">string|bool</span>
<span class="var-name">$hote</span> </li>
</ul>
</div>
<a name="methodsetInfoUtilisateur" id="setInfoUtilisateur"><!-- --></a>
<div class="oddrow">
<div class="method-header">
<span class="method-title">setInfoUtilisateur</span> (line <span class="line-number"><a href="../__filesource/fsource_Framework__Url.php.html#a197">197</a></span>)
</div>
<!-- ========== Info from phpDoc block ========= -->
<p class="short-description">Setteur pour la partie infoUtilisateur. Si deux argument sont passé, ils sont combinés dans la partie infoUtilisateur de cette manière username &quot;:&quot; password.</p>
<ul class="tags">
<li><span class="field">access:</span> public</li>
</ul>
<div class="method-signature">
<span class="method-result">void</span>
<span class="method-name">
setInfoUtilisateur
</span>
(<span class="var-type">string|bool</span>&nbsp;<span class="var-name">$infoUtilisateur</span>, [<span class="var-type">string|bool</span>&nbsp;<span class="var-name">$motDePasse</span> = <span class="var-default">false</span>])
</div>
<ul class="parameters">
<li>
<span class="var-type">string|bool</span>
<span class="var-name">$infoUtilisateur</span><span class="var-description">: infoUtilisateur ou username</span> </li>
<li>
<span class="var-type">string|bool</span>
<span class="var-name">$motDePasse</span> </li>
</ul>
</div>
<a name="methodsetOption" id="setOption"><!-- --></a>
<div class="evenrow">
<div class="method-header">
<span class="method-title">setOption</span> (line <span class="line-number"><a href="../__filesource/fsource_Framework__Url.php.html#a737">737</a></span>)
</div>
<!-- ========== Info from phpDoc block ========= -->
<p class="short-description">Met à jour la valeur de l'option spécifiée.</p>
<ul class="tags">
<li><span class="field">see:</span> self::OPTION_ENCODER_CLES</li>
<li><span class="field">see:</span> self::OPTION_UTILISER_CROCHETS</li>
<li><span class="field">see:</span> self::OPTION_STRICTE</li>
</ul>
<div class="method-signature">
<span class="method-result">void</span>
<span class="method-name">
setOption
</span>
(<span class="var-type">string</span>&nbsp;<span class="var-name">$nomOption</span>, <span class="var-type">mixed</span>&nbsp;<span class="var-name">$valeur</span>)
</div>
<ul class="parameters">
<li>
<span class="var-type">string</span>
<span class="var-name">$nomOption</span><span class="var-description">: une des constantes commençant par self::OPTION_</span> </li>
<li>
<span class="var-type">mixed</span>
<span class="var-name">$valeur</span><span class="var-description">: valeur de l'option</span> </li>
</ul>
</div>
<a name="methodsetPort" id="setPort"><!-- --></a>
<div class="oddrow">
<div class="method-header">
<span class="method-title">setPort</span> (line <span class="line-number"><a href="../__filesource/fsource_Framework__Url.php.html#a238">238</a></span>)
</div>
<!-- ========== Info from phpDoc block ========= -->
<ul class="tags">
<li><span class="field">access:</span> public</li>
</ul>
<div class="method-signature">
<span class="method-result">void</span>
<span class="method-name">
setPort
</span>
(<span class="var-type">int|bool</span>&nbsp;<span class="var-name">$port</span>)
</div>
<ul class="parameters">
<li>
<span class="var-type">int|bool</span>
<span class="var-name">$port</span> </li>
</ul>
</div>
<a name="methodsetRequete" id="setRequete"><!-- --></a>
<div class="evenrow">
<div class="method-header">
<span class="method-title">setRequete</span> (line <span class="line-number"><a href="../__filesource/fsource_Framework__Url.php.html#a325">325</a></span>)
</div>
<!-- ========== Info from phpDoc block ========= -->
<ul class="tags">
<li><span class="field">see:</span> self::setVariablesRequete()</li>
<li><span class="field">access:</span> public</li>
</ul>
<div class="method-signature">
<span class="method-result">void</span>
<span class="method-name">
setRequete
</span>
(<span class="var-type">string|bool</span>&nbsp;<span class="var-name">$requete</span>)
</div>
<ul class="parameters">
<li>
<span class="var-type">string|bool</span>
<span class="var-name">$requete</span> </li>
</ul>
</div>
<a name="methodsetSchema" id="setSchema"><!-- --></a>
<div class="oddrow">
<div class="method-header">
<span class="method-title">setSchema</span> (line <span class="line-number"><a href="../__filesource/fsource_Framework__Url.php.html#a153">153</a></span>)
</div>
<!-- ========== Info from phpDoc block ========= -->
<ul class="tags">
<li><span class="field">see:</span> <a href="../Framework/Url.html#methodgetSchema">Url::getSchema()</a></li>
<li><span class="field">access:</span> public</li>
</ul>
<div class="method-signature">
<span class="method-result">void</span>
<span class="method-name">
setSchema
</span>
(<span class="var-type">string|bool</span>&nbsp;<span class="var-name">$schema</span>)
</div>
<ul class="parameters">
<li>
<span class="var-type">string|bool</span>
<span class="var-name">$schema</span> </li>
</ul>
</div>
<a name="methodsetVariableRequete" id="setVariableRequete"><!-- --></a>
<div class="evenrow">
<div class="method-header">
<span class="method-title">setVariableRequete</span> (line <span class="line-number"><a href="../__filesource/fsource_Framework__Url.php.html#a440">440</a></span>)
</div>
<!-- ========== Info from phpDoc block ========= -->
<ul class="tags">
<li><span class="field">access:</span> public</li>
</ul>
<div class="method-signature">
<span class="method-result">array</span>
<span class="method-name">
setVariableRequete
</span>
(<span class="var-type">string</span>&nbsp;<span class="var-name">$nom</span>, <span class="var-type">mixed</span>&nbsp;<span class="var-name">$valeur</span>)
</div>
<ul class="parameters">
<li>
<span class="var-type">string</span>
<span class="var-name">$nom</span> </li>
<li>
<span class="var-type">mixed</span>
<span class="var-name">$valeur</span> </li>
</ul>
</div>
<a name="methodsetVariablesRequete" id="setVariablesRequete"><!-- --></a>
<div class="oddrow">
<div class="method-header">
<span class="method-title">setVariablesRequete</span> (line <span class="line-number"><a href="../__filesource/fsource_Framework__Url.php.html#a408">408</a></span>)
</div>
<!-- ========== Info from phpDoc block ========= -->
<ul class="tags">
<li><span class="field">access:</span> public</li>
</ul>
<div class="method-signature">
<span class="method-result">void</span>
<span class="method-name">
setVariablesRequete
</span>
(<span class="var-type"></span>&nbsp;<span class="var-name">$tableau</span>)
</div>
<ul class="parameters">
<li>
<span class="var-type">array</span>
<span class="var-name">$tableau</span><span class="var-description">: (nom =&gt; valeur) tableau</span> </li>
</ul>
</div>
<a name="methodunsetVariableRequete" id="unsetVariableRequete"><!-- --></a>
<div class="evenrow">
<div class="method-header">
<span class="method-title">unsetVariableRequete</span> (line <span class="line-number"><a href="../__filesource/fsource_Framework__Url.php.html#a451">451</a></span>)
</div>
<!-- ========== Info from phpDoc block ========= -->
<ul class="tags">
<li><span class="field">access:</span> public</li>
</ul>
<div class="method-signature">
<span class="method-result">void</span>
<span class="method-name">
unsetVariableRequete
</span>
(<span class="var-type">string</span>&nbsp;<span class="var-name">$nom</span>)
</div>
<ul class="parameters">
<li>
<span class="var-type">string</span>
<span class="var-name">$nom</span> </li>
</ul>
</div>
<a name="method__toString" id="__toString"><!-- --></a>
<div class="oddrow">
<div class="method-header">
<span class="method-title">__toString</span> (line <span class="line-number"><a href="../__filesource/fsource_Framework__Url.php.html#a756">756</a></span>)
</div>
<!-- ========== Info from phpDoc block ========= -->
<ul class="tags">
<li><span class="field">access:</span> public</li>
</ul>
<div class="method-signature">
<span class="method-result">void</span>
<span class="method-name">
__toString
</span>
()
</div>
</div>
</div>
</div>
 
<a name="sec-consts"></a>
<div class="info-box">
<div class="info-box-title">Class Constants</div>
<div class="nav-bar">
<a href="#sec-description">Description</a> |
<a href="#sec-var-summary">Constants</a> (<span class="disabled">details</span>)
|
<a href="#sec-method-summary">Methods</a> (<a href="#sec-methods">details</a>)
</div>
<div class="info-box-body">
<a name="constOPTION_ENCODER_CLES" id="OPTION_ENCODER_CLES"><!-- --></A>
<div class="evenrow">
 
<div class="const-header">
<img src="../media/images/Variable.png" />
<span class="const-title">
<span class="const-name">OPTION_ENCODER_CLES</span>
= <span class="const-default"> 'encode_keys'</span>
(line <span class="line-number"><a href="../__filesource/fsource_Framework__Url.php.html#a37">37</a></span>)
</span>
</div>
 
<!-- ========== Info from phpDoc block ========= -->
<p class="short-description">URL-encoder les clés des variables dans les requêtes. Par défaut à true.</p>
</div>
<a name="constOPTION_SEPARATEUR_ENTREE" id="OPTION_SEPARATEUR_ENTREE"><!-- --></A>
<div class="oddrow">
 
<div class="const-header">
<img src="../media/images/Variable.png" />
<span class="const-title">
<span class="const-name">OPTION_SEPARATEUR_ENTREE</span>
= <span class="const-default"> 'input_separator'</span>
(line <span class="line-number"><a href="../__filesource/fsource_Framework__Url.php.html#a44">44</a></span>)
</span>
</div>
 
<!-- ========== Info from phpDoc block ========= -->
<p class="short-description">Séparateurs de variables lors du parsing de la requête. Chaque caractère est considéré comme un séparateur. Par défaut, spécifié par le paramêtre arg_separator.input dans php.ini (par défaut &quot;&amp;&quot;).</p>
</div>
<a name="constOPTION_SEPARATEUR_SORTIE" id="OPTION_SEPARATEUR_SORTIE"><!-- --></A>
<div class="evenrow">
 
<div class="const-header">
<img src="../media/images/Variable.png" />
<span class="const-title">
<span class="const-name">OPTION_SEPARATEUR_SORTIE</span>
= <span class="const-default"> 'output_separator'</span>
(line <span class="line-number"><a href="../__filesource/fsource_Framework__Url.php.html#a50">50</a></span>)
</span>
</div>
 
<!-- ========== Info from phpDoc block ========= -->
<p class="short-description">Séparateur de variables lors de la génération de la requête. Par défaut, spécifié par le paramètre arg_separator.output dans php.ini (par défaut &quot;&amp;&quot;).</p>
</div>
<a name="constOPTION_STRICTE" id="OPTION_STRICTE"><!-- --></A>
<div class="oddrow">
 
<div class="const-header">
<img src="../media/images/Variable.png" />
<span class="const-title">
<span class="const-name">OPTION_STRICTE</span>
= <span class="const-default"> 'strict'</span>
(line <span class="line-number"><a href="../__filesource/fsource_Framework__Url.php.html#a27">27</a></span>)
</span>
</div>
 
<!-- ========== Info from phpDoc block ========= -->
<p class="short-description">Parsing strict dans resoudre() (voir RFC 3986, section 5.2.2). Par défaut à true.</p>
</div>
<a name="constOPTION_UTILISER_CROCHETS" id="OPTION_UTILISER_CROCHETS"><!-- --></A>
<div class="evenrow">
 
<div class="const-header">
<img src="../media/images/Variable.png" />
<span class="const-title">
<span class="const-name">OPTION_UTILISER_CROCHETS</span>
= <span class="const-default"> 'use_brackets'</span>
(line <span class="line-number"><a href="../__filesource/fsource_Framework__Url.php.html#a32">32</a></span>)
</span>
</div>
 
<!-- ========== Info from phpDoc block ========= -->
<p class="short-description">Répresenter les tableaux dans les requêtes en utilisant la notation php []. Par défaut à true.</p>
</div>
</div>
</div>
 
<p class="notes" id="credit">
Documentation generated on Thu, 04 Mar 2010 19:27:28 +0100 by <a href="http://www.phpdoc.org" target="_blank">phpDocumentor 1.4.3</a>
</p>
</div></body>
</html>
/tags/v0.3-aleaume/doc/HTMLframesConverter/Framework/Application.html
New file
0,0 → 1,293
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<!-- template designed by Marco Von Ballmoos -->
<title>Docs For Class Application</title>
<meta http-equiv='Content-Type' content='text/html; charset=UTF-8'/>
<link rel="stylesheet" href="../media/stylesheet.css" />
<script src="../media/lib/classTree.js"></script>
<script language="javascript" type="text/javascript">
var imgPlus = new Image();
var imgMinus = new Image();
imgPlus.src = "../media/images/plus.png";
imgMinus.src = "../media/images/minus.png";
function showNode(Node){
switch(navigator.family){
case 'nn4':
// Nav 4.x code fork...
var oTable = document.layers["span" + Node];
var oImg = document.layers["img" + Node];
break;
case 'ie4':
// IE 4/5 code fork...
var oTable = document.all["span" + Node];
var oImg = document.all["img" + Node];
break;
case 'gecko':
// Standards Compliant code fork...
var oTable = document.getElementById("span" + Node);
var oImg = document.getElementById("img" + Node);
break;
}
oImg.src = imgMinus.src;
oTable.style.display = "block";
}
function hideNode(Node){
switch(navigator.family){
case 'nn4':
// Nav 4.x code fork...
var oTable = document.layers["span" + Node];
var oImg = document.layers["img" + Node];
break;
case 'ie4':
// IE 4/5 code fork...
var oTable = document.all["span" + Node];
var oImg = document.all["img" + Node];
break;
case 'gecko':
// Standards Compliant code fork...
var oTable = document.getElementById("span" + Node);
var oImg = document.getElementById("img" + Node);
break;
}
oImg.src = imgPlus.src;
oTable.style.display = "none";
}
function nodeIsVisible(Node){
switch(navigator.family){
case 'nn4':
// Nav 4.x code fork...
var oTable = document.layers["span" + Node];
break;
case 'ie4':
// IE 4/5 code fork...
var oTable = document.all["span" + Node];
break;
case 'gecko':
// Standards Compliant code fork...
var oTable = document.getElementById("span" + Node);
break;
}
return (oTable && oTable.style.display == "block");
}
function toggleNodeVisibility(Node){
if (nodeIsVisible(Node)){
hideNode(Node);
}else{
showNode(Node);
}
}
</script>
</head>
<body>
<div class="page-body">
<h2 class="class-name">Class Application</h2>
 
<a name="sec-description"></a>
<div class="info-box">
<div class="info-box-title">Description</div>
<div class="nav-bar">
<span class="disabled">Description</span> |
<a href="#sec-method-summary">Methods</a> (<a href="#sec-methods">details</a>)
</div>
<div class="info-box-body">
<!-- ========== Info from phpDoc block ========= -->
<p class="short-description">Classe fournissant des informations au Framework sur l'application.</p>
<p class="description"><p>PHP version 5</p></p>
<ul class="tags">
<li><span class="field">author:</span> Jean-Pascal MILCENT &lt;<a href="mailto:jpm@tela-botanica.org">jpm@tela-botanica.org</a>&gt;</li>
<li><span class="field">version:</span> $$Id: Application.php 153 2010-03-04 10:48:32Z jpm $$</li>
<li><span class="field">copyright:</span> 1999-2009 Tela Botanica (accueil@tela-botanica.org)</li>
<li><span class="field">license:</span> GPL</li>
<li><span class="field">license:</span> CECILL</li>
</ul>
<p class="notes">
Located in <a class="field" href="_Application.php.html">/Application.php</a> (line <span class="field"><a href="../__filesource/fsource_Framework__Application.php.html#a18">18</a></span>)
</p>
<pre></pre>
</div>
</div>
 
 
 
 
<a name="sec-method-summary"></a>
<div class="info-box">
<div class="info-box-title">Method Summary</span></div>
<div class="nav-bar">
<a href="#sec-description">Description</a> |
<span class="disabled">Methods</span> (<a href="#sec-methods">details</a>)
</div>
<div class="info-box-body">
<div class="method-summary">
<div class="method-definition">
static <span class="method-result">string</span>
<a href="#getChemin" title="details" class="method-name">getChemin</a>
()
</div>
<div class="method-definition">
static <span class="method-result">void</span>
<a href="#getInfo" title="details" class="method-name">getInfo</a>
([<span class="var-type">string</span>&nbsp;<span class="var-name">$cle</span> = <span class="var-default">null</span>])
</div>
<div class="method-definition">
static <span class="method-result">void</span>
<a href="#setChemin" title="details" class="method-name">setChemin</a>
(<span class="var-type">string</span>&nbsp;<span class="var-name">$chemin_fichier_principal</span>)
</div>
<div class="method-definition">
static <span class="method-result">void</span>
<a href="#setInfo" title="details" class="method-name">setInfo</a>
(<span class="var-type">array</span>&nbsp;<span class="var-name">$info</span>)
</div>
</div>
</div>
</div>
 
<a name="sec-methods"></a>
<div class="info-box">
<div class="info-box-title">Methods</div>
<div class="nav-bar">
<a href="#sec-description">Description</a> |
<a href="#sec-method-summary">Methods</a> (<span class="disabled">details</span>)
</div>
<div class="info-box-body">
<A NAME='method_detail'></A>
<a name="methodgetChemin" id="getChemin"><!-- --></a>
<div class="evenrow">
<div class="method-header">
<span class="method-title">static getChemin</span> (line <span class="line-number"><a href="../__filesource/fsource_Framework__Application.php.html#a49">49</a></span>)
</div>
<!-- ========== Info from phpDoc block ========= -->
<p class="short-description">accesseur pour le chemin</p>
<ul class="tags">
<li><span class="field">return:</span> le chemin</li>
<li><span class="field">access:</span> public</li>
</ul>
<div class="method-signature">
static <span class="method-result">string</span>
<span class="method-name">
getChemin
</span>
()
</div>
</div>
<a name="methodgetInfo" id="getInfo"><!-- --></a>
<div class="oddrow">
<div class="method-header">
<span class="method-title">static getInfo</span> (line <span class="line-number"><a href="../__filesource/fsource_Framework__Application.php.html#a73">73</a></span>)
</div>
<!-- ========== Info from phpDoc block ========= -->
<p class="short-description">accesseur pour le tableau d'infos</p>
<ul class="tags">
<li><span class="field">access:</span> public</li>
</ul>
<div class="method-signature">
static <span class="method-result">void</span>
<span class="method-name">
getInfo
</span>
([<span class="var-type">string</span>&nbsp;<span class="var-name">$cle</span> = <span class="var-default">null</span>])
</div>
<ul class="parameters">
<li>
<span class="var-type">string</span>
<span class="var-name">$cle</span><span class="var-description">: la clé à laquelle on veut accéder</span> </li>
</ul>
</div>
<a name="methodsetChemin" id="setChemin"><!-- --></a>
<div class="evenrow">
<div class="method-header">
<span class="method-title">static setChemin</span> (line <span class="line-number"><a href="../__filesource/fsource_Framework__Application.php.html#a33">33</a></span>)
</div>
<!-- ========== Info from phpDoc block ========= -->
<p class="short-description">Modificateur pour le chemin de base</p>
<ul class="tags">
<li><span class="field">access:</span> public</li>
</ul>
<div class="method-signature">
static <span class="method-result">void</span>
<span class="method-name">
setChemin
</span>
(<span class="var-type">string</span>&nbsp;<span class="var-name">$chemin_fichier_principal</span>)
</div>
<ul class="parameters">
<li>
<span class="var-type">string</span>
<span class="var-name">$chemin_fichier_principal</span><span class="var-description">: chemin de base</span> </li>
</ul>
</div>
<a name="methodsetInfo" id="setInfo"><!-- --></a>
<div class="oddrow">
<div class="method-header">
<span class="method-title">static setInfo</span> (line <span class="line-number"><a href="../__filesource/fsource_Framework__Application.php.html#a61">61</a></span>)
</div>
<!-- ========== Info from phpDoc block ========= -->
<p class="short-description">Le tableau des informations sur l'application possède les clés suivantes :</p>
<p class="description"><p><ul><li>nom : nom de l'application</li><li>abr : abréviation de l'application</li><li>encodage : encodage de l'application (ISO-8859-15, UTF-8...)</li></ul></p></p>
<ul class="tags">
<li><span class="field">access:</span> public</li>
</ul>
<div class="method-signature">
static <span class="method-result">void</span>
<span class="method-name">
setInfo
</span>
(<span class="var-type">array</span>&nbsp;<span class="var-name">$info</span>)
</div>
<ul class="parameters">
<li>
<span class="var-type">array</span>
<span class="var-name">$info</span><span class="var-description">: tableau fournissant des informations sur l'application</span> </li>
</ul>
</div>
</div>
</div>
 
 
<p class="notes" id="credit">
Documentation generated on Thu, 04 Mar 2010 19:27:08 +0100 by <a href="http://www.phpdoc.org" target="_blank">phpDocumentor 1.4.3</a>
</p>
</div></body>
</html>
/tags/v0.3-aleaume/doc/HTMLframesConverter/__filesource/fsource_Framework__autoload.inc.php.html
New file
0,0 → 1,87
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<!-- template designed by Marco Von Ballmoos -->
<title>File Source for autoload.inc.php</title>
<meta http-equiv='Content-Type' content='text/html; charset=UTF-8'/>
<link rel="stylesheet" href="../media/stylesheet.css" />
</head>
<body>
<h1>Source for file autoload.inc.php</h1>
<p>Documentation is available at <a href="../Framework/_autoload.inc.php.html">autoload.inc.php</a></p>
<div class="src-code">
<div class="src-code"><ol><li><div class="src-line"><a name="a1"></a><span class="src-php">&lt;?php</span></div></li>
<li><div class="src-line"><a name="a2"></a><span class="src-comm">//&nbsp;declare(encoding='UTF-8');</span></div></li>
<li><div class="src-line"><a name="a3"></a><span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a4"></a><span class="src-doc">&nbsp;*&nbsp;Fichier&nbsp;contenant&nbsp;la&nbsp;fonction&nbsp;de&nbsp;chargement&nbsp;automatique&nbsp;de&nbsp;classes,&nbsp;il&nbsp;doit&nbsp;toujours&nbsp;rester&nbsp;à&nbsp;la&nbsp;racine</span></div></li>
<li><div class="src-line"><a name="a5"></a><span class="src-doc">&nbsp;*&nbsp;du&nbsp;framework&nbsp;car&nbsp;il&nbsp;initialise&nbsp;le&nbsp;chemin&nbsp;de&nbsp;l'application&nbsp;en&nbsp;se&nbsp;basant&nbsp;sur&nbsp;son&nbsp;propre&nbsp;emplacement.</span></div></li>
<li><div class="src-line"><a name="a6"></a><span class="src-doc">&nbsp;*</span></div></li>
<li><div class="src-line"><a name="a7"></a><span class="src-doc">&nbsp;*&nbsp;PHP&nbsp;Version&nbsp;5.1.2</span></div></li>
<li><div class="src-line"><a name="a8"></a><span class="src-doc">&nbsp;*</span></div></li>
<li><div class="src-line"><a name="a9"></a><span class="src-doc">&nbsp;*&nbsp;</span><span class="src-doc-coretag">@category</span><span class="src-doc">&nbsp;&nbsp;Fichier_De_Fonctions</span></div></li>
<li><div class="src-line"><a name="a10"></a><span class="src-doc">&nbsp;*&nbsp;</span><span class="src-doc-coretag">@package</span><span class="src-doc">&nbsp;&nbsp;&nbsp;Framework</span></div></li>
<li><div class="src-line"><a name="a11"></a><span class="src-doc">&nbsp;//&nbsp;Auteur&nbsp;principal&nbsp;:</span></div></li>
<li><div class="src-line"><a name="a12"></a><span class="src-doc">&nbsp;*&nbsp;</span><span class="src-doc-coretag">@author</span><span class="src-doc">&nbsp;Aurelien&nbsp;PERONNET&nbsp;&lt;aurelien@tela-botanica.org&gt;</span></div></li>
<li><div class="src-line"><a name="a13"></a><span class="src-doc">&nbsp;//&nbsp;Autres&nbsp;auteurs&nbsp;:</span></div></li>
<li><div class="src-line"><a name="a14"></a><span class="src-doc">&nbsp;*&nbsp;</span><span class="src-doc-coretag">@author</span><span class="src-doc">&nbsp;Jean-Pascal&nbsp;MILCENT&nbsp;&lt;jpm@tela-botanica.org&gt;</span></div></li>
<li><div class="src-line"><a name="a15"></a><span class="src-doc">&nbsp;*&nbsp;</span><span class="src-doc-coretag">@license</span><span class="src-doc">&nbsp;GPL&nbsp;v3&nbsp;&lt;http://www.gnu.org/licenses/gpl.txt&gt;</span></div></li>
<li><div class="src-line"><a name="a16"></a><span class="src-doc">&nbsp;*&nbsp;</span><span class="src-doc-coretag">@license</span><span class="src-doc">&nbsp;CECILL&nbsp;v2&nbsp;&lt;http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt&gt;</span></div></li>
<li><div class="src-line"><a name="a17"></a><span class="src-doc">&nbsp;*&nbsp;</span><span class="src-doc-coretag">@version</span><span class="src-doc">&nbsp;$$Id:&nbsp;autoload.inc.php&nbsp;153&nbsp;2010-03-04&nbsp;10:48:32Z&nbsp;jpm&nbsp;$$</span></div></li>
<li><div class="src-line"><a name="a18"></a><span class="src-doc">&nbsp;*&nbsp;</span><span class="src-doc-coretag">@copyright</span><span class="src-doc">&nbsp;1999-2009&nbsp;Tela&nbsp;Botanica&nbsp;(accueil@tela-botanica.org)</span></div></li>
<li><div class="src-line"><a name="a19"></a><span class="src-doc">&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a20"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a21"></a><span class="src-comm">//&nbsp;Redéfinition&nbsp;de&nbsp;la&nbsp;constante&nbsp;DIRECTORY_SEPARATOR</span></div></li>
<li><div class="src-line"><a name="a22"></a><span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-sym">!</span><a href="http://www.php.net/defined">defined</a><span class="src-sym">(</span><span class="src-str">'DS'</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a23"></a>&nbsp;&nbsp;&nbsp;&nbsp;<a href="http://www.php.net/define">define</a><span class="src-sym">(</span><span class="src-str">'DS'</span><span class="src-sym">,&nbsp;</span><span class="src-id">DIRECTORY_SEPARATOR</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a24"></a><span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a25"></a><span class="src-comm">//&nbsp;Redéfinition&nbsp;de&nbsp;la&nbsp;constante&nbsp;PATH_SEPARATOR</span></div></li>
<li><div class="src-line"><a name="a26"></a><span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-sym">!</span><a href="http://www.php.net/defined">defined</a><span class="src-sym">(</span><span class="src-str">'PS'</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a27"></a>&nbsp;&nbsp;&nbsp;&nbsp;<a href="http://www.php.net/define">define</a><span class="src-sym">(</span><span class="src-str">'PS'</span><span class="src-sym">,&nbsp;</span><span class="src-id">PATH_SEPARATOR</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a28"></a><span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a29"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a30"></a><span class="src-comm">//&nbsp;Autoload&nbsp;pour&nbsp;le&nbsp;Framework</span></div></li>
<li><div class="src-line"><a name="a31"></a><span class="src-key">function&nbsp;</span><a href="../Framework/_autoload.inc.php.html#functionautoloadFw">autoloadFw</a><span class="src-sym">(</span><span class="src-var">$nom_classe_fw</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a32"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$fichier_a_inclure&nbsp;</span>=&nbsp;<a href="http://www.php.net/dirname">dirname</a><span class="src-sym">(</span>__FILE__<span class="src-sym">)</span>.<span class="src-id"><a href="../Framework/_autoload.inc.php.html#defineDS">DS</a></span>.<span class="src-var">$nom_classe_fw</span>.<span class="src-str">'.php'</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a33"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><a href="http://www.php.net/file_exists">file_exists</a><span class="src-sym">(</span><span class="src-var">$fichier_a_inclure</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a34"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-inc">include_once&nbsp;</span><span class="src-var">$fichier_a_inclure</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a35"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-id">null</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a36"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a37"></a><span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a38"></a><a href="http://www.php.net/spl_autoload_register">spl_autoload_register</a><span class="src-sym">(</span><span class="src-str">'autoloadFw'</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a39"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a40"></a><span class="src-comm">//&nbsp;Instanciation&nbsp;du&nbsp;gestionnaire&nbsp;d'exception</span></div></li>
<li><div class="src-line"><a name="a41"></a><span class="src-id"><a href="../Framework/GestionnaireException.html">GestionnaireException</a></span><span class="src-sym">::</span><a href="../Framework/GestionnaireException.html#methodgetInstance">getInstance</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a42"></a><span class="src-comm">//&nbsp;Instanciation&nbsp;du&nbsp;gestionnaire&nbsp;de&nbsp;logs</span></div></li>
<li><div class="src-line"><a name="a43"></a><span class="src-id"><a href="../Framework/Log.html">Log</a></span><span class="src-sym">::</span><a href="../Framework/Log.html#methodgetInstance">getInstance</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a44"></a><span class="src-comm">//&nbsp;Encodage&nbsp;de&nbsp;l'application&nbsp;(défini&nbsp;ici&nbsp;car&nbsp;on&nbsp;peut&nbsp;avoir&nbsp;des&nbsp;sorties&nbsp;d'erreurs&nbsp;dès&nbsp;le&nbsp;début)</span></div></li>
<li><div class="src-line"><a name="a45"></a><a href="http://www.php.net/mb_internal_encoding">mb_internal_encoding</a><span class="src-sym">(</span><span class="src-id"><a href="../Framework/Config.html">Config</a></span><span class="src-sym">::</span><a href="../Framework/Config.html#methodget">get</a><span class="src-sym">(</span><span class="src-str">'appli_encodage'</span><span class="src-sym">))</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a46"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a47"></a><span class="src-comm">//&nbsp;Autoload&nbsp;par&nbsp;défaut&nbsp;pour&nbsp;l'application</span></div></li>
<li><div class="src-line"><a name="a48"></a><span class="src-key">function&nbsp;</span><a href="../Framework/_autoload.inc.php.html#functionautoloadAppliDefaut">autoloadAppliDefaut</a><span class="src-sym">(</span><span class="src-var">$nom_classe</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a49"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$dossiers_classes&nbsp;</span>=&nbsp;<span class="src-key">array</span><span class="src-sym">(&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="src-id"><a href="../Framework/Config.html">Config</a></span><span class="src-sym">::</span><a href="../Framework/Config.html#methodget">get</a><span class="src-sym">(</span><span class="src-str">'chemin_controleurs'</span><span class="src-sym">)</span><span class="src-sym">,</span></div></li>
<li><div class="src-line"><a name="a50"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-id"><a href="../Framework/Config.html">Config</a></span><span class="src-sym">::</span><a href="../Framework/Config.html#methodget">get</a><span class="src-sym">(</span><span class="src-str">'chemin_modeles'</span><span class="src-sym">)</span><span class="src-sym">,</span></div></li>
<li><div class="src-line"><a name="a51"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-id"><a href="../Framework/Config.html">Config</a></span><span class="src-sym">::</span><a href="../Framework/Config.html#methodget">get</a><span class="src-sym">(</span><span class="src-str">'chemin_bibliotheque'</span><span class="src-sym">))</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a52"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a53"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">foreach&nbsp;</span><span class="src-sym">(</span><span class="src-var">$dossiers_classes&nbsp;</span><span class="src-key">as&nbsp;</span><span class="src-var">$chemin</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a54"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$fichier_a_tester&nbsp;</span>=&nbsp;<span class="src-var">$chemin</span>.<span class="src-var">$nom_classe</span>.<span class="src-str">'.php'</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a55"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><a href="http://www.php.net/file_exists">file_exists</a><span class="src-sym">(</span><span class="src-var">$fichier_a_tester</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a56"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-inc">include_once&nbsp;</span><span class="src-var">$fichier_a_tester</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a57"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-id">null</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a58"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a59"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a60"></a><span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a61"></a><a href="http://www.php.net/spl_autoload_register">spl_autoload_register</a><span class="src-sym">(</span><span class="src-str">'autoloadAppliDefaut'</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a62"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a63"></a><span class="src-comm">//&nbsp;Autoload&nbsp;défini&nbsp;par&nbsp;l'application</span></div></li>
<li><div class="src-line"><a name="a64"></a><span class="src-key">if&nbsp;</span><span class="src-sym">(</span><a href="http://www.php.net/function_exists">function_exists</a><span class="src-sym">(</span><span class="src-str">'__autoload'</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a65"></a>&nbsp;&nbsp;&nbsp;&nbsp;<a href="http://www.php.net/spl_autoload_register">spl_autoload_register</a><span class="src-sym">(</span><span class="src-str">'__autoload'</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a66"></a><span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a67"></a><span class="src-php">?&gt;</span></div></li>
</ol></div>
</div>
<p class="notes" id="credit">
Documentation generated on Thu, 04 Mar 2010 19:27:09 +0100 by <a href="http://www.phpdoc.org" target="_blank">phpDocumentor 1.4.3</a>
</p>
</body>
</html>
/tags/v0.3-aleaume/doc/HTMLframesConverter/__filesource/fsource_Framework__Log.php.html
New file
0,0 → 1,205
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<!-- template designed by Marco Von Ballmoos -->
<title>File Source for Log.php</title>
<meta http-equiv='Content-Type' content='text/html; charset=UTF-8'/>
<link rel="stylesheet" href="../media/stylesheet.css" />
</head>
<body>
<h1>Source for file Log.php</h1>
<p>Documentation is available at <a href="../Framework/_Log.php.html">Log.php</a></p>
<div class="src-code">
<div class="src-code"><ol><li><div class="src-line"><a name="a1"></a><span class="src-php">&lt;?php</span></div></li>
<li><div class="src-line"><a name="a2"></a><span class="src-comm">//declare(encoding='UTF-8');</span></div></li>
<li><div class="src-line"><a name="a3"></a><span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a4"></a><span class="src-doc">&nbsp;*&nbsp;Classe&nbsp;permettant&nbsp;de&nbsp;logger&nbsp;des&nbsp;messages&nbsp;dans&nbsp;les&nbsp;fichier&nbsp;situés&nbsp;dans&nbsp;le&nbsp;dossier&nbsp;de&nbsp;log</span></div></li>
<li><div class="src-line"><a name="a5"></a><span class="src-doc">&nbsp;*</span></div></li>
<li><div class="src-line"><a name="a6"></a><span class="src-doc">&nbsp;*&nbsp;PHP&nbsp;Version&nbsp;5</span></div></li>
<li><div class="src-line"><a name="a7"></a><span class="src-doc">&nbsp;*</span></div></li>
<li><div class="src-line"><a name="a8"></a><span class="src-doc">&nbsp;*&nbsp;</span><span class="src-doc-coretag">@category</span><span class="src-doc">&nbsp;&nbsp;PHP</span></div></li>
<li><div class="src-line"><a name="a9"></a><span class="src-doc">&nbsp;*&nbsp;</span><span class="src-doc-coretag">@package</span><span class="src-doc">&nbsp;&nbsp;&nbsp;Framework</span></div></li>
<li><div class="src-line"><a name="a10"></a><span class="src-doc">&nbsp;*&nbsp;</span><span class="src-doc-coretag">@author</span><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;aurelien&nbsp;&lt;aurelien@tela-botanica.org&gt;</span></div></li>
<li><div class="src-line"><a name="a11"></a><span class="src-doc">&nbsp;*&nbsp;</span><span class="src-doc-coretag">@copyright</span><span class="src-doc">&nbsp;2009&nbsp;Tela-Botanica</span></div></li>
<li><div class="src-line"><a name="a12"></a><span class="src-doc">&nbsp;*&nbsp;</span><span class="src-doc-coretag">@license</span><span class="src-doc">&nbsp;&nbsp;&nbsp;http://www.cecill.info/licences/Licence_CeCILL_V2-fr.txt&nbsp;Licence&nbsp;CECILL</span></div></li>
<li><div class="src-line"><a name="a13"></a><span class="src-doc">&nbsp;*&nbsp;</span><span class="src-doc-coretag">@version</span><span class="src-doc">&nbsp;&nbsp;&nbsp;SVN:&nbsp;&lt;svn_id&gt;</span></div></li>
<li><div class="src-line"><a name="a14"></a><span class="src-doc">&nbsp;*&nbsp;</span><span class="src-doc-coretag">@link</span><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;/doc/framework/</span></div></li>
<li><div class="src-line"><a name="a15"></a><span class="src-doc">&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a16"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a17"></a><span class="src-key">class&nbsp;</span><a href="../Framework/Log.html">Log</a>&nbsp;<span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a18"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a19"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a20"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Tableau&nbsp;associatif&nbsp;stockant&nbsp;les&nbsp;descripteurs&nbsp;de&nbsp;fichiers</span></div></li>
<li><div class="src-line"><a name="a21"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a22"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">private&nbsp;</span><span class="src-key">static&nbsp;</span><span class="src-var">$fichiersLog&nbsp;</span>=&nbsp;<span class="src-key">array</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a23"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a24"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a25"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Chemin&nbsp;de&nbsp;base&nbsp;du&nbsp;dossier&nbsp;log&nbsp;de&nbsp;l'application</span></div></li>
<li><div class="src-line"><a name="a26"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a27"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">private&nbsp;</span><span class="src-key">static&nbsp;</span><span class="src-var">$cheminLogs&nbsp;</span>=&nbsp;<span class="src-str">''</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a28"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a29"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a30"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Booleen&nbsp;indiquant&nbsp;si&nbsp;l'on&nbsp;peut&nbsp;correctement&nbsp;écrire&nbsp;dans&nbsp;les&nbsp;fichiers&nbsp;de&nbsp;logs</span></div></li>
<li><div class="src-line"><a name="a31"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a32"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">private&nbsp;</span><span class="src-key">static&nbsp;</span><span class="src-var">$droitLogger&nbsp;</span>=&nbsp;<span class="src-id">true</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a33"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a34"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a35"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Zone&nbsp;horaire&nbsp;(pour&nbsp;éviter&nbsp;des&nbsp;avertissements&nbsp;dans&nbsp;les&nbsp;dates)</span></div></li>
<li><div class="src-line"><a name="a36"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a37"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">private&nbsp;</span><span class="src-key">static&nbsp;</span><span class="src-var">$timeZone&nbsp;</span>=&nbsp;<span class="src-str">''</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a38"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a39"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a40"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Taille&nbsp;maximum&nbsp;d'un&nbsp;fichier&nbsp;de&nbsp;log&nbsp;avant&nbsp;que&nbsp;celui&nbsp;ne&nbsp;soit&nbsp;archivé&nbsp;(en&nbsp;octets)</span></div></li>
<li><div class="src-line"><a name="a41"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a42"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">private&nbsp;</span><span class="src-key">static&nbsp;</span><span class="src-var">$tailleMax&nbsp;</span>=&nbsp;<span class="src-num">10000</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a43"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a44"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a45"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;séparateur&nbsp;de&nbsp;chemin</span></div></li>
<li><div class="src-line"><a name="a46"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a47"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">private&nbsp;</span><span class="src-key">static&nbsp;</span><span class="src-var">$sd&nbsp;</span>=&nbsp;<span class="src-id">DIRECTORY_SEPARATOR</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a48"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a49"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a50"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Extension&nbsp;des&nbsp;fichiers&nbsp;de&nbsp;log</span></div></li>
<li><div class="src-line"><a name="a51"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a52"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">private&nbsp;</span><span class="src-key">static&nbsp;</span><span class="src-var">$ext&nbsp;</span>=&nbsp;<span class="src-str">'.log'</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a53"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a54"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a55"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;La&nbsp;classe&nbsp;registre&nbsp;se&nbsp;contient&nbsp;elle-même,&nbsp;(pour&nbsp;le&nbsp;pattern&nbsp;singleton)</span></div></li>
<li><div class="src-line"><a name="a56"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a57"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">private&nbsp;</span><span class="src-key">static&nbsp;</span><span class="src-var">$log</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a58"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a59"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a60"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Constructeur&nbsp;par&nbsp;défaut,&nbsp;privé,&nbsp;car&nbsp;on&nbsp;accède&nbsp;à&nbsp;la&nbsp;classe&nbsp;par&nbsp;le&nbsp;getInstance</span></div></li>
<li><div class="src-line"><a name="a61"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a62"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">private&nbsp;</span><span class="src-key">function&nbsp;</span><span class="src-id">__construct</span><span class="src-sym">(</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a63"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-id">self</span><span class="src-sym">::</span><span class="src-var">$sd&nbsp;</span>=&nbsp;<span class="src-id">Config</span><span class="src-sym">::</span><span class="src-id">get</span><span class="src-sym">(</span><span class="src-str">'ds'</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a64"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-id">self</span><span class="src-sym">::</span><span class="src-var">$cheminLogs&nbsp;</span>=&nbsp;<span class="src-id">Config</span><span class="src-sym">::</span><span class="src-id">get</span><span class="src-sym">(</span><span class="src-str">'chemin_logs'</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a65"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-id">self</span><span class="src-sym">::</span><span class="src-var">$timeZone&nbsp;</span>=&nbsp;<span class="src-id">Config</span><span class="src-sym">::</span><span class="src-id">get</span><span class="src-sym">(</span><span class="src-str">'fw_timezone'</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a66"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-id">self</span><span class="src-sym">::</span><span class="src-var">$tailleMax&nbsp;</span>=&nbsp;<span class="src-id">Config</span><span class="src-sym">::</span><span class="src-id">get</span><span class="src-sym">(</span><span class="src-str">'fw_taille_max_logs'</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a67"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a68"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;gestion&nbsp;de&nbsp;la&nbsp;timezone&nbsp;pour&nbsp;éviter&nbsp;des&nbsp;erreurs</span></div></li>
<li><div class="src-line"><a name="a69"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><a href="http://www.php.net/function_exists">function_exists</a><span class="src-sym">(</span><span class="src-str">'date_default_timezone_set'</span><span class="src-sym">)&nbsp;</span>&amp;&amp;&nbsp;<a href="http://www.php.net/function_exists">function_exists</a><span class="src-sym">(</span><span class="src-str">'date_default_timezone_get'</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a70"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="http://www.php.net/date_default_timezone_set">date_default_timezone_set</a><span class="src-sym">(</span><span class="src-id">self</span><span class="src-sym">::</span><span class="src-var">$timeZone</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a71"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a72"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a73"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-sym">!</span><span class="src-id">is_dir</span><span class="src-sym">(</span><span class="src-id">self</span><span class="src-sym">::</span><span class="src-var">$cheminLogs</span><span class="src-sym">)&nbsp;</span>||&nbsp;<span class="src-sym">!</span><span class="src-id">is_writable</span><span class="src-sym">(</span><span class="src-id">self</span><span class="src-sym">::</span><span class="src-var">$cheminLogs</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a74"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-id">self</span><span class="src-sym">::</span><span class="src-id">desactiverEcriture</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a75"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a76"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a77"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a78"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a79"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Fonction&nbsp;qui&nbsp;renvoie&nbsp;l'instance&nbsp;de&nbsp;classe&nbsp;en&nbsp;assurant&nbsp;son&nbsp;unicité,&nbsp;c'est&nbsp;l'unique&nbsp;méthode&nbsp;qui&nbsp;doit&nbsp;être</span></div></li>
<li><div class="src-line"><a name="a80"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;utilisée&nbsp;pour&nbsp;récupérer&nbsp;l'objet&nbsp;Registre</span></div></li>
<li><div class="src-line"><a name="a81"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@return&nbsp;</span><span class="src-doc-type">Log&nbsp;</span><span class="src-doc">&nbsp;&nbsp;&nbsp;le&nbsp;gestionnaire&nbsp;de&nbsp;log&nbsp;en&nbsp;cours</span></div></li>
<li><div class="src-line"><a name="a82"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a83"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">public&nbsp;</span><span class="src-key">static&nbsp;</span><span class="src-key">function&nbsp;</span><a href="../Framework/Log.html#methodgetInstance">getInstance</a><span class="src-sym">(</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a84"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-id">self</span><span class="src-sym">::</span><span class="src-var">$log&nbsp;</span>instanceof&nbsp;<span class="src-id">Log</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a85"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-id">self</span><span class="src-sym">::</span><span class="src-var">$log</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a86"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a87"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-id">self</span><span class="src-sym">::</span><span class="src-var">$log&nbsp;</span>=&nbsp;<span class="src-key">new&nbsp;</span><span class="src-id">Log</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a88"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-id">self</span><span class="src-sym">::</span><span class="src-var">$log</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a89"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a90"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a91"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a92"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Ajoute&nbsp;une&nbsp;entrée&nbsp;au&nbsp;log&nbsp;spécifié&nbsp;par&nbsp;le&nbsp;paramètre&nbsp;$nomFichier</span></div></li>
<li><div class="src-line"><a name="a93"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@param&nbsp;</span><span class="src-doc-type">string&nbsp;</span><span class="src-doc-var">$nomFichier&nbsp;</span><span class="src-doc">le&nbsp;nom&nbsp;du&nbsp;fichier&nbsp;dans&nbsp;lequel&nbsp;écrire</span></div></li>
<li><div class="src-line"><a name="a94"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a95"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">public&nbsp;</span><span class="src-key">static&nbsp;</span><span class="src-key">function&nbsp;</span><a href="../Framework/Log.html#methodajouterEntree">ajouterEntree</a><span class="src-sym">(</span><span class="src-var">$nomFichier</span><span class="src-sym">,</span><span class="src-var">$entree</span><span class="src-sym">,</span><span class="src-var">$mode</span>=<span class="src-str">'a+'</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a96"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if</span><span class="src-sym">(</span><span class="src-id">self</span><span class="src-sym">::</span><span class="src-var">$droitLogger</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a97"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$date&nbsp;</span>=&nbsp;<span class="src-str">&quot;\n&quot;</span>.<span class="src-str">&quot;\n&quot;</span>.<span class="src-id">date</span><span class="src-sym">(</span><span class="src-str">'d&nbsp;m&nbsp;Y&nbsp;H:i'</span><span class="src-sym">)</span>.<span class="src-str">&quot;\n&quot;&nbsp;</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a98"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a99"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;si&nbsp;le&nbsp;fichier&nbsp;est&nbsp;déjà&nbsp;dans&nbsp;le&nbsp;tableau&nbsp;et&nbsp;qu'on&nbsp;peut&nbsp;y&nbsp;écrire</span></div></li>
<li><div class="src-line"><a name="a100"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if</span><span class="src-sym">(</span><span class="src-id">self</span><span class="src-sym">::</span><span class="src-id">verifierOuvrirFichier</span><span class="src-sym">(</span><span class="src-var">$nomFichier</span><span class="src-sym">,</span><span class="src-var">$mode</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a101"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;on&nbsp;y&nbsp;écrit&nbsp;le&nbsp;message&nbsp;de&nbsp;log</span></div></li>
<li><div class="src-line"><a name="a102"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="http://www.php.net/fwrite">fwrite</a><span class="src-sym">(</span><span class="src-id">self</span><span class="src-sym">::</span><span class="src-var">$fichiersLog</span><span class="src-sym">[</span><span class="src-var">$nomFichier</span><span class="src-sym">]</span><span class="src-sym">,</span><span class="src-var">$date</span>.<span class="src-var">$entree</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a103"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;on&nbsp;vérifie&nbsp;si&nbsp;le&nbsp;fichier&nbsp;ne&nbsp;dépasse&nbsp;pas&nbsp;la&nbsp;taille&nbsp;maximale</span></div></li>
<li><div class="src-line"><a name="a104"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-id">self</span><span class="src-sym">::</span><span class="src-id">verifierTailleFichierOuArchiver</span><span class="src-sym">(</span><span class="src-var">$nomFichier</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a105"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}&nbsp;</span><span class="src-key">else&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a106"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;sinon&nbsp;on&nbsp;interdit&nbsp;l'écriture</span></div></li>
<li><div class="src-line"><a name="a107"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-id">self</span><span class="src-sym">::</span><span class="src-id">desactiverEcriture</span><span class="src-sym">(</span><span class="src-var">$nomFichier</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a108"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a109"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a110"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a111"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a112"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a113"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Vide&nbsp;un&nbsp;fichier&nbsp;log&nbsp;indiqué</span></div></li>
<li><div class="src-line"><a name="a114"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@param&nbsp;</span><span class="src-doc-type">string&nbsp;</span><span class="src-doc-var">$nomFichier&nbsp;</span><span class="src-doc">le&nbsp;nom&nbsp;du&nbsp;fichier&nbsp;à&nbsp;vider</span></div></li>
<li><div class="src-line"><a name="a115"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a116"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">public&nbsp;</span><span class="src-key">static&nbsp;</span><span class="src-key">function&nbsp;</span><a href="../Framework/Log.html#methodviderLog">viderLog</a><span class="src-sym">(</span><span class="src-var">$nomFichier</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a117"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="../Framework/Log.html#methodajouterEntree">ajouterEntree</a><span class="src-sym">(</span><span class="src-var">$nomFichier</span><span class="src-sym">,&nbsp;</span><span class="src-str">''</span><span class="src-sym">,&nbsp;</span><span class="src-str">'w'</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a118"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a119"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a120"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a121"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Vérifie&nbsp;la&nbsp;présence&nbsp;d'un&nbsp;fichier&nbsp;dans&nbsp;le&nbsp;tableau,&nbsp;ses&nbsp;droits&nbsp;d'écriture,</span></div></li>
<li><div class="src-line"><a name="a122"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;l'ouvre&nbsp;si&nbsp;nécessaire</span></div></li>
<li><div class="src-line"><a name="a123"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@param&nbsp;</span><span class="src-doc-type">string&nbsp;</span><span class="src-doc-var">$nomFichier&nbsp;</span><span class="src-doc">le&nbsp;nom&nbsp;du&nbsp;fichier&nbsp;dont&nbsp;on&nbsp;doit&nbsp;vérifier&nbsp;la&nbsp;présence</span></div></li>
<li><div class="src-line"><a name="a124"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@return&nbsp;</span><span class="src-doc-type">boolean&nbsp;</span><span class="src-doc">true&nbsp;si&nbsp;le&nbsp;fichier&nbsp;est&nbsp;ouvert&nbsp;ou&nbsp;maintenant&nbsp;accessible,&nbsp;false&nbsp;sinon</span></div></li>
<li><div class="src-line"><a name="a125"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a126"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">public&nbsp;</span><span class="src-key">static&nbsp;</span><span class="src-key">function&nbsp;</span><a href="../Framework/Log.html#methodverifierOuvrirFichier">verifierOuvrirFichier</a><span class="src-sym">(</span><span class="src-var">$nomFichier</span><span class="src-sym">,</span><span class="src-var">$mode</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a127"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;le&nbsp;fichier&nbsp;est&nbsp;il&nbsp;déjà&nbsp;ouvert&nbsp;?</span></div></li>
<li><div class="src-line"><a name="a128"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><a href="http://www.php.net/in_array">in_array</a><span class="src-sym">(</span><span class="src-var">$nomFichier</span><span class="src-sym">,&nbsp;</span><span class="src-id">self</span><span class="src-sym">::</span><span class="src-var">$fichiersLog</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a129"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;si&nbsp;oui&nbsp;peut&nbsp;on&nbsp;y&nbsp;écrire&nbsp;?</span></div></li>
<li><div class="src-line"><a name="a130"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-id">is_writable</span><span class="src-sym">(</span><span class="src-id">self</span><span class="src-sym">::</span><span class="src-var">$cheminLogs</span>.<span class="src-var">$nomFichier</span>.<span class="src-id">self</span><span class="src-sym">::</span><span class="src-var">$ext</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a131"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;si&nbsp;oui&nbsp;on&nbsp;renvoie&nbsp;le&nbsp;descripteur</span></div></li>
<li><div class="src-line"><a name="a132"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-id">true</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a133"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a134"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-id">false</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a135"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}&nbsp;</span><span class="src-key">else&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a136"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;sinon&nbsp;on&nbsp;l'ouvre</span></div></li>
<li><div class="src-line"><a name="a137"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$fp&nbsp;</span>=&nbsp;<span class="src-sym">@</span><a href="http://www.php.net/fopen">fopen</a><span class="src-sym">(</span><span class="src-id">self</span><span class="src-sym">::</span><span class="src-var">$cheminLogs</span>.<span class="src-var">$nomFichier</span>.<span class="src-id">self</span><span class="src-sym">::</span><span class="src-var">$ext</span><span class="src-sym">,</span><span class="src-var">$mode</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a138"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;si&nbsp;l'ouverture&nbsp;a&nbsp;réussi&nbsp;et&nbsp;si&nbsp;le&nbsp;fichier&nbsp;a&nbsp;les&nbsp;droits&nbsp;d'écriture</span></div></li>
<li><div class="src-line"><a name="a139"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$fp&nbsp;</span>&amp;&amp;&nbsp;<span class="src-id">is_writable</span><span class="src-sym">(</span><span class="src-id">self</span><span class="src-sym">::</span><span class="src-var">$cheminLogs</span>.<span class="src-var">$nomFichier</span>.<span class="src-id">self</span><span class="src-sym">::</span><span class="src-var">$ext</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a140"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;si&nbsp;oui&nbsp;on&nbsp;renvoie&nbsp;le&nbsp;descripteur&nbsp;qu'on&nbsp;ajoute&nbsp;au&nbsp;tableau</span></div></li>
<li><div class="src-line"><a name="a141"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-id">self</span><span class="src-sym">::</span><span class="src-var">$fichiersLog</span><span class="src-sym">[</span><span class="src-var">$nomFichier</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-var">$fp</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a142"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-id">true</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a143"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a144"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-id">false</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a145"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a146"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a147"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a148"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a149"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Vérifie&nbsp;la&nbsp;taille&nbsp;d'un&nbsp;fichier&nbsp;donné&nbsp;et&nbsp;si&nbsp;celle&nbsp;ci&nbsp;est&nbsp;trop&nbsp;importante</span></div></li>
<li><div class="src-line"><a name="a150"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;archive&nbsp;le&nbsp;fichier&nbsp;de&nbsp;log</span></div></li>
<li><div class="src-line"><a name="a151"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@param&nbsp;</span><span class="src-doc-type">string&nbsp;</span><span class="src-doc-var">$nomFichier&nbsp;</span><span class="src-doc">nom&nbsp;du&nbsp;fichier&nbsp;à&nbsp;vérifier</span></div></li>
<li><div class="src-line"><a name="a152"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a153"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">private&nbsp;</span><span class="src-key">static&nbsp;</span><span class="src-key">function&nbsp;</span><span class="src-id">verifierTailleFichierOuArchiver</span><span class="src-sym">(</span><span class="src-var">$nomFichier</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a154"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if</span><span class="src-sym">(</span><a href="http://www.php.net/filesize">filesize</a><span class="src-sym">(</span><span class="src-id">self</span><span class="src-sym">::</span><span class="src-var">$cheminLogs</span>.<span class="src-var">$nomFichier</span>.<span class="src-id">self</span><span class="src-sym">::</span><span class="src-var">$ext</span><span class="src-sym">)&nbsp;</span>&gt;&nbsp;<span class="src-id">self</span><span class="src-sym">::</span><span class="src-var">$tailleMax</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a155"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-id">rename</span><span class="src-sym">(</span><span class="src-id">self</span><span class="src-sym">::</span><span class="src-var">$cheminLogs</span>.<span class="src-var">$nomFichier</span>.<span class="src-id">self</span><span class="src-sym">::</span><span class="src-var">$ext</span><span class="src-sym">,</span><span class="src-id">self</span><span class="src-sym">::</span><span class="src-var">$cheminLogs</span>.<span class="src-var">$nomFichier</span>.<span class="src-id">date</span><span class="src-sym">(</span><span class="src-str">'d_m_Y_H:i'</span><span class="src-sym">)</span>.<span class="src-id">self</span><span class="src-sym">::</span><span class="src-var">$ext</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a156"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-id">ajouterEntree</span><span class="src-sym">(</span><span class="src-var">$nomFichier</span><span class="src-sym">,</span><span class="src-str">''</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a157"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a158"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a159"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a160"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a161"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Désactive&nbsp;l'écriture&nbsp;du&nbsp;log&nbsp;et&nbsp;envoie&nbsp;un&nbsp;message&nbsp;au&nbsp;gestionnaire&nbsp;d'erreurs</span></div></li>
<li><div class="src-line"><a name="a162"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@param&nbsp;</span><span class="src-doc-type">string&nbsp;</span><span class="src-doc-var">$nomFichier&nbsp;</span><span class="src-doc">le&nbsp;nom&nbsp;du&nbsp;fichier&nbsp;qui&nbsp;a&nbsp;causé&nbsp;l'erreur</span></div></li>
<li><div class="src-line"><a name="a163"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a164"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">private&nbsp;</span><span class="src-key">static&nbsp;</span><span class="src-key">function&nbsp;</span><span class="src-id">desactiverEcriture</span><span class="src-sym">(</span><span class="src-var">$nomFichier&nbsp;</span>=&nbsp;<span class="src-str">''</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a165"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-id">self</span><span class="src-sym">::</span><span class="src-var">$droitLogger&nbsp;</span>=&nbsp;<span class="src-id">false</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a166"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$nomFichier&nbsp;</span>!=&nbsp;<span class="src-str">''</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a167"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$fichierDossier&nbsp;</span>=&nbsp;<span class="src-str">'fichier&nbsp;'</span>.<span class="src-var">$nomFichier&nbsp;</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a168"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}&nbsp;</span><span class="src-key">else&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a169"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$fichierDossier&nbsp;</span>=&nbsp;<span class="src-str">'dossier&nbsp;des&nbsp;logs'</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a170"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a171"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$message&nbsp;</span>=&nbsp;<span class="src-str">'Écriture&nbsp;impossible&nbsp;dans&nbsp;le&nbsp;'</span>.<span class="src-var">$fichierDossier</span>.<span class="src-str">',&nbsp;Assurez-vous&nbsp;des&nbsp;droits&nbsp;du&nbsp;dossier&nbsp;et&nbsp;des&nbsp;fichiers'</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a172"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$e&nbsp;</span>=&nbsp;<span class="src-key">new&nbsp;</span><span class="src-id">ErrorException</span><span class="src-sym">(</span><span class="src-var">$message</span><span class="src-sym">,&nbsp;</span><span class="src-num">0</span><span class="src-sym">,&nbsp;</span><span class="src-id">E_USER_WARNING</span><span class="src-sym">,&nbsp;</span>__FILE__<span class="src-sym">,&nbsp;</span>__LINE__<span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a173"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-id"><a href="../Framework/GestionnaireException.html">GestionnaireException</a></span><span class="src-sym">::</span><a href="../Framework/GestionnaireException.html#methodgererException">gererException</a><span class="src-sym">(</span><span class="src-var">$e</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a174"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a175"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a176"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a177"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;destructeur&nbsp;de&nbsp;classe,&nbsp;ferme&nbsp;les&nbsp;descripteurs&nbsp;ouverts</span></div></li>
<li><div class="src-line"><a name="a178"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a179"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">public&nbsp;</span><span class="src-key">function&nbsp;</span><a href="../Framework/Log.html#method__destruct">__destruct</a><span class="src-sym">(</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a180"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">foreach</span><span class="src-sym">(</span><span class="src-id">self</span><span class="src-sym">::</span><span class="src-var">$fichiersLog&nbsp;</span><span class="src-key">as&nbsp;</span><span class="src-var">$nomFichier&nbsp;</span>=&gt;&nbsp;<span class="src-var">$fp</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a181"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-id">fclose</span><span class="src-sym">(</span><span class="src-var">$fp</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a182"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a183"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a184"></a><span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a185"></a><span class="src-php">?&gt;</span></div></li>
</ol></div>
</div>
<p class="notes" id="credit">
Documentation generated on Thu, 04 Mar 2010 19:27:23 +0100 by <a href="http://www.phpdoc.org" target="_blank">phpDocumentor 1.4.3</a>
</p>
</body>
</html>
/tags/v0.3-aleaume/doc/HTMLframesConverter/__filesource/fsource_Framework__Url.php.html
New file
0,0 → 1,779
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<!-- template designed by Marco Von Ballmoos -->
<title>File Source for Url.php</title>
<meta http-equiv='Content-Type' content='text/html; charset=UTF-8'/>
<link rel="stylesheet" href="../media/stylesheet.css" />
</head>
<body>
<h1>Source for file Url.php</h1>
<p>Documentation is available at <a href="../Framework/_Url.php.html">Url.php</a></p>
<div class="src-code">
<div class="src-code"><ol><li><div class="src-line"><a name="a1"></a><span class="src-php">&lt;?php</span></div></li>
<li><div class="src-line"><a name="a2"></a><span class="src-comm">//&nbsp;declare(encoding='UTF-8');</span></div></li>
<li><div class="src-line"><a name="a3"></a><span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a4"></a><span class="src-doc">*&nbsp;classe&nbsp;Url,&nbsp;gérant&nbsp;le&nbsp;découpage&nbsp;des&nbsp;paramètres,&nbsp;leurs&nbsp;modification&nbsp;etc...</span></div></li>
<li><div class="src-line"><a name="a5"></a><span class="src-doc">*&nbsp;Traduction&nbsp;et&nbsp;conversion&nbsp;d'une&nbsp;classe&nbsp;(NET_Url2)&nbsp;issue&nbsp;de&nbsp;Pear</span></div></li>
<li><div class="src-line"><a name="a6"></a><span class="src-doc">*</span></div></li>
<li><div class="src-line"><a name="a7"></a><span class="src-doc">*&nbsp;</span><span class="src-doc-coretag">@category</span><span class="src-doc">&nbsp;&nbsp;Php5</span></div></li>
<li><div class="src-line"><a name="a8"></a><span class="src-doc">*&nbsp;</span><span class="src-doc-coretag">@package</span><span class="src-doc">&nbsp;&nbsp;&nbsp;Framework</span></div></li>
<li><div class="src-line"><a name="a9"></a><span class="src-doc">//&nbsp;Auteur&nbsp;principal</span></div></li>
<li><div class="src-line"><a name="a10"></a><span class="src-doc">*&nbsp;</span><span class="src-doc-coretag">@author</span><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;Christian&nbsp;Schmidt&nbsp;&lt;schmidt@php.net&gt;</span></div></li>
<li><div class="src-line"><a name="a11"></a><span class="src-doc">//&nbsp;Autre&nbsp;auteurs</span></div></li>
<li><div class="src-line"><a name="a12"></a><span class="src-doc">*&nbsp;</span><span class="src-doc-coretag">@author</span><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;Aurélien&nbsp;PERONNET&nbsp;&lt;aurelien@tela-botanica.org&gt;</span></div></li>
<li><div class="src-line"><a name="a13"></a><span class="src-doc">*&nbsp;</span><span class="src-doc-coretag">@author</span><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;Jean-Pascal&nbsp;MILCENT&nbsp;&lt;jpm@tela-botanica.org&gt;</span></div></li>
<li><div class="src-line"><a name="a14"></a><span class="src-doc">*&nbsp;</span><span class="src-doc-coretag">@copyright</span><span class="src-doc">&nbsp;2009&nbsp;Tela-Botanica</span></div></li>
<li><div class="src-line"><a name="a15"></a><span class="src-doc">*&nbsp;</span><span class="src-doc-coretag">@license</span><span class="src-doc">&nbsp;&nbsp;&nbsp;http://www.cecill.info/licences/Licence_CeCILL_V2-fr.txt&nbsp;Licence&nbsp;CECILL</span></div></li>
<li><div class="src-line"><a name="a16"></a><span class="src-doc">*&nbsp;</span><span class="src-doc-coretag">@license</span><span class="src-doc">&nbsp;&nbsp;&nbsp;http://www.gnu.org/licenses/gpl.html&nbsp;Licence&nbsp;GNU-GPL</span></div></li>
<li><div class="src-line"><a name="a17"></a><span class="src-doc">*&nbsp;</span><span class="src-doc-coretag">@version</span><span class="src-doc">&nbsp;&nbsp;&nbsp;SVN:&nbsp;$Id:&nbsp;Url.php&nbsp;150&nbsp;2010-03-03&nbsp;15:49:06Z&nbsp;jpm&nbsp;$</span></div></li>
<li><div class="src-line"><a name="a18"></a><span class="src-doc">*&nbsp;</span><span class="src-doc-coretag">@link</span><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;/doc/framework/</span></div></li>
<li><div class="src-line"><a name="a19"></a><span class="src-doc">*</span></div></li>
<li><div class="src-line"><a name="a20"></a><span class="src-doc">*/</span></div></li>
<li><div class="src-line"><a name="a21"></a><span class="src-key">class&nbsp;</span><a href="../Framework/Url.html">Url</a></div></li>
<li><div class="src-line"><a name="a22"></a><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a23"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a24"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Parsing&nbsp;strict&nbsp;dans&nbsp;resoudre()&nbsp;(voir&nbsp;RFC&nbsp;3986,&nbsp;section&nbsp;5.2.2).&nbsp;Par&nbsp;défaut</span></div></li>
<li><div class="src-line"><a name="a25"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;à&nbsp;true.</span></div></li>
<li><div class="src-line"><a name="a26"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a27"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">const&nbsp;</span><span class="src-id">OPTION_STRICTE&nbsp;</span>=&nbsp;<span class="src-str">'strict'</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a28"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a29"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a30"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Répresenter&nbsp;les&nbsp;tableaux&nbsp;dans&nbsp;les&nbsp;requêtes&nbsp;en&nbsp;utilisant&nbsp;la&nbsp;notation&nbsp;php&nbsp;[].&nbsp;Par&nbsp;défaut&nbsp;à&nbsp;true.</span></div></li>
<li><div class="src-line"><a name="a31"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a32"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">const&nbsp;</span><span class="src-id">OPTION_UTILISER_CROCHETS&nbsp;</span>=&nbsp;<span class="src-str">'use_brackets'</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a33"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a34"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a35"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;URL-encoder&nbsp;les&nbsp;clés&nbsp;des&nbsp;variables&nbsp;dans&nbsp;les&nbsp;requêtes.&nbsp;Par&nbsp;défaut&nbsp;à&nbsp;true.</span></div></li>
<li><div class="src-line"><a name="a36"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a37"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">const&nbsp;</span><span class="src-id">OPTION_ENCODER_CLES&nbsp;</span>=&nbsp;<span class="src-str">'encode_keys'</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a38"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a39"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a40"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Séparateurs&nbsp;de&nbsp;variables&nbsp;lors&nbsp;du&nbsp;parsing&nbsp;de&nbsp;la&nbsp;requête.&nbsp;Chaque&nbsp;caractère</span></div></li>
<li><div class="src-line"><a name="a41"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;est&nbsp;considéré&nbsp;comme&nbsp;un&nbsp;séparateur.&nbsp;Par&nbsp;défaut,&nbsp;spécifié&nbsp;par&nbsp;le&nbsp;paramêtre</span></div></li>
<li><div class="src-line"><a name="a42"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;arg_separator.input&nbsp;dans&nbsp;php.ini&nbsp;(par&nbsp;défaut&nbsp;&quot;&amp;&quot;).</span></div></li>
<li><div class="src-line"><a name="a43"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a44"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">const&nbsp;</span><span class="src-id">OPTION_SEPARATEUR_ENTREE&nbsp;</span>=&nbsp;<span class="src-str">'input_separator'</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a45"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a46"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a47"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Séparateur&nbsp;de&nbsp;variables&nbsp;lors&nbsp;de&nbsp;la&nbsp;génération&nbsp;de&nbsp;la&nbsp;requête.&nbsp;Par&nbsp;défaut,&nbsp;spécifié</span></div></li>
<li><div class="src-line"><a name="a48"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;par&nbsp;le&nbsp;paramètre&nbsp;arg_separator.output&nbsp;dans&nbsp;php.ini&nbsp;(par&nbsp;défaut&nbsp;&quot;&amp;&quot;).</span></div></li>
<li><div class="src-line"><a name="a49"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a50"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">const&nbsp;</span><span class="src-id">OPTION_SEPARATEUR_SORTIE&nbsp;</span>=&nbsp;<span class="src-str">'output_separator'</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a51"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a52"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a53"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Options&nbsp;par&nbsp;défaut&nbsp;correspondant&nbsp;au&nbsp;comportement&nbsp;de&nbsp;php</span></div></li>
<li><div class="src-line"><a name="a54"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;vis&nbsp;à&nbsp;vis&nbsp;de&nbsp;$_GET</span></div></li>
<li><div class="src-line"><a name="a55"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a56"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">private&nbsp;</span><span class="src-var">$options&nbsp;</span>=&nbsp;<span class="src-key">array</span><span class="src-sym">(</span></div></li>
<li><div class="src-line"><a name="a57"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-id">self</span><span class="src-sym">::</span><span class="src-id">OPTION_STRICTE&nbsp;</span>=&gt;&nbsp;<span class="src-id">true</span><span class="src-sym">,</span></div></li>
<li><div class="src-line"><a name="a58"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-id">self</span><span class="src-sym">::</span><span class="src-id">OPTION_UTILISER_CROCHETS&nbsp;</span>=&gt;&nbsp;<span class="src-id">true</span><span class="src-sym">,</span></div></li>
<li><div class="src-line"><a name="a59"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-id">self</span><span class="src-sym">::</span><span class="src-id">OPTION_ENCODER_CLES&nbsp;</span>=&gt;&nbsp;<span class="src-id">true</span><span class="src-sym">,</span></div></li>
<li><div class="src-line"><a name="a60"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-id">self</span><span class="src-sym">::</span><span class="src-id">OPTION_SEPARATEUR_ENTREE&nbsp;</span>=&gt;&nbsp;<span class="src-str">'x&amp;'</span><span class="src-sym">,</span></div></li>
<li><div class="src-line"><a name="a61"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-id">self</span><span class="src-sym">::</span><span class="src-id">OPTION_SEPARATEUR_SORTIE&nbsp;</span>=&gt;&nbsp;<span class="src-str">'x&amp;'</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a62"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a63"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a64"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@var&nbsp;</span><span class="src-doc">&nbsp;</span><span class="src-doc-type">string</span><span class="src-doc">|</span><span class="src-doc-type">bool</span></div></li>
<li><div class="src-line"><a name="a65"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a66"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">private&nbsp;</span><span class="src-var">$schema&nbsp;</span>=&nbsp;<span class="src-id">false</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a67"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a68"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a69"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@var&nbsp;</span><span class="src-doc">&nbsp;</span><span class="src-doc-type">string</span><span class="src-doc">|</span><span class="src-doc-type">bool</span></div></li>
<li><div class="src-line"><a name="a70"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a71"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">private&nbsp;</span><span class="src-var">$infoUtilisateur&nbsp;</span>=&nbsp;<span class="src-id">false</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a72"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a73"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a74"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@var&nbsp;</span><span class="src-doc">&nbsp;</span><span class="src-doc-type">string</span><span class="src-doc">|</span><span class="src-doc-type">bool</span></div></li>
<li><div class="src-line"><a name="a75"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a76"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">private&nbsp;</span><span class="src-var">$hote&nbsp;</span>=&nbsp;<span class="src-id">false</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a77"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a78"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a79"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@var&nbsp;</span><span class="src-doc">&nbsp;</span><span class="src-doc-type">int</span><span class="src-doc">|</span><span class="src-doc-type">bool</span></div></li>
<li><div class="src-line"><a name="a80"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a81"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">private&nbsp;</span><span class="src-var">$port&nbsp;</span>=&nbsp;<span class="src-id">false</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a82"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a83"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a84"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@var&nbsp;</span><span class="src-doc">&nbsp;</span><span class="src-doc-type">string&nbsp;</span></div></li>
<li><div class="src-line"><a name="a85"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a86"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">private&nbsp;</span><span class="src-var">$chemin&nbsp;</span>=&nbsp;<span class="src-str">''</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a87"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a88"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a89"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@var&nbsp;</span><span class="src-doc">&nbsp;</span><span class="src-doc-type">string</span><span class="src-doc">|</span><span class="src-doc-type">bool</span></div></li>
<li><div class="src-line"><a name="a90"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a91"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">private&nbsp;</span><span class="src-var">$requete&nbsp;</span>=&nbsp;<span class="src-id">false</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a92"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a93"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a94"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@var&nbsp;</span><span class="src-doc">&nbsp;</span><span class="src-doc-type">string</span><span class="src-doc">|</span><span class="src-doc-type">bool</span></div></li>
<li><div class="src-line"><a name="a95"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a96"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">private&nbsp;</span><span class="src-var">$fragment&nbsp;</span>=&nbsp;<span class="src-id">false</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a97"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a98"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a99"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@param&nbsp;</span><span class="src-doc-type">string&nbsp;</span><span class="src-doc-var">$url&nbsp;</span><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;une&nbsp;URL&nbsp;relative&nbsp;ou&nbsp;absolue</span></div></li>
<li><div class="src-line"><a name="a100"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@param&nbsp;</span><span class="src-doc-type">array&nbsp;</span><span class="src-doc">&nbsp;</span><span class="src-doc-var">$options&nbsp;</span></div></li>
<li><div class="src-line"><a name="a101"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a102"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">public&nbsp;</span><span class="src-key">function&nbsp;</span><a href="../Framework/Url.html#method__construct">__construct</a><span class="src-sym">(</span><span class="src-var">$url</span><span class="src-sym">,&nbsp;</span><span class="src-var">$options&nbsp;</span>=&nbsp;<span class="src-id">null</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a103"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Framework/Url.html#methodsetOption">setOption</a><span class="src-sym">(</span><span class="src-id">self</span><span class="src-sym">::</span><span class="src-id">OPTION_SEPARATEUR_ENTREE</span><span class="src-sym">,</span></div></li>
<li><div class="src-line"><a name="a104"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-id"><a href="../Framework/Config.html">Config</a></span><span class="src-sym">::</span><a href="../Framework/Config.html#methodget">get</a><span class="src-sym">(</span><span class="src-str">'fw_url_arg_separateur_entree'</span><span class="src-sym">))</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a105"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Framework/Url.html#methodsetOption">setOption</a><span class="src-sym">(</span><span class="src-id">self</span><span class="src-sym">::</span><span class="src-id">OPTION_SEPARATEUR_SORTIE</span><span class="src-sym">,</span></div></li>
<li><div class="src-line"><a name="a106"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-id"><a href="../Framework/Config.html">Config</a></span><span class="src-sym">::</span><a href="../Framework/Config.html#methodget">get</a><span class="src-sym">(</span><span class="src-str">'fw_url_arg_separateur_sortie'</span><span class="src-sym">))</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a107"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><a href="http://www.php.net/is_array">is_array</a><span class="src-sym">(</span><span class="src-var">$options</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a108"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">foreach&nbsp;</span><span class="src-sym">(</span><span class="src-var">$options&nbsp;</span><span class="src-key">as&nbsp;</span><span class="src-var">$nomOption&nbsp;</span>=&gt;&nbsp;<span class="src-var">$valeur</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a109"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Framework/Url.html#methodsetOption">setOption</a><span class="src-sym">(</span><span class="src-var">$nomOption</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a110"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a111"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a112"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a113"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><a href="http://www.php.net/preg_match">preg_match</a><span class="src-sym">(</span><span class="src-str">'@^([a-z][a-z0-9.+-]*):@i'</span><span class="src-sym">,&nbsp;</span><span class="src-var">$url</span><span class="src-sym">,&nbsp;</span><span class="src-var">$reg</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a114"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">schema&nbsp;</span>=&nbsp;<span class="src-var">$reg</span><span class="src-sym">[</span><span class="src-num">1</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a115"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$url&nbsp;</span>=&nbsp;<a href="http://www.php.net/substr">substr</a><span class="src-sym">(</span><span class="src-var">$url</span><span class="src-sym">,&nbsp;</span><a href="http://www.php.net/strlen">strlen</a><span class="src-sym">(</span><span class="src-var">$reg</span><span class="src-sym">[</span><span class="src-num">0</span><span class="src-sym">]</span><span class="src-sym">))</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a116"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a117"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a118"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><a href="http://www.php.net/preg_match">preg_match</a><span class="src-sym">(</span><span class="src-str">'@^//([^/#?]+)@'</span><span class="src-sym">,&nbsp;</span><span class="src-var">$url</span><span class="src-sym">,&nbsp;</span><span class="src-var">$reg</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a119"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Framework/Url.html#methodsetAutorite">setAutorite</a><span class="src-sym">(</span><span class="src-var">$reg</span><span class="src-sym">[</span><span class="src-num">1</span><span class="src-sym">]</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a120"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$url&nbsp;</span>=&nbsp;<a href="http://www.php.net/substr">substr</a><span class="src-sym">(</span><span class="src-var">$url</span><span class="src-sym">,&nbsp;</span><a href="http://www.php.net/strlen">strlen</a><span class="src-sym">(</span><span class="src-var">$reg</span><span class="src-sym">[</span><span class="src-num">0</span><span class="src-sym">]</span><span class="src-sym">))</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a121"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a122"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a123"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$i&nbsp;</span>=&nbsp;<a href="http://www.php.net/strcspn">strcspn</a><span class="src-sym">(</span><span class="src-var">$url</span><span class="src-sym">,&nbsp;</span><span class="src-str">'?#'</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a124"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">chemin&nbsp;</span>=&nbsp;<a href="http://www.php.net/substr">substr</a><span class="src-sym">(</span><span class="src-var">$url</span><span class="src-sym">,&nbsp;</span><span class="src-num">0</span><span class="src-sym">,&nbsp;</span><span class="src-var">$i</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a125"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$url&nbsp;</span>=&nbsp;<a href="http://www.php.net/substr">substr</a><span class="src-sym">(</span><span class="src-var">$url</span><span class="src-sym">,&nbsp;</span><span class="src-var">$i</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a126"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a127"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><a href="http://www.php.net/preg_match">preg_match</a><span class="src-sym">(</span><span class="src-str">'@^\?([^#]*)@'</span><span class="src-sym">,&nbsp;</span><span class="src-var">$url</span><span class="src-sym">,&nbsp;</span><span class="src-var">$reg</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a128"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">requete&nbsp;</span>=&nbsp;<span class="src-var">$reg</span><span class="src-sym">[</span><span class="src-num">1</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a129"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$url&nbsp;</span>=&nbsp;<a href="http://www.php.net/substr">substr</a><span class="src-sym">(</span><span class="src-var">$url</span><span class="src-sym">,&nbsp;</span><a href="http://www.php.net/strlen">strlen</a><span class="src-sym">(</span><span class="src-var">$reg</span><span class="src-sym">[</span><span class="src-num">0</span><span class="src-sym">]</span><span class="src-sym">))</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a130"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a131"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a132"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$url</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a133"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">fragment&nbsp;</span>=&nbsp;<a href="http://www.php.net/substr">substr</a><span class="src-sym">(</span><span class="src-var">$url</span><span class="src-sym">,&nbsp;</span><span class="src-num">1</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a134"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a135"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a136"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a137"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a138"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Retourne&nbsp;le&nbsp;schéma,&nbsp;c.a.d.&nbsp;&quot;http&quot;&nbsp;ou&nbsp;&quot;urn&quot;,&nbsp;ou&nbsp;false&nbsp;si&nbsp;aucun&nbsp;schéma&nbsp;n'est</span></div></li>
<li><div class="src-line"><a name="a139"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;spécifié,&nbsp;i.e.&nbsp;l'url&nbsp;est&nbsp;une&nbsp;url&nbsp;relative</span></div></li>
<li><div class="src-line"><a name="a140"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*</span></div></li>
<li><div class="src-line"><a name="a141"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@return&nbsp;</span><span class="src-doc">&nbsp;</span><span class="src-doc-type">string</span><span class="src-doc">|</span><span class="src-doc-type">bool</span></div></li>
<li><div class="src-line"><a name="a142"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a143"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">public&nbsp;</span><span class="src-key">function&nbsp;</span><a href="../Framework/Url.html#methodgetSchema">getSchema</a><span class="src-sym">(</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a144"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">schema</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a145"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a146"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a147"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a148"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@param&nbsp;</span><span class="src-doc-type">string</span><span class="src-doc">|</span><span class="src-doc-type">bool</span><span class="src-doc-var">$schema&nbsp;</span></div></li>
<li><div class="src-line"><a name="a149"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*</span></div></li>
<li><div class="src-line"><a name="a150"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@return&nbsp;</span><span class="src-doc-type">void&nbsp;</span></div></li>
<li><div class="src-line"><a name="a151"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@see</span><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;getSchema()</span></div></li>
<li><div class="src-line"><a name="a152"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a153"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">public&nbsp;</span><span class="src-key">function&nbsp;</span><a href="../Framework/Url.html#methodsetSchema">setSchema</a><span class="src-sym">(</span><span class="src-var">$schema</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a154"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">schema&nbsp;</span>=&nbsp;<span class="src-var">$schema</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a155"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a156"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a157"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a158"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;renvoie&nbsp;la&nbsp;partie&nbsp;user&nbsp;de&nbsp;la&nbsp;partie&nbsp;infoUtilisateur&nbsp;(partie&nbsp;précédant&nbsp;le&nbsp;premier</span></div></li>
<li><div class="src-line"><a name="a159"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;&nbsp;&quot;:&quot;),&nbsp;ou&nbsp;false&nbsp;si&nbsp;aucune&nbsp;partie&nbsp;infoUtilisateur&nbsp;n'est&nbsp;définie.</span></div></li>
<li><div class="src-line"><a name="a160"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*</span></div></li>
<li><div class="src-line"><a name="a161"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@return&nbsp;</span><span class="src-doc">&nbsp;</span><span class="src-doc-type">string</span><span class="src-doc">|</span><span class="src-doc-type">bool</span></div></li>
<li><div class="src-line"><a name="a162"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a163"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">public&nbsp;</span><span class="src-key">function&nbsp;</span><a href="../Framework/Url.html#methodgetUtilisateur">getUtilisateur</a><span class="src-sym">(</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a164"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">infoUtilisateur&nbsp;</span>!==&nbsp;<span class="src-id">false&nbsp;</span>?&nbsp;<a href="http://www.php.net/preg_replace">preg_replace</a><span class="src-sym">(</span><span class="src-str">'@:.*$@'</span><span class="src-sym">,&nbsp;</span><span class="src-str">''</span><span class="src-sym">,&nbsp;</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">infoUtilisateur</span><span class="src-sym">)&nbsp;</span>:&nbsp;<span class="src-id">false</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a165"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a166"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a167"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a168"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;renvoie&nbsp;la&nbsp;partie&nbsp;mot&nbsp;de&nbsp;passe&nbsp;de&nbsp;la&nbsp;partie&nbsp;infoUtilisateur&nbsp;(partie&nbsp;après&nbsp;le&nbsp;premier</span></div></li>
<li><div class="src-line"><a name="a169"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;&nbsp;&quot;:&quot;),&nbsp;,&nbsp;ou&nbsp;false&nbsp;si&nbsp;aucune&nbsp;partie&nbsp;infoUtilisateur&nbsp;n'est&nbsp;définie&nbsp;(i.e.&nbsp;l'URL&nbsp;ne&nbsp;contient</span></div></li>
<li><div class="src-line"><a name="a170"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;pas&nbsp;de&nbsp;&quot;@&quot;&nbsp;en&nbsp;face&nbsp;du&nbsp;nom&nbsp;d'hôte)&nbsp;ou&nbsp;si&nbsp;la&nbsp;partie&nbsp;infoUtilisateur&nbsp;ne&nbsp;contient&nbsp;pas&nbsp;de&nbsp;&quot;:&quot;.</span></div></li>
<li><div class="src-line"><a name="a171"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*</span></div></li>
<li><div class="src-line"><a name="a172"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@return&nbsp;</span><span class="src-doc">&nbsp;</span><span class="src-doc-type">string</span><span class="src-doc">|</span><span class="src-doc-type">bool</span></div></li>
<li><div class="src-line"><a name="a173"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a174"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">public&nbsp;</span><span class="src-key">function&nbsp;</span><a href="../Framework/Url.html#methodgetMotDePasse">getMotDePasse</a><span class="src-sym">(</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a175"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">infoUtilisateur&nbsp;</span>!==&nbsp;<span class="src-id">false&nbsp;</span>?&nbsp;<a href="http://www.php.net/substr">substr</a><span class="src-sym">(</span><a href="http://www.php.net/strstr">strstr</a><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">infoUtilisateur</span><span class="src-sym">,&nbsp;</span><span class="src-str">':'</span><span class="src-sym">)</span><span class="src-sym">,&nbsp;</span><span class="src-num">1</span><span class="src-sym">)&nbsp;</span>:&nbsp;<span class="src-id">false</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a176"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a177"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a178"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a179"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Renvoie&nbsp;la&nbsp;partie&nbsp;userinfio,&nbsp;ou&nbsp;false&nbsp;si&nbsp;celle-ci&nbsp;n'existe&nbsp;pas,&nbsp;i.e.&nbsp;si&nbsp;la&nbsp;partie</span></div></li>
<li><div class="src-line"><a name="a180"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;autorité&nbsp;ne&nbsp;contient&nbsp;pas&nbsp;de&nbsp;&quot;@&quot;</span></div></li>
<li><div class="src-line"><a name="a181"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*</span></div></li>
<li><div class="src-line"><a name="a182"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@return&nbsp;</span><span class="src-doc">&nbsp;</span><span class="src-doc-type">string</span><span class="src-doc">|</span><span class="src-doc-type">bool</span></div></li>
<li><div class="src-line"><a name="a183"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a184"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">public&nbsp;</span><span class="src-key">function&nbsp;</span><a href="../Framework/Url.html#methodgetInfoUtilisateur">getInfoUtilisateur</a><span class="src-sym">(</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a185"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">infoUtilisateur</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a186"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a187"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a188"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a189"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Setteur&nbsp;pour&nbsp;la&nbsp;partie&nbsp;infoUtilisateur.&nbsp;Si&nbsp;deux&nbsp;argument&nbsp;sont&nbsp;passé,&nbsp;ils&nbsp;sont&nbsp;combinés</span></div></li>
<li><div class="src-line"><a name="a190"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;dans&nbsp;la&nbsp;partie&nbsp;infoUtilisateur&nbsp;de&nbsp;cette&nbsp;manière&nbsp;username&nbsp;&quot;:&quot;&nbsp;password.</span></div></li>
<li><div class="src-line"><a name="a191"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*</span></div></li>
<li><div class="src-line"><a name="a192"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@param&nbsp;</span><span class="src-doc-type">string</span><span class="src-doc">|</span><span class="src-doc-type">bool</span><span class="src-doc-var">$infoUtilisateur&nbsp;</span><span class="src-doc">infoUtilisateur&nbsp;ou&nbsp;username</span></div></li>
<li><div class="src-line"><a name="a193"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@param&nbsp;</span><span class="src-doc-type">string</span><span class="src-doc">|</span><span class="src-doc-type">bool</span><span class="src-doc-var">$motDePasse&nbsp;</span></div></li>
<li><div class="src-line"><a name="a194"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*</span></div></li>
<li><div class="src-line"><a name="a195"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@return&nbsp;</span><span class="src-doc-type">void&nbsp;</span></div></li>
<li><div class="src-line"><a name="a196"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a197"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">public&nbsp;</span><span class="src-key">function&nbsp;</span><a href="../Framework/Url.html#methodsetInfoUtilisateur">setInfoUtilisateur</a><span class="src-sym">(</span><span class="src-var">$infoUtilisateur</span><span class="src-sym">,&nbsp;</span><span class="src-var">$motDePasse&nbsp;</span>=&nbsp;<span class="src-id">false</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a198"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">infoUtilisateur&nbsp;</span>=&nbsp;<span class="src-var">$infoUtilisateur</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a199"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$motDePasse&nbsp;</span>!==&nbsp;<span class="src-id">false</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a200"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">infoUtilisateur&nbsp;</span>.=&nbsp;<span class="src-str">':'&nbsp;</span>.&nbsp;<span class="src-var">$motDePasse</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a201"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a202"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a203"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a204"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a205"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Renvoie&nbsp;la&nbsp;partie&nbsp;hôte,&nbsp;ou&nbsp;false&nbsp;s'il&nbsp;n'y&nbsp;a&nbsp;pas&nbsp;de&nbsp;partie&nbsp;autorité,&nbsp;c.a.d.</span></div></li>
<li><div class="src-line"><a name="a206"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;l'URL&nbsp;est&nbsp;relative.</span></div></li>
<li><div class="src-line"><a name="a207"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*</span></div></li>
<li><div class="src-line"><a name="a208"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@return&nbsp;</span><span class="src-doc">&nbsp;</span><span class="src-doc-type">string</span><span class="src-doc">|</span><span class="src-doc-type">bool</span></div></li>
<li><div class="src-line"><a name="a209"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a210"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">public&nbsp;</span><span class="src-key">function&nbsp;</span><a href="../Framework/Url.html#methodgetHote">getHote</a><span class="src-sym">(</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a211"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">hote</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a212"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a213"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a214"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a215"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@param&nbsp;</span><span class="src-doc-type">string</span><span class="src-doc">|</span><span class="src-doc-type">bool</span><span class="src-doc-var">$hote&nbsp;</span></div></li>
<li><div class="src-line"><a name="a216"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*</span></div></li>
<li><div class="src-line"><a name="a217"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@return&nbsp;</span><span class="src-doc-type">void&nbsp;</span></div></li>
<li><div class="src-line"><a name="a218"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a219"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">public&nbsp;</span><span class="src-key">function&nbsp;</span><a href="../Framework/Url.html#methodsetHote">setHote</a><span class="src-sym">(</span><span class="src-var">$hote</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a220"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">hote&nbsp;</span>=&nbsp;<span class="src-var">$hote</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a221"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a222"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a223"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a224"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Renvoie&nbsp;le&nbsp;numéro&nbsp;de&nbsp;port,&nbsp;ou&nbsp;false&nbsp;si&nbsp;aucun&nbsp;numéro&nbsp;de&nbsp;port&nbsp;n'est&nbsp;spécifié,</span></div></li>
<li><div class="src-line"><a name="a225"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;i.e.&nbsp;le&nbsp;port&nbsp;par&nbsp;défaut&nbsp;doit&nbsp;utilisé.</span></div></li>
<li><div class="src-line"><a name="a226"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*</span></div></li>
<li><div class="src-line"><a name="a227"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@return&nbsp;</span><span class="src-doc">&nbsp;</span><span class="src-doc-type">int</span><span class="src-doc">|</span><span class="src-doc-type">bool</span></div></li>
<li><div class="src-line"><a name="a228"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a229"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">public&nbsp;</span><span class="src-key">function&nbsp;</span><a href="../Framework/Url.html#methodgetPort">getPort</a><span class="src-sym">(</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a230"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">port</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a231"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a232"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a233"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a234"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@param&nbsp;</span><span class="src-doc-type">int</span><span class="src-doc">|</span><span class="src-doc-type">bool</span><span class="src-doc-var">$port&nbsp;</span></div></li>
<li><div class="src-line"><a name="a235"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*</span></div></li>
<li><div class="src-line"><a name="a236"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@return&nbsp;</span><span class="src-doc-type">void&nbsp;</span></div></li>
<li><div class="src-line"><a name="a237"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a238"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">public&nbsp;</span><span class="src-key">function&nbsp;</span><a href="../Framework/Url.html#methodsetPort">setPort</a><span class="src-sym">(</span><span class="src-var">$port</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a239"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">port&nbsp;</span>=&nbsp;<a href="http://www.php.net/intval">intval</a><span class="src-sym">(</span><span class="src-var">$port</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a240"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a241"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a242"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a243"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Renvoie&nbsp;la&nbsp;partie&nbsp;autorité,&nbsp;i.e.&nbsp;[&nbsp;infoUtilisateur&nbsp;&quot;@&quot;&nbsp;]&nbsp;hote&nbsp;[&nbsp;&quot;:&quot;&nbsp;port&nbsp;],&nbsp;ou</span></div></li>
<li><div class="src-line"><a name="a244"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;false&nbsp;si&nbsp;celle-ci&nbsp;est&nbsp;absente.</span></div></li>
<li><div class="src-line"><a name="a245"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*</span></div></li>
<li><div class="src-line"><a name="a246"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@return&nbsp;</span><span class="src-doc-type">string</span><span class="src-doc">|</span><span class="src-doc-type">bool</span></div></li>
<li><div class="src-line"><a name="a247"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a248"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">public&nbsp;</span><span class="src-key">function&nbsp;</span><a href="../Framework/Url.html#methodgetAutorite">getAutorite</a><span class="src-sym">(</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a249"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-sym">!</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">hote</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a250"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-id">false</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a251"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a252"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a253"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$autorite&nbsp;</span>=&nbsp;<span class="src-str">''</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a254"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a255"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">infoUtilisateur&nbsp;</span>!==&nbsp;<span class="src-id">false</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a256"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$autorite&nbsp;</span>.=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">infoUtilisateur&nbsp;</span>.&nbsp;<span class="src-str">'@'</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a257"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a258"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a259"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$autorite&nbsp;</span>.=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">hote</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a260"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a261"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">port&nbsp;</span>!==&nbsp;<span class="src-id">false</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a262"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$autorite&nbsp;</span>.=&nbsp;<span class="src-str">':'&nbsp;</span>.&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">port</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a263"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a264"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a265"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$autorite</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a266"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a267"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a268"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a269"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@param&nbsp;</span><span class="src-doc-type">string</span><span class="src-doc">|</span><span class="src-doc-type">false</span><span class="src-doc-var">$autorite&nbsp;</span></div></li>
<li><div class="src-line"><a name="a270"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*</span></div></li>
<li><div class="src-line"><a name="a271"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@return&nbsp;</span><span class="src-doc-type">void&nbsp;</span></div></li>
<li><div class="src-line"><a name="a272"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a273"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">public&nbsp;</span><span class="src-key">function&nbsp;</span><a href="../Framework/Url.html#methodsetAutorite">setAutorite</a><span class="src-sym">(</span><span class="src-var">$autorite</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a274"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">user&nbsp;</span>=&nbsp;<span class="src-id">false</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a275"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">pass&nbsp;</span>=&nbsp;<span class="src-id">false</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a276"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">hote&nbsp;</span>=&nbsp;<span class="src-id">false</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a277"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">port&nbsp;</span>=&nbsp;<span class="src-id">false</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a278"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><a href="http://www.php.net/preg_match">preg_match</a><span class="src-sym">(</span><span class="src-str">'@^(([^\@]+)\@)?([^:]+)(:(\d*))?$@'</span><span class="src-sym">,&nbsp;</span><span class="src-var">$autorite</span><span class="src-sym">,&nbsp;</span><span class="src-var">$reg</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a279"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$reg</span><span class="src-sym">[</span><span class="src-num">1</span><span class="src-sym">]</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a280"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">infoUtilisateur&nbsp;</span>=&nbsp;<span class="src-var">$reg</span><span class="src-sym">[</span><span class="src-num">2</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a281"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a282"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a283"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">hote&nbsp;</span>=&nbsp;<span class="src-var">$reg</span><span class="src-sym">[</span><span class="src-num">3</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a284"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span>isset<span class="src-sym">(</span><span class="src-var">$reg</span><span class="src-sym">[</span><span class="src-num">5</span><span class="src-sym">]</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a285"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">port&nbsp;</span>=&nbsp;<a href="http://www.php.net/intval">intval</a><span class="src-sym">(</span><span class="src-var">$reg</span><span class="src-sym">[</span><span class="src-num">5</span><span class="src-sym">]</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a286"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a287"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a288"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a289"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a290"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a291"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Renvoie&nbsp;la&nbsp;partie&nbsp;chemin&nbsp;(chemin)&nbsp;(éventuellement&nbsp;vide).</span></div></li>
<li><div class="src-line"><a name="a292"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*</span></div></li>
<li><div class="src-line"><a name="a293"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@return&nbsp;</span><span class="src-doc-type">string&nbsp;</span></div></li>
<li><div class="src-line"><a name="a294"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a295"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">public&nbsp;</span><span class="src-key">function&nbsp;</span><a href="../Framework/Url.html#methodgetChemin">getChemin</a><span class="src-sym">(</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a296"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">chemin</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a297"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a298"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a299"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a300"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@param&nbsp;</span><span class="src-doc-type">string&nbsp;</span><span class="src-doc-var">$chemin&nbsp;</span></div></li>
<li><div class="src-line"><a name="a301"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*</span></div></li>
<li><div class="src-line"><a name="a302"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@return&nbsp;</span><span class="src-doc-type">void&nbsp;</span></div></li>
<li><div class="src-line"><a name="a303"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a304"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">public&nbsp;</span><span class="src-key">function&nbsp;</span><a href="../Framework/Url.html#methodsetChemin">setChemin</a><span class="src-sym">(</span><span class="src-var">$chemin</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a305"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">chemin&nbsp;</span>=&nbsp;<span class="src-var">$chemin</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a306"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a307"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a308"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a309"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;renvoie&nbsp;la&nbsp;chaine&nbsp;de&nbsp;requête&nbsp;(requete&nbsp;string)&nbsp;(sans&nbsp;le&nbsp;premier&nbsp;&quot;?&quot;),&nbsp;ou&nbsp;false&nbsp;si&nbsp;&quot;?&quot;</span></div></li>
<li><div class="src-line"><a name="a310"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;n'est&nbsp;pas&nbsp;présent&nbsp;dans&nbsp;l'url.</span></div></li>
<li><div class="src-line"><a name="a311"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*</span></div></li>
<li><div class="src-line"><a name="a312"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@return&nbsp;</span><span class="src-doc">&nbsp;</span><span class="src-doc-type">string</span><span class="src-doc">|</span><span class="src-doc-type">bool</span></div></li>
<li><div class="src-line"><a name="a313"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@see</span><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;self::getVariablesRequete()</span></div></li>
<li><div class="src-line"><a name="a314"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a315"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">public&nbsp;</span><span class="src-key">function&nbsp;</span><a href="../Framework/Url.html#methodgetRequete">getRequete</a><span class="src-sym">(</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a316"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">requete</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a317"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a318"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a319"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a320"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@param&nbsp;</span><span class="src-doc-type">string</span><span class="src-doc">|</span><span class="src-doc-type">bool</span><span class="src-doc-var">$requete&nbsp;</span></div></li>
<li><div class="src-line"><a name="a321"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*</span></div></li>
<li><div class="src-line"><a name="a322"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@return&nbsp;</span><span class="src-doc-type">void&nbsp;</span></div></li>
<li><div class="src-line"><a name="a323"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@see</span><span class="src-doc">&nbsp;&nbsp;&nbsp;self::setVariablesRequete()</span></div></li>
<li><div class="src-line"><a name="a324"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a325"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">public&nbsp;</span><span class="src-key">function&nbsp;</span><a href="../Framework/Url.html#methodsetRequete">setRequete</a><span class="src-sym">(</span><span class="src-var">$requete</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a326"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">requete&nbsp;</span>=&nbsp;<span class="src-var">$requete</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a327"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a328"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a329"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a330"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Renvoie&nbsp;le&nbsp;nom&nbsp;du&nbsp;fragment,&nbsp;ou&nbsp;false&nbsp;si&nbsp;&quot;#&quot;&nbsp;n'est&nbsp;pas&nbsp;present&nbsp;dans&nbsp;l'URL.</span></div></li>
<li><div class="src-line"><a name="a331"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*</span></div></li>
<li><div class="src-line"><a name="a332"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@return&nbsp;</span><span class="src-doc">&nbsp;</span><span class="src-doc-type">string</span><span class="src-doc">|</span><span class="src-doc-type">bool</span></div></li>
<li><div class="src-line"><a name="a333"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a334"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">public&nbsp;</span><span class="src-key">function&nbsp;</span><a href="../Framework/Url.html#methodgetFragment">getFragment</a><span class="src-sym">(</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a335"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">fragment</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a336"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a337"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a338"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a339"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@param&nbsp;</span><span class="src-doc-type">string</span><span class="src-doc">|</span><span class="src-doc-type">bool</span><span class="src-doc-var">$fragment&nbsp;</span></div></li>
<li><div class="src-line"><a name="a340"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*</span></div></li>
<li><div class="src-line"><a name="a341"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@return&nbsp;</span><span class="src-doc-type">void&nbsp;</span></div></li>
<li><div class="src-line"><a name="a342"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a343"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">public&nbsp;</span><span class="src-key">function&nbsp;</span><a href="../Framework/Url.html#methodsetFragment">setFragment</a><span class="src-sym">(</span><span class="src-var">$fragment</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a344"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">fragment&nbsp;</span>=&nbsp;<span class="src-var">$fragment</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a345"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a346"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a347"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a348"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Renvoie&nbsp;la&nbsp;requete&nbsp;string&nbsp;sous&nbsp;forme&nbsp;d'un&nbsp;tableau&nbsp;de&nbsp;variables&nbsp;telles&nbsp;qu'elles&nbsp;apparaitraient</span></div></li>
<li><div class="src-line"><a name="a349"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;dans&nbsp;le&nbsp;$_GET&nbsp;d'un&nbsp;script&nbsp;PHP</span></div></li>
<li><div class="src-line"><a name="a350"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*</span></div></li>
<li><div class="src-line"><a name="a351"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@return&nbsp;</span><span class="src-doc">&nbsp;</span><span class="src-doc-type">array&nbsp;</span></div></li>
<li><div class="src-line"><a name="a352"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a353"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">public&nbsp;</span><span class="src-key">function&nbsp;</span><a href="../Framework/Url.html#methodgetVariablesRequete">getVariablesRequete</a><span class="src-sym">(</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a354"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$pattern&nbsp;</span>=&nbsp;<span class="src-str">'/'&nbsp;</span>.</div></li>
<li><div class="src-line"><a name="a355"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="http://www.php.net/preg_quote">preg_quote</a><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Framework/Url.html#methodgetOption">getOption</a><span class="src-sym">(</span><span class="src-id">self</span><span class="src-sym">::</span><span class="src-id">OPTION_SEPARATEUR_ENTREE</span><span class="src-sym">)</span><span class="src-sym">,&nbsp;</span><span class="src-str">'/'</span><span class="src-sym">)&nbsp;</span>.</div></li>
<li><div class="src-line"><a name="a356"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-str">'/'</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a357"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$parties&nbsp;&nbsp;&nbsp;</span>=&nbsp;<a href="http://www.php.net/preg_split">preg_split</a><span class="src-sym">(</span><span class="src-var">$pattern</span><span class="src-sym">,&nbsp;</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">requete</span><span class="src-sym">,&nbsp;</span>-<span class="src-num">1</span><span class="src-sym">,&nbsp;</span><span class="src-id">PREG_SPLIT_NO_EMPTY</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a358"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$retour&nbsp;&nbsp;</span>=&nbsp;<span class="src-key">array</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a359"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a360"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">foreach&nbsp;</span><span class="src-sym">(</span><span class="src-var">$parties&nbsp;</span><span class="src-key">as&nbsp;</span><span class="src-var">$partie</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a361"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><a href="http://www.php.net/strpos">strpos</a><span class="src-sym">(</span><span class="src-var">$partie</span><span class="src-sym">,&nbsp;</span><span class="src-str">'='</span><span class="src-sym">)&nbsp;</span>!==&nbsp;<span class="src-id">false</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a362"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;list<span class="src-sym">(</span><span class="src-var">$cle</span><span class="src-sym">,&nbsp;</span><span class="src-var">$valeur</span><span class="src-sym">)&nbsp;</span>=&nbsp;<a href="http://www.php.net/explode">explode</a><span class="src-sym">(</span><span class="src-str">'='</span><span class="src-sym">,&nbsp;</span><span class="src-var">$partie</span><span class="src-sym">,&nbsp;</span><span class="src-num">2</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a363"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}&nbsp;</span><span class="src-key">else&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a364"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$cle&nbsp;&nbsp;&nbsp;</span>=&nbsp;<span class="src-var">$partie</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a365"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$valeur&nbsp;</span>=&nbsp;<span class="src-id">null</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a366"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a367"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a368"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Framework/Url.html#methodgetOption">getOption</a><span class="src-sym">(</span><span class="src-id">self</span><span class="src-sym">::</span><span class="src-id">OPTION_ENCODER_CLES</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a369"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$cle&nbsp;</span>=&nbsp;<a href="http://www.php.net/rawurldecode">rawurldecode</a><span class="src-sym">(</span><span class="src-var">$cle</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a370"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a371"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$valeur&nbsp;</span>=&nbsp;<a href="http://www.php.net/rawurldecode">rawurldecode</a><span class="src-sym">(</span><span class="src-var">$valeur</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a372"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a373"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Framework/Url.html#methodgetOption">getOption</a><span class="src-sym">(</span><span class="src-id">self</span><span class="src-sym">::</span><span class="src-id">OPTION_UTILISER_CROCHETS</span><span class="src-sym">)&nbsp;</span>&amp;&amp;</div></li>
<li><div class="src-line"><a name="a374"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="http://www.php.net/preg_match">preg_match</a><span class="src-sym">(</span><span class="src-str">'#^(.*)\[([0-9a-z_-]*)\]#i'</span><span class="src-sym">,&nbsp;</span><span class="src-var">$cle</span><span class="src-sym">,&nbsp;</span><span class="src-var">$matches</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a375"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a376"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$cle&nbsp;</span>=&nbsp;<span class="src-var">$matches</span><span class="src-sym">[</span><span class="src-num">1</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a377"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$idx&nbsp;</span>=&nbsp;<span class="src-var">$matches</span><span class="src-sym">[</span><span class="src-num">2</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a378"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a379"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;On&nbsp;s'assure&nbsp;que&nbsp;c'est&nbsp;bien&nbsp;un&nbsp;tableau</span></div></li>
<li><div class="src-line"><a name="a380"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-key">empty</span><span class="src-sym">(</span><span class="src-var">$retour</span><span class="src-sym">[</span><span class="src-var">$cle</span><span class="src-sym">]</span><span class="src-sym">)&nbsp;</span>||&nbsp;<span class="src-sym">!</span><a href="http://www.php.net/is_array">is_array</a><span class="src-sym">(</span><span class="src-var">$retour</span><span class="src-sym">[</span><span class="src-var">$cle</span><span class="src-sym">]</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a381"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$retour</span><span class="src-sym">[</span><span class="src-var">$cle</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-key">array</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a382"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a383"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a384"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;Ajout&nbsp;des&nbsp;données</span></div></li>
<li><div class="src-line"><a name="a385"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$idx&nbsp;</span>===&nbsp;<span class="src-str">''</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a386"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$retour</span><span class="src-sym">[</span><span class="src-var">$cle</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-var">$valeur</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a387"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}&nbsp;</span><span class="src-key">else&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a388"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$retour</span><span class="src-sym">[</span><span class="src-var">$cle</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$idx</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-var">$valeur</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a389"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a390"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}&nbsp;</span><span class="src-key">elseif&nbsp;</span><span class="src-sym">(</span><span class="src-sym">!</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Framework/Url.html#methodgetOption">getOption</a><span class="src-sym">(</span><span class="src-id">self</span><span class="src-sym">::</span><span class="src-id">OPTION_UTILISER_CROCHETS</span><span class="src-sym">)</span></div></li>
<li><div class="src-line"><a name="a391"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&amp;&amp;&nbsp;<span class="src-sym">!</span><span class="src-key">empty</span><span class="src-sym">(</span><span class="src-var">$retour</span><span class="src-sym">[</span><span class="src-var">$cle</span><span class="src-sym">]</span><span class="src-sym">)</span></div></li>
<li><div class="src-line"><a name="a392"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a393"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$retour</span><span class="src-sym">[</span><span class="src-var">$cle</span><span class="src-sym">]&nbsp;&nbsp;&nbsp;</span>=&nbsp;(array)&nbsp;<span class="src-var">$retour</span><span class="src-sym">[</span><span class="src-var">$cle</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a394"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$retour</span><span class="src-sym">[</span><span class="src-var">$cle</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-var">$valeur</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a395"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}&nbsp;</span><span class="src-key">else&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a396"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$retour</span><span class="src-sym">[</span><span class="src-var">$cle</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-var">$valeur</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a397"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a398"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a399"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a400"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$retour</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a401"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a402"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a403"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a404"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@param&nbsp;</span><span class="src-doc-type">array&nbsp;</span><span class="src-doc-var">$tableau&nbsp;</span><span class="src-doc">(nom&nbsp;=&gt;&nbsp;valeur)&nbsp;tableau</span></div></li>
<li><div class="src-line"><a name="a405"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*</span></div></li>
<li><div class="src-line"><a name="a406"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@return&nbsp;</span><span class="src-doc-type">void&nbsp;</span></div></li>
<li><div class="src-line"><a name="a407"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a408"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">public&nbsp;</span><span class="src-key">function&nbsp;</span><a href="../Framework/Url.html#methodsetVariablesRequete">setVariablesRequete</a><span class="src-sym">(</span><span class="src-key">array&nbsp;</span><span class="src-var">$tableau</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a409"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-sym">!</span><span class="src-var">$tableau</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a410"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">requete&nbsp;</span>=&nbsp;<span class="src-id">false</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a411"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}&nbsp;</span><span class="src-key">else&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a412"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">foreach&nbsp;</span><span class="src-sym">(</span><span class="src-var">$tableau&nbsp;</span><span class="src-key">as&nbsp;</span><span class="src-var">$nom&nbsp;</span>=&gt;&nbsp;<span class="src-var">$valeur</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a413"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">getOption</span><span class="src-sym">(</span><span class="src-id">self</span><span class="src-sym">::</span><span class="src-id">OPTION_ENCODER_CLES</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a414"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$nom&nbsp;</span>=&nbsp;<span class="src-id">rawurlencode</span><span class="src-sym">(</span><span class="src-var">$nom</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a415"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a416"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a417"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><a href="http://www.php.net/is_array">is_array</a><span class="src-sym">(</span><span class="src-var">$valeur</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a418"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">foreach&nbsp;</span><span class="src-sym">(</span><span class="src-var">$valeur&nbsp;</span><span class="src-key">as&nbsp;</span><span class="src-var">$k&nbsp;</span>=&gt;&nbsp;<span class="src-var">$v</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a419"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$parties</span><span class="src-sym">[</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Framework/Url.html#methodgetOption">getOption</a><span class="src-sym">(</span><span class="src-id">self</span><span class="src-sym">::</span><span class="src-id">OPTION_UTILISER_CROCHETS</span><span class="src-sym">)</span></div></li>
<li><div class="src-line"><a name="a420"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;?&nbsp;<a href="http://www.php.net/sprintf">sprintf</a><span class="src-sym">(</span><span class="src-str">'%s[%s]=%s'</span><span class="src-sym">,&nbsp;</span><span class="src-var">$nom</span><span class="src-sym">,&nbsp;</span><span class="src-var">$k</span><span class="src-sym">,&nbsp;</span><span class="src-var">$v</span><span class="src-sym">)</span></div></li>
<li><div class="src-line"><a name="a421"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;:&nbsp;<span class="src-sym">(</span><span class="src-var">$nom&nbsp;</span>.&nbsp;<span class="src-str">'='&nbsp;</span>.&nbsp;<span class="src-var">$v</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a422"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a423"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}&nbsp;</span><span class="src-key">elseif&nbsp;</span><span class="src-sym">(</span><span class="src-sym">!</span><a href="http://www.php.net/is_null">is_null</a><span class="src-sym">(</span><span class="src-var">$valeur</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a424"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$parties</span><span class="src-sym">[</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-var">$nom&nbsp;</span>.&nbsp;<span class="src-str">'='&nbsp;</span>.&nbsp;<span class="src-var">$valeur</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a425"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}&nbsp;</span><span class="src-key">else&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a426"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$parties</span><span class="src-sym">[</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-var">$nom</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a427"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a428"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a429"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">requete&nbsp;</span>=&nbsp;<a href="http://www.php.net/implode">implode</a><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Framework/Url.html#methodgetOption">getOption</a><span class="src-sym">(</span><span class="src-id">self</span><span class="src-sym">::</span><span class="src-id">OPTION_SEPARATEUR_SORTIE</span><span class="src-sym">)</span><span class="src-sym">,</span></div></li>
<li><div class="src-line"><a name="a430"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$parties</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a431"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a432"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a433"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a434"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a435"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@param&nbsp;</span><span class="src-doc-type">string&nbsp;</span><span class="src-doc-var">$nom&nbsp;</span></div></li>
<li><div class="src-line"><a name="a436"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@param&nbsp;</span><span class="src-doc-type">mixed&nbsp;</span><span class="src-doc">&nbsp;</span><span class="src-doc-var">$valeur&nbsp;</span></div></li>
<li><div class="src-line"><a name="a437"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*</span></div></li>
<li><div class="src-line"><a name="a438"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@return&nbsp;</span><span class="src-doc">&nbsp;</span><span class="src-doc-type">array&nbsp;</span></div></li>
<li><div class="src-line"><a name="a439"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a440"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">public&nbsp;</span><span class="src-key">function&nbsp;</span><a href="../Framework/Url.html#methodsetVariableRequete">setVariableRequete</a><span class="src-sym">(</span><span class="src-var">$nom</span><span class="src-sym">,&nbsp;</span><span class="src-var">$valeur</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a441"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$tableau&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Framework/Url.html#methodgetVariablesRequete">getVariablesRequete</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a442"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$tableau</span><span class="src-sym">[</span><span class="src-var">$nom</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-var">$valeur</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a443"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Framework/Url.html#methodsetVariablesRequete">setVariablesRequete</a><span class="src-sym">(</span><span class="src-var">$tableau</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a444"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a445"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a446"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a447"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@param&nbsp;</span><span class="src-doc-type">string&nbsp;</span><span class="src-doc-var">$nom&nbsp;</span></div></li>
<li><div class="src-line"><a name="a448"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*</span></div></li>
<li><div class="src-line"><a name="a449"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@return&nbsp;</span><span class="src-doc-type">void&nbsp;</span></div></li>
<li><div class="src-line"><a name="a450"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a451"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">public&nbsp;</span><span class="src-key">function&nbsp;</span><a href="../Framework/Url.html#methodunsetVariableRequete">unsetVariableRequete</a><span class="src-sym">(</span><span class="src-var">$nom</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a452"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$tableau&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Framework/Url.html#methodgetVariablesRequete">getVariablesRequete</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a453"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;unset<span class="src-sym">(</span><span class="src-var">$tableau</span><span class="src-sym">[</span><span class="src-var">$nom</span><span class="src-sym">]</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a454"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Framework/Url.html#methodsetVariablesRequete">setVariablesRequete</a><span class="src-sym">(</span><span class="src-var">$tableau</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a455"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a456"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a457"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a458"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Renvoie&nbsp;un&nbsp;représentation&nbsp;sous&nbsp;forme&nbsp;de&nbsp;chaine&nbsp;de&nbsp;l'URL</span></div></li>
<li><div class="src-line"><a name="a459"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*</span></div></li>
<li><div class="src-line"><a name="a460"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@return&nbsp;</span><span class="src-doc">&nbsp;</span><span class="src-doc-type">string&nbsp;</span></div></li>
<li><div class="src-line"><a name="a461"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a462"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">public&nbsp;</span><span class="src-key">function&nbsp;</span><a href="../Framework/Url.html#methodgetURL">getURL</a><span class="src-sym">(</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a463"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;Voir&nbsp;RFC&nbsp;3986,&nbsp;section&nbsp;5.3</span></div></li>
<li><div class="src-line"><a name="a464"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$url&nbsp;</span>=&nbsp;<span class="src-str">&quot;&quot;</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a465"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a466"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">schema&nbsp;</span>!==&nbsp;<span class="src-id">false</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a467"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$url&nbsp;</span>.=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">schema&nbsp;</span>.&nbsp;<span class="src-str">':'</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a468"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a469"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a470"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$autorite&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Framework/Url.html#methodgetAutorite">getAutorite</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a471"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$autorite&nbsp;</span>!==&nbsp;<span class="src-id">false</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a472"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$url&nbsp;</span>.=&nbsp;<span class="src-str">'//'&nbsp;</span>.&nbsp;<span class="src-var">$autorite</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a473"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a474"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$url&nbsp;</span>.=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">chemin</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a475"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a476"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">requete&nbsp;</span>!==&nbsp;<span class="src-id">false</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a477"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$url&nbsp;</span>.=&nbsp;<span class="src-str">'?'&nbsp;</span>.&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">requete</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a478"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a479"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a480"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">fragment&nbsp;</span>!==&nbsp;<span class="src-id">false</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a481"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$url&nbsp;</span>.=&nbsp;<span class="src-str">'#'&nbsp;</span>.&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">fragment</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a482"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a483"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a484"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$url</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a485"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a486"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a487"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a488"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Renvoie&nbsp;une&nbsp;représentation&nbsp;de&nbsp;cette&nbsp;URL&nbsp;sous&nbsp;forme&nbsp;de&nbsp;chaine&nbsp;normalisée.&nbsp;Utile&nbsp;pour&nbsp;la</span></div></li>
<li><div class="src-line"><a name="a489"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;comparaison&nbsp;d'URLs</span></div></li>
<li><div class="src-line"><a name="a490"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*</span></div></li>
<li><div class="src-line"><a name="a491"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@return&nbsp;</span><span class="src-doc">&nbsp;</span><span class="src-doc-type">string&nbsp;</span></div></li>
<li><div class="src-line"><a name="a492"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a493"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">public&nbsp;</span><span class="src-key">function&nbsp;</span><a href="../Framework/Url.html#methodgetURLNormalisee">getURLNormalisee</a><span class="src-sym">(</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a494"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$url&nbsp;</span>=&nbsp;<span class="src-key">clone&nbsp;</span><span class="src-var">$this</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a495"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$url</span><span class="src-sym">-&gt;</span><a href="../Framework/Url.html#methodnormaliser">normaliser</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a496"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$url</span><span class="src-sym">-&gt;</span><span class="src-id">getUrl</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a497"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a498"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a499"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a500"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Renvoie&nbsp;une&nbsp;instance&nbsp;normalisée&nbsp;de&nbsp;Url</span></div></li>
<li><div class="src-line"><a name="a501"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*</span></div></li>
<li><div class="src-line"><a name="a502"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@return&nbsp;</span><span class="src-doc">&nbsp;</span><span class="src-doc-type">Url&nbsp;</span></div></li>
<li><div class="src-line"><a name="a503"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a504"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">public&nbsp;</span><span class="src-key">function&nbsp;</span><a href="../Framework/Url.html#methodnormaliser">normaliser</a><span class="src-sym">(</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a505"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;See&nbsp;RFC&nbsp;3886,&nbsp;section&nbsp;6</span></div></li>
<li><div class="src-line"><a name="a506"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a507"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;les&nbsp;cchémas&nbsp;sont&nbsp;insesibles&nbsp;à&nbsp;la&nbsp;casse</span></div></li>
<li><div class="src-line"><a name="a508"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">schema</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a509"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">schema&nbsp;</span>=&nbsp;<a href="http://www.php.net/strtolower">strtolower</a><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">schema</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a510"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a511"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a512"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;les&nbsp;noms&nbsp;d'hotes&nbsp;sont&nbsp;insensibles&nbsp;à&nbsp;la&nbsp;casse</span></div></li>
<li><div class="src-line"><a name="a513"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">hote</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a514"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">hote&nbsp;</span>=&nbsp;<a href="http://www.php.net/strtolower">strtolower</a><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">hote</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a515"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a516"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a517"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;Supprimer&nbsp;le&nbsp;numéro&nbsp;de&nbsp;port&nbsp;par&nbsp;défaut&nbsp;pour&nbsp;les&nbsp;schemas&nbsp;connus&nbsp;(RFC&nbsp;3986,&nbsp;section&nbsp;6.2.3)</span></div></li>
<li><div class="src-line"><a name="a518"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">port&nbsp;</span>&amp;&amp;</div></li>
<li><div class="src-line"><a name="a519"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">schema&nbsp;</span>&amp;&amp;</div></li>
<li><div class="src-line"><a name="a520"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">port&nbsp;</span>==&nbsp;<a href="http://www.php.net/getservbyname">getservbyname</a><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">schema</span><span class="src-sym">,&nbsp;</span><span class="src-str">'tcp'</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a521"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a522"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">port&nbsp;</span>=&nbsp;<span class="src-id">false</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a523"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a524"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a525"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;normalisation&nbsp;dans&nbsp;le&nbsp;cas&nbsp;d'un&nbsp;encodage&nbsp;avec&nbsp;%XX&nbsp;pourcentage&nbsp;(RFC&nbsp;3986,&nbsp;section&nbsp;6.2.2.1)</span></div></li>
<li><div class="src-line"><a name="a526"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">foreach&nbsp;</span><span class="src-sym">(</span><span class="src-key">array</span><span class="src-sym">(</span><span class="src-str">'infoUtilisateur'</span><span class="src-sym">,&nbsp;</span><span class="src-str">'hote'</span><span class="src-sym">,&nbsp;</span><span class="src-str">'chemin'</span><span class="src-sym">)&nbsp;</span><span class="src-key">as&nbsp;</span><span class="src-var">$partie</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a527"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">$partie</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a528"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">$partie&nbsp;&nbsp;</span>=&nbsp;<a href="http://www.php.net/preg_replace">preg_replace</a><span class="src-sym">(</span><span class="src-str">'/%[0-9a-f]{2}/ie'</span><span class="src-sym">,&nbsp;</span><span class="src-str">'strtoupper(&quot;\0&quot;)'</span><span class="src-sym">,&nbsp;</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">$partie</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a529"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a530"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a531"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a532"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;normalisation&nbsp;des&nbsp;segments&nbsp;du&nbsp;chemin&nbsp;(RFC&nbsp;3986,&nbsp;section&nbsp;6.2.2.3)</span></div></li>
<li><div class="src-line"><a name="a533"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">chemin&nbsp;</span>=&nbsp;<span class="src-id">self</span><span class="src-sym">::</span><span class="src-id">supprimerSegmentsAPoints</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">chemin</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a534"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a535"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;normalisation&nbsp;basée&nbsp;sur&nbsp;le&nbsp;schéma&nbsp;(RFC&nbsp;3986,&nbsp;section&nbsp;6.2.3)</span></div></li>
<li><div class="src-line"><a name="a536"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">hote&nbsp;</span>&amp;&amp;&nbsp;<span class="src-sym">!</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">chemin</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a537"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">chemin&nbsp;</span>=&nbsp;<span class="src-str">'/'</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a538"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a539"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a540"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a541"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a542"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Renvoie&nbsp;vrai&nbsp;ou&nbsp;faux&nbsp;suivant&nbsp;que&nbsp;l'instance&nbsp;en&nbsp;cours&nbsp;représente&nbsp;une&nbsp;URL&nbsp;relative&nbsp;ou&nbsp;absolue.</span></div></li>
<li><div class="src-line"><a name="a543"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*</span></div></li>
<li><div class="src-line"><a name="a544"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@return&nbsp;</span><span class="src-doc">&nbsp;</span><span class="src-doc-type">bool&nbsp;</span></div></li>
<li><div class="src-line"><a name="a545"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a546"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">public&nbsp;</span><span class="src-key">function&nbsp;</span><a href="../Framework/Url.html#methodetreAbsolue">etreAbsolue</a><span class="src-sym">(</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a547"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span>(bool)&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">schema</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a548"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a549"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a550"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a551"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Renvoie&nbsp;une&nbsp;instance&nbsp;de&nbsp;Url&nbsp;représentant&nbsp;une&nbsp;URL&nbsp;absolue&nbsp;relative&nbsp;à</span></div></li>
<li><div class="src-line"><a name="a552"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;cette&nbsp;URL.</span></div></li>
<li><div class="src-line"><a name="a553"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*</span></div></li>
<li><div class="src-line"><a name="a554"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@param&nbsp;</span><span class="src-doc-type">Url</span><span class="src-doc">|</span><span class="src-doc-type">string</span><span class="src-doc-var">$reference&nbsp;</span><span class="src-doc">URL&nbsp;relative</span></div></li>
<li><div class="src-line"><a name="a555"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*</span></div></li>
<li><div class="src-line"><a name="a556"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@return&nbsp;</span><span class="src-doc-type">Url&nbsp;</span></div></li>
<li><div class="src-line"><a name="a557"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a558"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">public&nbsp;</span><span class="src-key">function&nbsp;</span><a href="../Framework/Url.html#methodresoudre">resoudre</a><span class="src-sym">(</span><span class="src-var">$reference</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a559"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><a href="http://www.php.net/is_string">is_string</a><span class="src-sym">(</span><span class="src-var">$reference</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a560"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$reference&nbsp;</span>=&nbsp;<span class="src-key">new&nbsp;</span><span class="src-id">self</span><span class="src-sym">(</span><span class="src-var">$reference</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a561"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a562"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-sym">!</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Framework/Url.html#methodetreAbsolue">etreAbsolue</a><span class="src-sym">(</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a563"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;throw&nbsp;<span class="src-key">new&nbsp;</span><span class="src-id">Exception</span><span class="src-sym">(</span><span class="src-str">'L\'URL&nbsp;de&nbsp;base&nbsp;doit&nbsp;être&nbsp;absolue&nbsp;!'</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a564"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a565"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a566"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;Un&nbsp;parseur&nbsp;non&nbsp;strict&nbsp;peut&nbsp;choisir&nbsp;d'ignorer&nbsp;un&nbsp;schema&nbsp;dans&nbsp;la&nbsp;référence</span></div></li>
<li><div class="src-line"><a name="a567"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;si&nbsp;celui&nbsp;ci&nbsp;est&nbsp;identique&nbsp;au&nbsp;schéma&nbsp;de&nbsp;base&nbsp;de&nbsp;l'URI.</span></div></li>
<li><div class="src-line"><a name="a568"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-sym">!</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Framework/Url.html#methodgetOption">getOption</a><span class="src-sym">(</span><span class="src-id">self</span><span class="src-sym">::</span><span class="src-id">OPTION_STRICTE</span><span class="src-sym">)&nbsp;</span>&amp;&amp;&nbsp;<span class="src-var">$reference</span><span class="src-sym">-&gt;</span><span class="src-id">schema&nbsp;</span>==&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">schema</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a569"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$reference</span><span class="src-sym">-&gt;</span><span class="src-id">schema&nbsp;</span>=&nbsp;<span class="src-id">false</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a570"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a571"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a572"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$cible&nbsp;</span>=&nbsp;<span class="src-key">new&nbsp;</span><span class="src-id">self</span><span class="src-sym">(</span><span class="src-str">''</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a573"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$reference</span><span class="src-sym">-&gt;</span><span class="src-id">schema&nbsp;</span>!==&nbsp;<span class="src-id">false</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a574"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$cible</span><span class="src-sym">-&gt;</span><span class="src-id">schema&nbsp;</span>=&nbsp;<span class="src-var">$reference</span><span class="src-sym">-&gt;</span><span class="src-id">schema</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a575"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$cible</span><span class="src-sym">-&gt;</span><a href="../Framework/Url.html#methodsetAutorite">setAutorite</a><span class="src-sym">(</span><span class="src-var">$reference</span><span class="src-sym">-&gt;</span><a href="../Framework/Url.html#methodgetAutorite">getAutorite</a><span class="src-sym">(</span><span class="src-sym">))</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a576"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$cible</span><span class="src-sym">-&gt;</span><span class="src-id">chemin&nbsp;&nbsp;</span>=&nbsp;<span class="src-id">self</span><span class="src-sym">::</span><span class="src-id">supprimerSegmentsAPoints</span><span class="src-sym">(</span><span class="src-var">$reference</span><span class="src-sym">-&gt;</span><span class="src-id">chemin</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a577"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$cible</span><span class="src-sym">-&gt;</span><span class="src-id">requete&nbsp;</span>=&nbsp;<span class="src-var">$reference</span><span class="src-sym">-&gt;</span><span class="src-id">requete</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a578"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}&nbsp;</span><span class="src-key">else&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a579"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$autorite&nbsp;</span>=&nbsp;<span class="src-var">$reference</span><span class="src-sym">-&gt;</span><a href="../Framework/Url.html#methodgetAutorite">getAutorite</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a580"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$autorite&nbsp;</span>!==&nbsp;<span class="src-id">false</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a581"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$cible</span><span class="src-sym">-&gt;</span><a href="../Framework/Url.html#methodsetAutorite">setAutorite</a><span class="src-sym">(</span><span class="src-var">$autorite</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a582"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$cible</span><span class="src-sym">-&gt;</span><span class="src-id">chemin&nbsp;&nbsp;</span>=&nbsp;<span class="src-id">self</span><span class="src-sym">::</span><span class="src-id">supprimerSegmentsAPoints</span><span class="src-sym">(</span><span class="src-var">$reference</span><span class="src-sym">-&gt;</span><span class="src-id">chemin</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a583"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$cible</span><span class="src-sym">-&gt;</span><span class="src-id">requete&nbsp;</span>=&nbsp;<span class="src-var">$reference</span><span class="src-sym">-&gt;</span><span class="src-id">requete</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a584"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}&nbsp;</span><span class="src-key">else&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a585"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$reference</span><span class="src-sym">-&gt;</span><span class="src-id">chemin&nbsp;</span>==&nbsp;<span class="src-str">''</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a586"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$cible</span><span class="src-sym">-&gt;</span><span class="src-id">chemin&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">chemin</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a587"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$reference</span><span class="src-sym">-&gt;</span><span class="src-id">requete&nbsp;</span>!==&nbsp;<span class="src-id">false</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a588"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$cible</span><span class="src-sym">-&gt;</span><span class="src-id">requete&nbsp;</span>=&nbsp;<span class="src-var">$reference</span><span class="src-sym">-&gt;</span><span class="src-id">requete</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a589"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}&nbsp;</span><span class="src-key">else&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a590"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$cible</span><span class="src-sym">-&gt;</span><span class="src-id">requete&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">requete</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a591"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a592"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}&nbsp;</span><span class="src-key">else&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a593"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><a href="http://www.php.net/substr">substr</a><span class="src-sym">(</span><span class="src-var">$reference</span><span class="src-sym">-&gt;</span><span class="src-id">chemin</span><span class="src-sym">,&nbsp;</span><span class="src-num">0</span><span class="src-sym">,&nbsp;</span><span class="src-num">1</span><span class="src-sym">)&nbsp;</span>==&nbsp;<span class="src-str">'/'</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a594"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$cible</span><span class="src-sym">-&gt;</span><span class="src-id">chemin&nbsp;</span>=&nbsp;<span class="src-id">self</span><span class="src-sym">::</span><span class="src-id">supprimerSegmentsAPoints</span><span class="src-sym">(</span><span class="src-var">$reference</span><span class="src-sym">-&gt;</span><span class="src-id">chemin</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a595"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}&nbsp;</span><span class="src-key">else&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a596"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;Concaténation&nbsp;chemins&nbsp;(RFC&nbsp;3986,&nbsp;section&nbsp;5.2.3)</span></div></li>
<li><div class="src-line"><a name="a597"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">hote&nbsp;</span>!==&nbsp;<span class="src-id">false&nbsp;</span>&amp;&amp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">chemin&nbsp;</span>==&nbsp;<span class="src-str">''</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a598"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$cible</span><span class="src-sym">-&gt;</span><span class="src-id">chemin&nbsp;</span>=&nbsp;<span class="src-str">'/'&nbsp;</span>.&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">chemin</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a599"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}&nbsp;</span><span class="src-key">else&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a600"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$i&nbsp;</span>=&nbsp;<a href="http://www.php.net/strrpos">strrpos</a><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">chemin</span><span class="src-sym">,&nbsp;</span><span class="src-str">'/'</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a601"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$i&nbsp;</span>!==&nbsp;<span class="src-id">false</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a602"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$cible</span><span class="src-sym">-&gt;</span><span class="src-id">chemin&nbsp;</span>=&nbsp;<a href="http://www.php.net/substr">substr</a><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">chemin</span><span class="src-sym">,&nbsp;</span><span class="src-num">0</span><span class="src-sym">,&nbsp;</span><span class="src-var">$i&nbsp;</span>+&nbsp;<span class="src-num">1</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a603"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a604"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$cible</span><span class="src-sym">-&gt;</span><span class="src-id">chemin&nbsp;</span>.=&nbsp;<span class="src-var">$reference</span><span class="src-sym">-&gt;</span><span class="src-id">chemin</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a605"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a606"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$cible</span><span class="src-sym">-&gt;</span><span class="src-id">chemin&nbsp;</span>=&nbsp;<span class="src-id">self</span><span class="src-sym">::</span><span class="src-id">supprimerSegmentsAPoints</span><span class="src-sym">(</span><span class="src-var">$cible</span><span class="src-sym">-&gt;</span><span class="src-id">chemin</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a607"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a608"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$cible</span><span class="src-sym">-&gt;</span><span class="src-id">requete&nbsp;</span>=&nbsp;<span class="src-var">$reference</span><span class="src-sym">-&gt;</span><span class="src-id">requete</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a609"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a610"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$cible</span><span class="src-sym">-&gt;</span><a href="../Framework/Url.html#methodsetAutorite">setAutorite</a><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Framework/Url.html#methodgetAutorite">getAutorite</a><span class="src-sym">(</span><span class="src-sym">))</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a611"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a612"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$cible</span><span class="src-sym">-&gt;</span><span class="src-id">schema&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">schema</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a613"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a614"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a615"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$cible</span><span class="src-sym">-&gt;</span><span class="src-id">fragment&nbsp;</span>=&nbsp;<span class="src-var">$reference</span><span class="src-sym">-&gt;</span><span class="src-id">fragment</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a616"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a617"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$cible</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a618"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a619"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a620"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a621"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;La&nbsp;suppression&nbsp;des&nbsp;segments&nbsp;à&nbsp;points&nbsp;est&nbsp;décrite&nbsp;dans&nbsp;la&nbsp;RFC&nbsp;3986,&nbsp;section&nbsp;5.2.4,&nbsp;e.g.</span></div></li>
<li><div class="src-line"><a name="a622"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;&quot;/foo/../bar/baz&quot;&nbsp;=&gt;&nbsp;&quot;/bar/baz&quot;</span></div></li>
<li><div class="src-line"><a name="a623"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*</span></div></li>
<li><div class="src-line"><a name="a624"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@param&nbsp;</span><span class="src-doc-type">string&nbsp;</span><span class="src-doc-var">$chemin&nbsp;</span><span class="src-doc">un&nbsp;chemin</span></div></li>
<li><div class="src-line"><a name="a625"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*</span></div></li>
<li><div class="src-line"><a name="a626"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@return&nbsp;</span><span class="src-doc-type">string&nbsp;</span><span class="src-doc">un&nbsp;chemin</span></div></li>
<li><div class="src-line"><a name="a627"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a628"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">private&nbsp;</span><span class="src-key">static&nbsp;</span><span class="src-key">function&nbsp;</span><span class="src-id">supprimerSegmentsAPoints</span><span class="src-sym">(</span><span class="src-var">$chemin</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a629"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$sortie&nbsp;</span>=&nbsp;<span class="src-str">''</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a630"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a631"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;Assurons&nbsp;de&nbsp;ne&nbsp;pas&nbsp;nous&nbsp;retrouver&nbsp;piégés&nbsp;dans&nbsp;une&nbsp;boucle&nbsp;infinie&nbsp;due&nbsp;à&nbsp;un&nbsp;bug&nbsp;de</span></div></li>
<li><div class="src-line"><a name="a632"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;cette&nbsp;méthode</span></div></li>
<li><div class="src-line"><a name="a633"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$j&nbsp;</span>=&nbsp;<span class="src-num">0</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a634"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">while&nbsp;</span><span class="src-sym">(</span><span class="src-var">$chemin&nbsp;</span>&amp;&amp;&nbsp;<span class="src-var">$j</span>++&nbsp;&lt;&nbsp;<span class="src-num">100</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a635"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;Étape&nbsp;A</span></div></li>
<li><div class="src-line"><a name="a636"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><a href="http://www.php.net/substr">substr</a><span class="src-sym">(</span><span class="src-var">$chemin</span><span class="src-sym">,&nbsp;</span><span class="src-num">0</span><span class="src-sym">,&nbsp;</span><span class="src-num">2</span><span class="src-sym">)&nbsp;</span>==&nbsp;<span class="src-str">'./'</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a637"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$chemin&nbsp;</span>=&nbsp;<a href="http://www.php.net/substr">substr</a><span class="src-sym">(</span><span class="src-var">$chemin</span><span class="src-sym">,&nbsp;</span><span class="src-num">2</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a638"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}&nbsp;</span><span class="src-key">elseif&nbsp;</span><span class="src-sym">(</span><a href="http://www.php.net/substr">substr</a><span class="src-sym">(</span><span class="src-var">$chemin</span><span class="src-sym">,&nbsp;</span><span class="src-num">0</span><span class="src-sym">,&nbsp;</span><span class="src-num">3</span><span class="src-sym">)&nbsp;</span>==&nbsp;<span class="src-str">'../'</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a639"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$chemin&nbsp;</span>=&nbsp;<a href="http://www.php.net/substr">substr</a><span class="src-sym">(</span><span class="src-var">$chemin</span><span class="src-sym">,&nbsp;</span><span class="src-num">3</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a640"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a641"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;Étape&nbsp;B</span></div></li>
<li><div class="src-line"><a name="a642"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}&nbsp;</span><span class="src-key">elseif&nbsp;</span><span class="src-sym">(</span><a href="http://www.php.net/substr">substr</a><span class="src-sym">(</span><span class="src-var">$chemin</span><span class="src-sym">,&nbsp;</span><span class="src-num">0</span><span class="src-sym">,&nbsp;</span><span class="src-num">3</span><span class="src-sym">)&nbsp;</span>==&nbsp;<span class="src-str">'/./'&nbsp;</span>||&nbsp;<span class="src-var">$chemin&nbsp;</span>==&nbsp;<span class="src-str">'/.'</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a643"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$chemin&nbsp;</span>=&nbsp;<span class="src-str">'/'&nbsp;</span>.&nbsp;<a href="http://www.php.net/substr">substr</a><span class="src-sym">(</span><span class="src-var">$chemin</span><span class="src-sym">,&nbsp;</span><span class="src-num">3</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a644"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a645"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;Étape&nbsp;C</span></div></li>
<li><div class="src-line"><a name="a646"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}&nbsp;</span><span class="src-key">elseif&nbsp;</span><span class="src-sym">(</span><a href="http://www.php.net/substr">substr</a><span class="src-sym">(</span><span class="src-var">$chemin</span><span class="src-sym">,&nbsp;</span><span class="src-num">0</span><span class="src-sym">,&nbsp;</span><span class="src-num">4</span><span class="src-sym">)&nbsp;</span>==&nbsp;<span class="src-str">'/../'&nbsp;</span>||&nbsp;<span class="src-var">$chemin&nbsp;</span>==&nbsp;<span class="src-str">'/..'</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a647"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$chemin&nbsp;</span>=&nbsp;<span class="src-str">'/'&nbsp;</span>.&nbsp;<a href="http://www.php.net/substr">substr</a><span class="src-sym">(</span><span class="src-var">$chemin</span><span class="src-sym">,&nbsp;</span><span class="src-num">4</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a648"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$i&nbsp;</span>=&nbsp;<a href="http://www.php.net/strrpos">strrpos</a><span class="src-sym">(</span><span class="src-var">$sortie</span><span class="src-sym">,&nbsp;</span><span class="src-str">'/'</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a649"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$sortie&nbsp;</span>=&nbsp;<span class="src-var">$i&nbsp;</span>===&nbsp;<span class="src-id">false&nbsp;</span>?&nbsp;<span class="src-str">''&nbsp;</span>:&nbsp;<a href="http://www.php.net/substr">substr</a><span class="src-sym">(</span><span class="src-var">$sortie</span><span class="src-sym">,&nbsp;</span><span class="src-num">0</span><span class="src-sym">,&nbsp;</span><span class="src-var">$i</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a650"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a651"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;Étape&nbsp;D</span></div></li>
<li><div class="src-line"><a name="a652"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}&nbsp;</span><span class="src-key">elseif&nbsp;</span><span class="src-sym">(</span><span class="src-var">$chemin&nbsp;</span>==&nbsp;<span class="src-str">'.'&nbsp;</span>||&nbsp;<span class="src-var">$chemin&nbsp;</span>==&nbsp;<span class="src-str">'..'</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a653"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$chemin&nbsp;</span>=&nbsp;<span class="src-str">''</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a654"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a655"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;Étape&nbsp;E</span></div></li>
<li><div class="src-line"><a name="a656"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}&nbsp;</span><span class="src-key">else&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a657"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$i&nbsp;</span>=&nbsp;<a href="http://www.php.net/strpos">strpos</a><span class="src-sym">(</span><span class="src-var">$chemin</span><span class="src-sym">,&nbsp;</span><span class="src-str">'/'</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a658"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$i&nbsp;</span>===&nbsp;<span class="src-num">0</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a659"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$i&nbsp;</span>=&nbsp;<a href="http://www.php.net/strpos">strpos</a><span class="src-sym">(</span><span class="src-var">$chemin</span><span class="src-sym">,&nbsp;</span><span class="src-str">'/'</span><span class="src-sym">,&nbsp;</span><span class="src-num">1</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a660"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a661"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$i&nbsp;</span>===&nbsp;<span class="src-id">false</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a662"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$i&nbsp;</span>=&nbsp;<a href="http://www.php.net/strlen">strlen</a><span class="src-sym">(</span><span class="src-var">$chemin</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a663"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a664"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$sortie&nbsp;</span>.=&nbsp;<a href="http://www.php.net/substr">substr</a><span class="src-sym">(</span><span class="src-var">$chemin</span><span class="src-sym">,&nbsp;</span><span class="src-num">0</span><span class="src-sym">,&nbsp;</span><span class="src-var">$i</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a665"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$chemin&nbsp;</span>=&nbsp;<a href="http://www.php.net/substr">substr</a><span class="src-sym">(</span><span class="src-var">$chemin</span><span class="src-sym">,&nbsp;</span><span class="src-var">$i</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a666"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a667"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a668"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a669"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$sortie</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a670"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a671"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a672"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a673"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Renvoie&nbsp;une&nbsp;instance&nbsp;de&nbsp;Url&nbsp;representant&nbsp;l'URL&nbsp;canonique&nbsp;du&nbsp;script&nbsp;PHP</span></div></li>
<li><div class="src-line"><a name="a674"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;en&nbsp;cours&nbsp;d'éxécution</span></div></li>
<li><div class="src-line"><a name="a675"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*</span></div></li>
<li><div class="src-line"><a name="a676"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@return&nbsp;</span><span class="src-doc">&nbsp;</span><span class="src-doc-type">string&nbsp;</span></div></li>
<li><div class="src-line"><a name="a677"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a678"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">public&nbsp;</span><span class="src-key">static&nbsp;</span><span class="src-key">function&nbsp;</span><a href="../Framework/Url.html#methodgetCanonique">getCanonique</a><span class="src-sym">(</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a679"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-sym">!</span>isset<span class="src-sym">(</span><span class="src-var">$_SERVER</span><span class="src-sym">[</span><span class="src-str">'REQUEST_METHOD'</span><span class="src-sym">]</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a680"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;ALERT&nbsp;-&nbsp;pas&nbsp;d'URL&nbsp;en&nbsp;cours</span></div></li>
<li><div class="src-line"><a name="a681"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;throw&nbsp;<span class="src-key">new&nbsp;</span><span class="src-id">Exception</span><span class="src-sym">(</span><span class="src-str">'Le&nbsp;script&nbsp;n\'a&nbsp;pas&nbsp;été&nbsp;appellé&nbsp;à&nbsp;travers&nbsp;un&nbsp;serveur&nbsp;web'</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a682"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a683"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a684"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;on&nbsp;part&nbsp;d'une&nbsp;URL&nbsp;relative</span></div></li>
<li><div class="src-line"><a name="a685"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$url&nbsp;</span>=&nbsp;<span class="src-key">new&nbsp;</span><span class="src-id">self</span><span class="src-sym">(</span><span class="src-var">$_SERVER</span><span class="src-sym">[</span><span class="src-str">'PHP_SELF'</span><span class="src-sym">]</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a686"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$url</span><span class="src-sym">-&gt;</span><span class="src-id">schema&nbsp;</span>=&nbsp;isset<span class="src-sym">(</span><span class="src-var">$_SERVER</span><span class="src-sym">[</span><span class="src-str">'HTTPS'</span><span class="src-sym">]</span><span class="src-sym">)&nbsp;</span>?&nbsp;<span class="src-str">'https'&nbsp;</span>:&nbsp;<span class="src-str">'http'</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a687"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$url</span><span class="src-sym">-&gt;</span><span class="src-id">hote&nbsp;</span>=&nbsp;<span class="src-var">$_SERVER</span><span class="src-sym">[</span><span class="src-str">'SERVER_NAME'</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a688"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$port&nbsp;</span>=&nbsp;<a href="http://www.php.net/intval">intval</a><span class="src-sym">(</span><span class="src-var">$_SERVER</span><span class="src-sym">[</span><span class="src-str">'SERVER_PORT'</span><span class="src-sym">]</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a689"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$url</span><span class="src-sym">-&gt;</span><span class="src-id">schema&nbsp;</span>==&nbsp;<span class="src-str">'http'&nbsp;</span>&amp;&amp;&nbsp;<span class="src-var">$port&nbsp;</span>!=&nbsp;<span class="src-num">80&nbsp;</span>||</div></li>
<li><div class="src-line"><a name="a690"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$url</span><span class="src-sym">-&gt;</span><span class="src-id">schema&nbsp;</span>==&nbsp;<span class="src-str">'https'&nbsp;</span>&amp;&amp;&nbsp;<span class="src-var">$port&nbsp;</span>!=&nbsp;<span class="src-num">443</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a691"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a692"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$url</span><span class="src-sym">-&gt;</span><span class="src-id">port&nbsp;</span>=&nbsp;<span class="src-var">$port</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a693"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a694"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$url</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a695"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a696"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a697"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a698"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Renvoie&nbsp;l'URL&nbsp;utilisée&nbsp;pour&nbsp;récupérer&nbsp;la&nbsp;requête&nbsp;en&nbsp;cours</span></div></li>
<li><div class="src-line"><a name="a699"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*</span></div></li>
<li><div class="src-line"><a name="a700"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@return&nbsp;</span><span class="src-doc">&nbsp;</span><span class="src-doc-type">string&nbsp;</span></div></li>
<li><div class="src-line"><a name="a701"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a702"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">public&nbsp;</span><span class="src-key">static&nbsp;</span><span class="src-key">function&nbsp;</span><a href="../Framework/Url.html#methodgetURLDemande">getURLDemande</a><span class="src-sym">(</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a703"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-id">self</span><span class="src-sym">::</span><span class="src-id">getDemande</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">-&gt;</span><span class="src-id">getUrl</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a704"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a705"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a706"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a707"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Renvoie&nbsp;une&nbsp;instance&nbsp;de&nbsp;Url&nbsp;representant&nbsp;l'URL&nbsp;utilisée&nbsp;pour</span></div></li>
<li><div class="src-line"><a name="a708"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;récupérer&nbsp;la&nbsp;requête&nbsp;en&nbsp;cours</span></div></li>
<li><div class="src-line"><a name="a709"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*</span></div></li>
<li><div class="src-line"><a name="a710"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@return&nbsp;</span><span class="src-doc">&nbsp;</span><span class="src-doc-type">Url&nbsp;</span></div></li>
<li><div class="src-line"><a name="a711"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a712"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">public&nbsp;</span><span class="src-key">static&nbsp;</span><span class="src-key">function&nbsp;</span><a href="../Framework/Url.html#methodgetDemande">getDemande</a><span class="src-sym">(</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a713"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-sym">!</span>isset<span class="src-sym">(</span><span class="src-var">$_SERVER</span><span class="src-sym">[</span><span class="src-str">'REQUEST_METHOD'</span><span class="src-sym">]</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a714"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;ALERTE&nbsp;-&nbsp;pas&nbsp;d'URL&nbsp;en&nbsp;cours</span></div></li>
<li><div class="src-line"><a name="a715"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;throw&nbsp;<span class="src-key">new&nbsp;</span><span class="src-id">Exception</span><span class="src-sym">(</span><span class="src-str">'Le&nbsp;script&nbsp;n\'a&nbsp;pas&nbsp;été&nbsp;appellé&nbsp;à&nbsp;travers&nbsp;un&nbsp;serveur&nbsp;web'</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a716"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a717"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a718"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;On&nbsp;part&nbsp;d'une&nbsp;URL&nbsp;relative</span></div></li>
<li><div class="src-line"><a name="a719"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$url&nbsp;</span>=&nbsp;<span class="src-key">new&nbsp;</span><span class="src-id">self</span><span class="src-sym">(</span><span class="src-var">$_SERVER</span><span class="src-sym">[</span><span class="src-str">'REQUEST_URI'</span><span class="src-sym">]</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a720"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$url</span><span class="src-sym">-&gt;</span><span class="src-id">schema&nbsp;</span>=&nbsp;isset<span class="src-sym">(</span><span class="src-var">$_SERVER</span><span class="src-sym">[</span><span class="src-str">'HTTPS'</span><span class="src-sym">]</span><span class="src-sym">)&nbsp;</span>?&nbsp;<span class="src-str">'https'&nbsp;</span>:&nbsp;<span class="src-str">'http'</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a721"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;On&nbsp;met&nbsp;à&nbsp;jour&nbsp;les&nbsp;valeurs&nbsp;de&nbsp;l'hote&nbsp;et&nbsp;si&nbsp;possible&nbsp;du&nbsp;port</span></div></li>
<li><div class="src-line"><a name="a722"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$url</span><span class="src-sym">-&gt;</span><a href="../Framework/Url.html#methodsetAutorite">setAutorite</a><span class="src-sym">(</span><span class="src-var">$_SERVER</span><span class="src-sym">[</span><span class="src-str">'HTTP_hote'</span><span class="src-sym">]</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a723"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$url</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a724"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a725"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a726"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a727"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Met&nbsp;à&nbsp;jour&nbsp;la&nbsp;valeur&nbsp;de&nbsp;l'option&nbsp;spécifiée.</span></div></li>
<li><div class="src-line"><a name="a728"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*</span></div></li>
<li><div class="src-line"><a name="a729"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@param&nbsp;</span><span class="src-doc-type">string&nbsp;</span><span class="src-doc-var">$nomOption&nbsp;</span><span class="src-doc">une&nbsp;des&nbsp;constantes&nbsp;commençant&nbsp;par&nbsp;self::OPTION_</span></div></li>
<li><div class="src-line"><a name="a730"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@param&nbsp;</span><span class="src-doc-type">mixed&nbsp;</span><span class="src-doc">&nbsp;</span><span class="src-doc-var">$valeur&nbsp;</span><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;valeur&nbsp;de&nbsp;l'option</span></div></li>
<li><div class="src-line"><a name="a731"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*</span></div></li>
<li><div class="src-line"><a name="a732"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@return&nbsp;</span><span class="src-doc-type">void&nbsp;</span></div></li>
<li><div class="src-line"><a name="a733"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@see</span><span class="src-doc">&nbsp;&nbsp;self::OPTION_STRICTE</span></div></li>
<li><div class="src-line"><a name="a734"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@see</span><span class="src-doc">&nbsp;&nbsp;self::OPTION_UTILISER_CROCHETS</span></div></li>
<li><div class="src-line"><a name="a735"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@see</span><span class="src-doc">&nbsp;&nbsp;self::OPTION_ENCODER_CLES</span></div></li>
<li><div class="src-line"><a name="a736"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a737"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">function&nbsp;</span><a href="../Framework/Url.html#methodsetOption">setOption</a><span class="src-sym">(</span><span class="src-var">$nomOption</span><span class="src-sym">,&nbsp;</span><span class="src-var">$valeur</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a738"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-sym">!</span><a href="http://www.php.net/array_key_exists">array_key_exists</a><span class="src-sym">(</span><span class="src-var">$nomOption</span><span class="src-sym">,&nbsp;</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">options</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a739"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-id">false</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a740"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a741"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">options</span><span class="src-sym">[</span><span class="src-var">$nomOption</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-var">$valeur</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a742"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a743"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a744"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a745"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Renvoie&nbsp;la&nbsp;valeur&nbsp;de&nbsp;l'option&nbsp;specifiée.</span></div></li>
<li><div class="src-line"><a name="a746"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*</span></div></li>
<li><div class="src-line"><a name="a747"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@param&nbsp;</span><span class="src-doc-type">string&nbsp;</span><span class="src-doc-var">$nomOption&nbsp;</span><span class="src-doc">Nom&nbsp;de&nbsp;l'option&nbsp;demandée</span></div></li>
<li><div class="src-line"><a name="a748"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*</span></div></li>
<li><div class="src-line"><a name="a749"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@return&nbsp;</span><span class="src-doc">&nbsp;</span><span class="src-doc-type">mixed&nbsp;</span></div></li>
<li><div class="src-line"><a name="a750"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a751"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">function&nbsp;</span><a href="../Framework/Url.html#methodgetOption">getOption</a><span class="src-sym">(</span><span class="src-var">$nomOption</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a752"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span>isset<span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">options</span><span class="src-sym">[</span><span class="src-var">$nomOption</span><span class="src-sym">]</span><span class="src-sym">)</span></div></li>
<li><div class="src-line"><a name="a753"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;?&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">options</span><span class="src-sym">[</span><span class="src-var">$nomOption</span><span class="src-sym">]&nbsp;</span>:&nbsp;<span class="src-id">false</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a754"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a755"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a756"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">public&nbsp;</span><span class="src-key">function&nbsp;</span><a href="../Framework/Url.html#method__toString">__toString</a><span class="src-sym">(</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a757"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Framework/Url.html#methodgetURL">getURL</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a758"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a759"></a><span class="src-sym">}</span></div></li>
</ol></div>
</div>
<p class="notes" id="credit">
Documentation generated on Thu, 04 Mar 2010 19:27:28 +0100 by <a href="http://www.phpdoc.org" target="_blank">phpDocumentor 1.4.3</a>
</p>
</body>
</html>
/tags/v0.3-aleaume/doc/HTMLframesConverter/__filesource/fsource_Framework__Application.php.html
New file
0,0 → 1,102
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<!-- template designed by Marco Von Ballmoos -->
<title>File Source for Application.php</title>
<meta http-equiv='Content-Type' content='text/html; charset=UTF-8'/>
<link rel="stylesheet" href="../media/stylesheet.css" />
</head>
<body>
<h1>Source for file Application.php</h1>
<p>Documentation is available at <a href="../Framework/_Application.php.html">Application.php</a></p>
<div class="src-code">
<div class="src-code"><ol><li><div class="src-line"><a name="a1"></a><span class="src-php">&lt;?php</span></div></li>
<li><div class="src-line"><a name="a2"></a><span class="src-comm">//&nbsp;declare(encoding='UTF-8');</span></div></li>
<li><div class="src-line"><a name="a3"></a><span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a4"></a><span class="src-doc">&nbsp;*&nbsp;Classe&nbsp;fournissant&nbsp;des&nbsp;informations&nbsp;au&nbsp;Framework&nbsp;sur&nbsp;l'application.</span></div></li>
<li><div class="src-line"><a name="a5"></a><span class="src-doc">&nbsp;*</span></div></li>
<li><div class="src-line"><a name="a6"></a><span class="src-doc">&nbsp;*&nbsp;PHP&nbsp;version&nbsp;5</span></div></li>
<li><div class="src-line"><a name="a7"></a><span class="src-doc">&nbsp;*</span></div></li>
<li><div class="src-line"><a name="a8"></a><span class="src-doc">&nbsp;*&nbsp;</span><span class="src-doc-coretag">@category</span><span class="src-doc">&nbsp;Debogage</span></div></li>
<li><div class="src-line"><a name="a9"></a><span class="src-doc">&nbsp;*&nbsp;</span><span class="src-doc-coretag">@package</span><span class="src-doc">&nbsp;Framework</span></div></li>
<li><div class="src-line"><a name="a10"></a><span class="src-doc">&nbsp;//&nbsp;Auteur&nbsp;principal&nbsp;:</span></div></li>
<li><div class="src-line"><a name="a11"></a><span class="src-doc">&nbsp;*&nbsp;</span><span class="src-doc-coretag">@author</span><span class="src-doc">&nbsp;Jean-Pascal&nbsp;MILCENT&nbsp;&lt;jpm@tela-botanica.org&gt;</span></div></li>
<li><div class="src-line"><a name="a12"></a><span class="src-doc">&nbsp;//&nbsp;Autres&nbsp;auteurs&nbsp;:</span></div></li>
<li><div class="src-line"><a name="a13"></a><span class="src-doc">&nbsp;*&nbsp;</span><span class="src-doc-coretag">@license</span><span class="src-doc">&nbsp;GPL&nbsp;v3&nbsp;&lt;http://www.gnu.org/licenses/gpl.txt&gt;</span></div></li>
<li><div class="src-line"><a name="a14"></a><span class="src-doc">&nbsp;*&nbsp;</span><span class="src-doc-coretag">@license</span><span class="src-doc">&nbsp;CECILL&nbsp;v2&nbsp;&lt;http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt&gt;</span></div></li>
<li><div class="src-line"><a name="a15"></a><span class="src-doc">&nbsp;*&nbsp;</span><span class="src-doc-coretag">@version</span><span class="src-doc">&nbsp;$$Id:&nbsp;Application.php&nbsp;153&nbsp;2010-03-04&nbsp;10:48:32Z&nbsp;jpm&nbsp;$$</span></div></li>
<li><div class="src-line"><a name="a16"></a><span class="src-doc">&nbsp;*&nbsp;</span><span class="src-doc-coretag">@copyright</span><span class="src-doc">&nbsp;1999-2009&nbsp;Tela&nbsp;Botanica&nbsp;(accueil@tela-botanica.org)</span></div></li>
<li><div class="src-line"><a name="a17"></a><span class="src-doc">&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a18"></a><span class="src-key">class&nbsp;</span><a href="../Framework/Application.html">Application</a>&nbsp;<span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a19"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a20"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a21"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;tableau&nbsp;d'informations&nbsp;sur&nbsp;l'application</span></div></li>
<li><div class="src-line"><a name="a22"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a23"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">private&nbsp;</span><span class="src-key">static&nbsp;</span><span class="src-var">$info&nbsp;</span>=&nbsp;<span class="src-id">null</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a24"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a25"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;chemin&nbsp;de&nbsp;base&nbsp;de&nbsp;l'application</span></div></li>
<li><div class="src-line"><a name="a26"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a27"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">private&nbsp;</span><span class="src-key">static&nbsp;</span><span class="src-var">$chemin&nbsp;</span>=&nbsp;<span class="src-id">null</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a28"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a29"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a30"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Modificateur&nbsp;pour&nbsp;le&nbsp;chemin&nbsp;de&nbsp;base</span></div></li>
<li><div class="src-line"><a name="a31"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@param&nbsp;</span><span class="src-doc-type">string&nbsp;</span><span class="src-doc-var">$chemin_fichier_principal&nbsp;</span><span class="src-doc">chemin&nbsp;de&nbsp;base</span></div></li>
<li><div class="src-line"><a name="a32"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a33"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">public&nbsp;</span><span class="src-key">static&nbsp;</span><span class="src-key">function&nbsp;</span><a href="../Framework/Application.html#methodsetChemin">setChemin</a><span class="src-sym">(</span><span class="src-var">$chemin_fichier_principal</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a34"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-id">self</span><span class="src-sym">::</span><span class="src-var">$chemin&nbsp;</span>===&nbsp;<span class="src-id">null</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a35"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-sym">!</span><a href="http://www.php.net/file_exists">file_exists</a><span class="src-sym">(</span><span class="src-var">$chemin_fichier_principal</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a36"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="http://www.php.net/trigger_error">trigger_error</a><span class="src-sym">(</span><span class="src-str">&quot;Le&nbsp;fichier&nbsp;indiqué&nbsp;n'existe&nbsp;pas.&nbsp;Utilisez&nbsp;__FILE__&nbsp;dans&nbsp;la&nbsp;méthode&nbsp;set().&quot;</span><span class="src-sym">,&nbsp;</span><span class="src-id">E_USER_ERROR</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a37"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}&nbsp;</span><span class="src-key">else&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a38"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-id">self</span><span class="src-sym">::</span><span class="src-var">$chemin&nbsp;</span>=&nbsp;<span class="src-id">dirname</span><span class="src-sym">(</span><span class="src-var">$chemin_fichier_principal</span><span class="src-sym">)</span>.<span class="src-id"><a href="../Framework/_autoload.inc.php.html#defineDS">DS</a></span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a39"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a40"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}&nbsp;</span><span class="src-key">else&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a41"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="http://www.php.net/trigger_error">trigger_error</a><span class="src-sym">(</span><span class="src-str">&quot;Le&nbsp;chemin&nbsp;de&nbsp;l'application&nbsp;a&nbsp;déjà&nbsp;été&nbsp;enregistré&nbsp;auprès&nbsp;du&nbsp;Framework&quot;</span><span class="src-sym">,&nbsp;</span><span class="src-id">E_USER_WARNING</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a42"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a43"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a44"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a45"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a46"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;accesseur&nbsp;pour&nbsp;le&nbsp;chemin</span></div></li>
<li><div class="src-line"><a name="a47"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@return&nbsp;</span><span class="src-doc-type">string&nbsp;</span><span class="src-doc">le&nbsp;chemin</span></div></li>
<li><div class="src-line"><a name="a48"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a49"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">public&nbsp;</span><span class="src-key">static&nbsp;</span><span class="src-key">function&nbsp;</span><a href="../Framework/Application.html#methodgetChemin">getChemin</a><span class="src-sym">(</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a50"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-id">self</span><span class="src-sym">::</span><span class="src-var">$chemin</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a51"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a52"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a53"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**&nbsp;Le&nbsp;tableau&nbsp;des&nbsp;informations&nbsp;sur&nbsp;l'application&nbsp;possède&nbsp;les&nbsp;clés&nbsp;suivantes&nbsp;:</span></div></li>
<li><div class="src-line"><a name="a54"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;-&nbsp;nom&nbsp;:&nbsp;nom&nbsp;de&nbsp;l'application</span></div></li>
<li><div class="src-line"><a name="a55"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;-&nbsp;abr&nbsp;:&nbsp;abréviation&nbsp;de&nbsp;l'application</span></div></li>
<li><div class="src-line"><a name="a56"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;-&nbsp;encodage&nbsp;:&nbsp;encodage&nbsp;de&nbsp;l'application&nbsp;(ISO-8859-15,&nbsp;UTF-8...)</span></div></li>
<li><div class="src-line"><a name="a57"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*</span></div></li>
<li><div class="src-line"><a name="a58"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@param&nbsp;</span><span class="src-doc-type">array&nbsp;</span><span class="src-doc-var">$info&nbsp;</span><span class="src-doc">tableau&nbsp;fournissant&nbsp;des&nbsp;informations&nbsp;sur&nbsp;l'application</span></div></li>
<li><div class="src-line"><a name="a59"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@return&nbsp;</span><span class="src-doc-type">void&nbsp;</span></div></li>
<li><div class="src-line"><a name="a60"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a61"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">public&nbsp;</span><span class="src-key">static&nbsp;</span><span class="src-key">function&nbsp;</span><a href="../Framework/Application.html#methodsetInfo">setInfo</a><span class="src-sym">(</span><span class="src-var">$info</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a62"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-id">self</span><span class="src-sym">::</span><span class="src-var">$info&nbsp;</span>===&nbsp;<span class="src-id">null</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a63"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-id">self</span><span class="src-sym">::</span><span class="src-var">$info&nbsp;</span>=&nbsp;<span class="src-var">$info</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a64"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}&nbsp;</span><span class="src-key">else&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a65"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-id">trigger_error</span><span class="src-sym">(</span><span class="src-str">&quot;Le&nbsp;informations&nbsp;de&nbsp;l'application&nbsp;ont&nbsp;déjà&nbsp;été&nbsp;enregistrées&nbsp;auprès&nbsp;du&nbsp;Framework&quot;</span><span class="src-sym">,&nbsp;</span><span class="src-id">E_USER_WARNING</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a66"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a67"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a68"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a69"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a70"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;accesseur&nbsp;pour&nbsp;le&nbsp;tableau&nbsp;d'infos</span></div></li>
<li><div class="src-line"><a name="a71"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@param&nbsp;</span><span class="src-doc-type">string&nbsp;</span><span class="src-doc-var">$cle&nbsp;</span><span class="src-doc">la&nbsp;clé&nbsp;à&nbsp;laquelle&nbsp;on&nbsp;veut&nbsp;accéder</span></div></li>
<li><div class="src-line"><a name="a72"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a73"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">public&nbsp;</span><span class="src-key">static&nbsp;</span><span class="src-key">function&nbsp;</span><a href="../Framework/Application.html#methodgetInfo">getInfo</a><span class="src-sym">(</span><span class="src-var">$cle&nbsp;</span>=&nbsp;<span class="src-id">null</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a74"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$cle&nbsp;</span>!==&nbsp;<span class="src-id">null</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a75"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span>isset<span class="src-sym">(</span><span class="src-id">self</span><span class="src-sym">::</span><span class="src-var">$info</span><span class="src-sym">[</span><span class="src-var">$cle</span><span class="src-sym">]</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a76"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-id">self</span><span class="src-sym">::</span><span class="src-var">$info</span><span class="src-sym">[</span><span class="src-var">$cle</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a77"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a78"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}&nbsp;</span><span class="src-key">else&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a79"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-id">self</span><span class="src-sym">::</span><span class="src-var">$info</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a80"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a81"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a82"></a><span class="src-sym">}</span></div></li>
</ol></div>
</div>
<p class="notes" id="credit">
Documentation generated on Thu, 04 Mar 2010 19:27:08 +0100 by <a href="http://www.phpdoc.org" target="_blank">phpDocumentor 1.4.3</a>
</p>
</body>
</html>
/tags/v0.3-aleaume/doc/HTMLframesConverter/__filesource/fsource_Framework__SquelettePhp.php.html
New file
0,0 → 1,94
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<!-- template designed by Marco Von Ballmoos -->
<title>File Source for SquelettePhp.php</title>
<meta http-equiv='Content-Type' content='text/html; charset=UTF-8'/>
<link rel="stylesheet" href="../media/stylesheet.css" />
</head>
<body>
<h1>Source for file SquelettePhp.php</h1>
<p>Documentation is available at <a href="../Framework/_SquelettePhp.php.html">SquelettePhp.php</a></p>
<div class="src-code">
<div class="src-code"><ol><li><div class="src-line"><a name="a1"></a><span class="src-php">&lt;?php</span></div></li>
<li><div class="src-line"><a name="a2"></a><span class="src-comm">//&nbsp;declare(encoding='UTF-8');</span></div></li>
<li><div class="src-line"><a name="a3"></a><span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a4"></a><span class="src-doc">&nbsp;*&nbsp;Classe&nbsp;SquelettePhp,&nbsp;traitant&nbsp;les&nbsp;squelette&nbsp;Php&nbsp;utilisant&nbsp;la&nbsp;syntaxe&nbsp;courte&nbsp;php&nbsp;ou&nbsp;pas.</span></div></li>
<li><div class="src-line"><a name="a5"></a><span class="src-doc">&nbsp;*&nbsp;Ces&nbsp;méthodes&nbsp;sont&nbsp;statiques.</span></div></li>
<li><div class="src-line"><a name="a6"></a><span class="src-doc">&nbsp;*</span></div></li>
<li><div class="src-line"><a name="a7"></a><span class="src-doc">&nbsp;*&nbsp;</span><span class="src-doc-coretag">@category</span><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;php5</span></div></li>
<li><div class="src-line"><a name="a8"></a><span class="src-doc">&nbsp;*&nbsp;</span><span class="src-doc-coretag">@package</span><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Framework</span></div></li>
<li><div class="src-line"><a name="a9"></a><span class="src-doc">&nbsp;*&nbsp;</span><span class="src-doc-coretag">@author</span><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Jean-Pascal&nbsp;MILCENT&nbsp;&lt;jpm@tela-botanica.org&gt;</span></div></li>
<li><div class="src-line"><a name="a10"></a><span class="src-doc">&nbsp;*&nbsp;</span><span class="src-doc-coretag">@copyright</span><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;2010&nbsp;Tela-Botanica</span></div></li>
<li><div class="src-line"><a name="a11"></a><span class="src-doc">&nbsp;*&nbsp;</span><span class="src-doc-coretag">@license</span><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;http://www.cecill.info/licences/Licence_CeCILL_V2-fr.txt&nbsp;Licence&nbsp;CECILL</span></div></li>
<li><div class="src-line"><a name="a12"></a><span class="src-doc">&nbsp;*&nbsp;</span><span class="src-doc-coretag">@license</span><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;http://www.gnu.org/licenses/gpl.html&nbsp;Licence&nbsp;GNU-GPL</span></div></li>
<li><div class="src-line"><a name="a13"></a><span class="src-doc">&nbsp;*&nbsp;</span><span class="src-doc-coretag">@version</span><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;SVN:&nbsp;$$Id:&nbsp;SquelettePhp.php&nbsp;153&nbsp;2010-03-04&nbsp;10:48:32Z&nbsp;jpm&nbsp;$$</span></div></li>
<li><div class="src-line"><a name="a14"></a><span class="src-doc">&nbsp;*&nbsp;</span><span class="src-doc-coretag">@link</span><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;/doc/framework/</span></div></li>
<li><div class="src-line"><a name="a15"></a><span class="src-doc">&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a16"></a><span class="src-key">class&nbsp;</span><a href="../Framework/SquelettePhp.html">SquelettePhp</a>&nbsp;<span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a17"></a>&nbsp;&nbsp;&nbsp;&nbsp;</div></li>
<li><div class="src-line"><a name="a18"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a19"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Fonction&nbsp;prenant&nbsp;en&nbsp;paramètre&nbsp;un&nbsp;chemin&nbsp;de&nbsp;fichier&nbsp;squelette&nbsp;et&nbsp;un&nbsp;tableau&nbsp;associatif&nbsp;de&nbsp;données,</span></div></li>
<li><div class="src-line"><a name="a20"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;en&nbsp;extrait&nbsp;les&nbsp;variables,&nbsp;charge&nbsp;le&nbsp;squelette&nbsp;et&nbsp;retourne&nbsp;le&nbsp;résultat&nbsp;des&nbsp;deux&nbsp;combinés.</span></div></li>
<li><div class="src-line"><a name="a21"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*</span></div></li>
<li><div class="src-line"><a name="a22"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@param&nbsp;</span><span class="src-doc-type">String&nbsp;</span><span class="src-doc-var">$fichier&nbsp;</span><span class="src-doc">&nbsp;&nbsp;&nbsp;le&nbsp;chemin&nbsp;du&nbsp;fichier&nbsp;du&nbsp;squelette</span></div></li>
<li><div class="src-line"><a name="a23"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@param&nbsp;</span><span class="src-doc-type">Array&nbsp;</span><span class="src-doc">&nbsp;</span><span class="src-doc-var">$donnees&nbsp;</span><span class="src-doc">&nbsp;&nbsp;&nbsp;un&nbsp;tableau&nbsp;associatif&nbsp;contenant&nbsp;les&nbsp;variables&nbsp;a&nbsp;injecter&nbsp;dans&nbsp;le&nbsp;squelette.</span></div></li>
<li><div class="src-line"><a name="a24"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*</span></div></li>
<li><div class="src-line"><a name="a25"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@return&nbsp;</span><span class="src-doc-type">boolean&nbsp;</span><span class="src-doc">false&nbsp;si&nbsp;la&nbsp;vue&nbsp;n'existe&nbsp;pas,&nbsp;sinon&nbsp;la&nbsp;chaine&nbsp;résultat.</span></div></li>
<li><div class="src-line"><a name="a26"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a27"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">public&nbsp;</span><span class="src-key">static&nbsp;</span><span class="src-key">function&nbsp;</span><a href="../Framework/SquelettePhp.html#methodanalyser">analyser</a><span class="src-sym">(</span><span class="src-var">$fichier</span><span class="src-sym">,&nbsp;</span><span class="src-key">Array&nbsp;</span><span class="src-var">$donnees&nbsp;</span>=&nbsp;<span class="src-key">array</span><span class="src-sym">(</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a28"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$sortie&nbsp;</span>=&nbsp;<span class="src-id">false</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a29"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><a href="http://www.php.net/file_exists">file_exists</a><span class="src-sym">(</span><span class="src-var">$fichier</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a30"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;Extraction&nbsp;des&nbsp;variables&nbsp;du&nbsp;tableau&nbsp;de&nbsp;données</span></div></li>
<li><div class="src-line"><a name="a31"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="http://www.php.net/extract">extract</a><span class="src-sym">(</span><span class="src-var">$donnees</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a32"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;Démarage&nbsp;de&nbsp;la&nbsp;bufferisation&nbsp;de&nbsp;sortie</span></div></li>
<li><div class="src-line"><a name="a33"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="http://www.php.net/ob_start">ob_start</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a34"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;Si&nbsp;les&nbsp;tags&nbsp;courts&nbsp;sont&nbsp;activés</span></div></li>
<li><div class="src-line"><a name="a35"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span>(bool)&nbsp;<span class="src-sym">@</span><a href="http://www.php.net/ini_get">ini_get</a><span class="src-sym">(</span><span class="src-str">'short_open_tag'</span><span class="src-sym">)&nbsp;</span>===&nbsp;<span class="src-id">true</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a36"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;Simple&nbsp;inclusion&nbsp;du&nbsp;squelette</span></div></li>
<li><div class="src-line"><a name="a37"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-inc">include&nbsp;</span><span class="src-var">$fichier</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a38"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}&nbsp;</span><span class="src-key">else&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a39"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;Sinon,&nbsp;remplacement&nbsp;des&nbsp;tags&nbsp;courts&nbsp;par&nbsp;la&nbsp;syntaxe&nbsp;classique&nbsp;avec&nbsp;echo</span></div></li>
<li><div class="src-line"><a name="a40"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$html_et_code_php&nbsp;</span>=&nbsp;<span class="src-id">self</span><span class="src-sym">::</span><span class="src-id">traiterTagsCourts</span><span class="src-sym">(</span><span class="src-var">$fichier</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a41"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;Pour&nbsp;évaluer&nbsp;du&nbsp;php&nbsp;mélangé&nbsp;dans&nbsp;du&nbsp;html&nbsp;il&nbsp;est&nbsp;nécessaire&nbsp;de&nbsp;fermer&nbsp;la&nbsp;balise&nbsp;php&nbsp;ouverte&nbsp;par&nbsp;eval</span></div></li>
<li><div class="src-line"><a name="a42"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$html_et_code_php&nbsp;</span>=&nbsp;<span class="src-str">'?&gt;'</span>.<span class="src-var">$html_et_code_php</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a43"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;Interprétation&nbsp;du&nbsp;html&nbsp;et&nbsp;du&nbsp;php&nbsp;dans&nbsp;le&nbsp;buffer</span></div></li>
<li><div class="src-line"><a name="a44"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;echo&nbsp;eval<span class="src-sym">(</span><span class="src-var">$html_et_code_php</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a45"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a46"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;Récupèration&nbsp;du&nbsp;contenu&nbsp;du&nbsp;buffer</span></div></li>
<li><div class="src-line"><a name="a47"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$sortie&nbsp;</span>=&nbsp;<a href="http://www.php.net/ob_get_contents">ob_get_contents</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a48"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;Suppression&nbsp;du&nbsp;buffer</span></div></li>
<li><div class="src-line"><a name="a49"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">@</span><a href="http://www.php.net/ob_end_clean">ob_end_clean</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a50"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}&nbsp;</span><span class="src-key">else&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a51"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$msg&nbsp;</span>=&nbsp;<span class="src-str">&quot;</span><span class="src-str">Le&nbsp;fichier&nbsp;du&nbsp;squelette&nbsp;'<span class="src-var">$fichier</span>'&nbsp;n'existe&nbsp;pas.</span><span class="src-str">&quot;</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a52"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="http://www.php.net/trigger_error">trigger_error</a><span class="src-sym">(</span><span class="src-var">$msg</span><span class="src-sym">,&nbsp;</span><span class="src-id">E_USER_WARNING</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a53"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a54"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;Retourne&nbsp;le&nbsp;contenu</span></div></li>
<li><div class="src-line"><a name="a55"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$sortie</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a56"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a57"></a>&nbsp;&nbsp;&nbsp;&nbsp;</div></li>
<li><div class="src-line"><a name="a58"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a59"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Fonction&nbsp;chargeant&nbsp;le&nbsp;contenu&nbsp;du&nbsp;squelette&nbsp;et&nbsp;remplaçant&nbsp;les&nbsp;tags&nbsp;court&nbsp;php&nbsp;(&lt;?=&nbsp;...)&nbsp;par&nbsp;un&nbsp;tag&nbsp;long&nbsp;avec&nbsp;echo.</span></div></li>
<li><div class="src-line"><a name="a60"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*</span></div></li>
<li><div class="src-line"><a name="a61"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@param&nbsp;</span><span class="src-doc-type">String&nbsp;</span><span class="src-doc-var">$chemin_squelette&nbsp;</span><span class="src-doc">le&nbsp;chemin&nbsp;du&nbsp;fichier&nbsp;du&nbsp;squelette</span></div></li>
<li><div class="src-line"><a name="a62"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*</span></div></li>
<li><div class="src-line"><a name="a63"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@return&nbsp;</span><span class="src-doc-type">string&nbsp;</span><span class="src-doc">le&nbsp;contenu&nbsp;du&nbsp;fichier&nbsp;du&nbsp;squelette&nbsp;php&nbsp;avec&nbsp;les&nbsp;tags&nbsp;courts&nbsp;remplacés.</span></div></li>
<li><div class="src-line"><a name="a64"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a65"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">private&nbsp;</span><span class="src-key">static&nbsp;</span><span class="src-key">function&nbsp;</span><span class="src-id">traiterTagsCourts</span><span class="src-sym">(</span><span class="src-var">$chemin_squelette</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a66"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$contenu&nbsp;</span>=&nbsp;<a href="http://www.php.net/file_get_contents">file_get_contents</a><span class="src-sym">(</span><span class="src-var">$chemin_squelette</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a67"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;Remplacement&nbsp;de&nbsp;tags&nbsp;courts&nbsp;par&nbsp;un&nbsp;tag&nbsp;long&nbsp;avec&nbsp;echo</span></div></li>
<li><div class="src-line"><a name="a68"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$contenu&nbsp;</span>=&nbsp;<a href="http://www.php.net/str_replace">str_replace</a><span class="src-sym">(</span><span class="src-str">'&lt;?='</span><span class="src-sym">,&nbsp;</span><span class="src-str">'&lt;?php&nbsp;echo&nbsp;'</span><span class="src-sym">,&nbsp;&nbsp;</span><span class="src-var">$contenu</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a69"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;Ajout&nbsp;systématique&nbsp;d'un&nbsp;point&nbsp;virgule&nbsp;avant&nbsp;la&nbsp;fermeture&nbsp;php</span></div></li>
<li><div class="src-line"><a name="a70"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$contenu&nbsp;</span>=&nbsp;<a href="http://www.php.net/preg_replace">preg_replace</a><span class="src-sym">(</span><span class="src-str">&quot;/;*\s*\?&gt;/&quot;</span><span class="src-sym">,&nbsp;</span><span class="src-str">&quot;;&nbsp;?&gt;&quot;</span><span class="src-sym">,&nbsp;</span><span class="src-var">$contenu</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a71"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$contenu</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a72"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a73"></a><span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a74"></a><span class="src-php">?&gt;</span></div></li>
</ol></div>
</div>
<p class="notes" id="credit">
Documentation generated on Thu, 04 Mar 2010 19:27:25 +0100 by <a href="http://www.phpdoc.org" target="_blank">phpDocumentor 1.4.3</a>
</p>
</body>
</html>
/tags/v0.3-aleaume/doc/HTMLframesConverter/__filesource/fsource_Framework__Registre.php.html
New file
0,0 → 1,114
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<!-- template designed by Marco Von Ballmoos -->
<title>File Source for Registre.php</title>
<meta http-equiv='Content-Type' content='text/html; charset=UTF-8'/>
<link rel="stylesheet" href="../media/stylesheet.css" />
</head>
<body>
<h1>Source for file Registre.php</h1>
<p>Documentation is available at <a href="../Framework/_Registre.php.html">Registre.php</a></p>
<div class="src-code">
<div class="src-code"><ol><li><div class="src-line"><a name="a1"></a><span class="src-php">&lt;?php</span></div></li>
<li><div class="src-line"><a name="a2"></a><span class="src-comm">//&nbsp;declare(encoding='UTF-8');</span></div></li>
<li><div class="src-line"><a name="a3"></a><span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a4"></a><span class="src-doc">&nbsp;*&nbsp;Classe&nbsp;registre,&nbsp;qui&nbsp;permet&nbsp;un&nbsp;accès&nbsp;à&nbsp;différentes&nbsp;variables&nbsp;à&nbsp;travers&nbsp;les&nbsp;autres&nbsp;classes.</span></div></li>
<li><div class="src-line"><a name="a5"></a><span class="src-doc">&nbsp;*&nbsp;C'est&nbsp;un&nbsp;singleton</span></div></li>
<li><div class="src-line"><a name="a6"></a><span class="src-doc">&nbsp;*</span></div></li>
<li><div class="src-line"><a name="a7"></a><span class="src-doc">*&nbsp;PHP&nbsp;Version&nbsp;5</span></div></li>
<li><div class="src-line"><a name="a8"></a><span class="src-doc">*</span></div></li>
<li><div class="src-line"><a name="a9"></a><span class="src-doc">*&nbsp;</span><span class="src-doc-coretag">@category</span><span class="src-doc">&nbsp;&nbsp;Class</span></div></li>
<li><div class="src-line"><a name="a10"></a><span class="src-doc">*&nbsp;</span><span class="src-doc-coretag">@package</span><span class="src-doc">&nbsp;&nbsp;&nbsp;Framework</span></div></li>
<li><div class="src-line"><a name="a11"></a><span class="src-doc">*&nbsp;</span><span class="src-doc-coretag">@author</span><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;Jean-Pascal&nbsp;Milcent&nbsp;&lt;jmp@tela-botanica.org&gt;</span></div></li>
<li><div class="src-line"><a name="a12"></a><span class="src-doc">*&nbsp;</span><span class="src-doc-coretag">@copyright</span><span class="src-doc">&nbsp;2009&nbsp;Tela-Botanica</span></div></li>
<li><div class="src-line"><a name="a13"></a><span class="src-doc">*&nbsp;</span><span class="src-doc-coretag">@license</span><span class="src-doc">&nbsp;&nbsp;&nbsp;http://www.cecill.info/licences/Licence_CeCILL_V2-fr.txt&nbsp;Licence&nbsp;CECILL</span></div></li>
<li><div class="src-line"><a name="a14"></a><span class="src-doc">*&nbsp;</span><span class="src-doc-coretag">@license</span><span class="src-doc">&nbsp;&nbsp;&nbsp;http://www.gnu.org/licenses/gpl.html&nbsp;Licence&nbsp;GNU-GPL</span></div></li>
<li><div class="src-line"><a name="a15"></a><span class="src-doc">*&nbsp;</span><span class="src-doc-coretag">@version</span><span class="src-doc">&nbsp;&nbsp;&nbsp;SVN:&nbsp;$$Id:&nbsp;Registre.php&nbsp;120&nbsp;2009-09-01&nbsp;12:21:14Z&nbsp;aurelien&nbsp;$$</span></div></li>
<li><div class="src-line"><a name="a16"></a><span class="src-doc">*&nbsp;</span><span class="src-doc-coretag">@link</span><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;/doc/framework/</span></div></li>
<li><div class="src-line"><a name="a17"></a><span class="src-doc">*</span></div></li>
<li><div class="src-line"><a name="a18"></a><span class="src-doc">*/</span></div></li>
<li><div class="src-line"><a name="a19"></a><span class="src-key">class&nbsp;</span><a href="../Framework/Registre.html">Registre</a>&nbsp;<span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a20"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a21"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a22"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Tableau&nbsp;associatif&nbsp;stockant&nbsp;les&nbsp;variables</span></div></li>
<li><div class="src-line"><a name="a23"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a24"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">private&nbsp;</span><span class="src-var">$stockage&nbsp;</span>=&nbsp;<span class="src-key">array</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a25"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a26"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;La&nbsp;classe&nbsp;registre&nbsp;se&nbsp;contient&nbsp;elle-même,&nbsp;(pour&nbsp;le&nbsp;pattern&nbsp;singleton)</span></div></li>
<li><div class="src-line"><a name="a27"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a28"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">private&nbsp;</span><span class="src-key">static&nbsp;</span><span class="src-var">$registre</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a29"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a30"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a31"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Constructeur&nbsp;par&nbsp;défaut,&nbsp;privé,&nbsp;car&nbsp;on&nbsp;accède&nbsp;à&nbsp;la&nbsp;classe&nbsp;par&nbsp;le&nbsp;getInstance</span></div></li>
<li><div class="src-line"><a name="a32"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a33"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">private&nbsp;</span><span class="src-key">function&nbsp;</span><span class="src-id">__construct</span><span class="src-sym">(</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a34"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a35"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a36"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a37"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Fonction&nbsp;qui&nbsp;renvoie&nbsp;l'instance&nbsp;de&nbsp;classe&nbsp;en&nbsp;assurant&nbsp;son&nbsp;unicité,&nbsp;c'est&nbsp;l'unique&nbsp;méthode&nbsp;qui&nbsp;doit&nbsp;être</span></div></li>
<li><div class="src-line"><a name="a38"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;utilisée&nbsp;pour&nbsp;récupérer&nbsp;l'objet&nbsp;Registre</span></div></li>
<li><div class="src-line"><a name="a39"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a40"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">public&nbsp;</span><span class="src-key">static&nbsp;</span><span class="src-key">function&nbsp;</span><a href="../Framework/Registre.html#methodgetInstance">getInstance</a><span class="src-sym">(</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a41"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-id">self</span><span class="src-sym">::</span><span class="src-var">$registre&nbsp;</span>instanceof&nbsp;<span class="src-id">Registre</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a42"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-id">self</span><span class="src-sym">::</span><span class="src-var">$registre</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a43"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a44"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-id">self</span><span class="src-sym">::</span><span class="src-var">$registre&nbsp;</span>=&nbsp;<span class="src-key">new&nbsp;</span><span class="src-id">Registre</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a45"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-id">self</span><span class="src-sym">::</span><span class="src-var">$registre</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a46"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a47"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a48"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a49"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Ajoute&nbsp;un&nbsp;objet&nbsp;au&nbsp;tableau&nbsp;selon&nbsp;un&nbsp;intitulé&nbsp;donné</span></div></li>
<li><div class="src-line"><a name="a50"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@param&nbsp;</span><span class="src-doc-type">string&nbsp;</span><span class="src-doc">l'intitulé&nbsp;sous&nbsp;lequel&nbsp;l'objet&nbsp;sera&nbsp;conservé</span></div></li>
<li><div class="src-line"><a name="a51"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@param&nbsp;</span><span class="src-doc-type">mixed&nbsp;</span><span class="src-doc">l'objet&nbsp;à&nbsp;conserver</span></div></li>
<li><div class="src-line"><a name="a52"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a53"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">public&nbsp;</span><span class="src-key">function&nbsp;</span><a href="../Framework/Registre.html#methodset">set</a><span class="src-sym">(</span><span class="src-var">$intitule</span><span class="src-sym">,&nbsp;</span><span class="src-var">$objet</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a54"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-id">is_array</span><span class="src-sym">(</span><span class="src-var">$objet</span><span class="src-sym">)&nbsp;</span>&amp;&amp;&nbsp;isset<span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">stockage</span><span class="src-sym">[</span><span class="src-var">$intitule</span><span class="src-sym">]</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a55"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">stockage</span><span class="src-sym">[</span><span class="src-var">$intitule</span><span class="src-sym">]&nbsp;</span>=&nbsp;<a href="http://www.php.net/array_merge">array_merge</a><span class="src-sym">(</span>(array)&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">stockage</span><span class="src-sym">[</span><span class="src-var">$intitule</span><span class="src-sym">]</span><span class="src-sym">,&nbsp;</span>(array)&nbsp;<span class="src-var">$objet</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a56"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$message&nbsp;</span>=&nbsp;<span class="src-str">&quot;</span><span class="src-str">Le&nbsp;tableau&nbsp;<span class="src-var">$intitule</span>&nbsp;présent&nbsp;dans&nbsp;le&nbsp;registre&nbsp;a&nbsp;été&nbsp;fusionné&nbsp;avec&nbsp;un&nbsp;nouveau&nbsp;tableau&nbsp;de&nbsp;même&nbsp;intitulé&nbsp;!</span><span class="src-str">&quot;</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a57"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="http://www.php.net/trigger_error">trigger_error</a><span class="src-sym">(</span><span class="src-var">$message</span><span class="src-sym">,&nbsp;</span><span class="src-id">E_USER_WARNING</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a58"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}&nbsp;</span><span class="src-key">else&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a59"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">stockage</span><span class="src-sym">[</span><span class="src-var">$intitule</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-var">$objet</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a60"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a61"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a62"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a63"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a64"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Renvoie&nbsp;l'objet&nbsp;associé&nbsp;à&nbsp;l'intitulé&nbsp;donné&nbsp;en&nbsp;paramètre</span></div></li>
<li><div class="src-line"><a name="a65"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@return&nbsp;</span><span class="src-doc-type">mixed&nbsp;</span><span class="src-doc">l'objet&nbsp;associé&nbsp;à&nbsp;l'intitulé&nbsp;ou&nbsp;null&nbsp;s'il&nbsp;n'est&nbsp;pas&nbsp;présent</span></div></li>
<li><div class="src-line"><a name="a66"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a67"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">public&nbsp;</span><span class="src-key">function&nbsp;</span><a href="../Framework/Registre.html#methodget">get</a><span class="src-sym">(</span><span class="src-var">$intitule</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a68"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span>isset<span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">stockage</span><span class="src-sym">[</span><span class="src-var">$intitule</span><span class="src-sym">]</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a69"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">stockage</span><span class="src-sym">[</span><span class="src-var">$intitule</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a70"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a71"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-id">null</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a72"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a73"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a74"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a75"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Détruit&nbsp;l'objet&nbsp;associé&nbsp;à&nbsp;l'intitulé,&nbsp;n'a&nbsp;pas&nbsp;d'effet&nbsp;si&nbsp;il&nbsp;n'y&nbsp;a&nbsp;pas&nbsp;d'objet&nbsp;associé</span></div></li>
<li><div class="src-line"><a name="a76"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a77"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">public&nbsp;</span><span class="src-key">function&nbsp;</span><a href="../Framework/Registre.html#methoddetruire">detruire</a><span class="src-sym">(</span><span class="src-var">$intitule</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a78"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span>isset<span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">stockage</span><span class="src-sym">[</span><span class="src-var">$intitule</span><span class="src-sym">]</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a79"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;unset<span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">stockage</span><span class="src-sym">[</span><span class="src-var">$intitule</span><span class="src-sym">]</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a80"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a81"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a82"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a83"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a84"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Teste&nbsp;si&nbsp;un&nbsp;objet&nbsp;est&nbsp;présent&nbsp;sous&nbsp;un&nbsp;intitulé&nbsp;donné</span></div></li>
<li><div class="src-line"><a name="a85"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@return&nbsp;</span><span class="src-doc-type">boolean&nbsp;</span><span class="src-doc">true&nbsp;si&nbsp;un&nbsp;objet&nbsp;associé&nbsp;à&nbsp;cet&nbsp;intitulé&nbsp;est&nbsp;présent,&nbsp;false&nbsp;sinon</span></div></li>
<li><div class="src-line"><a name="a86"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a87"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">public&nbsp;</span><span class="src-key">function&nbsp;</span><a href="../Framework/Registre.html#methodexiste">existe</a><span class="src-sym">(</span><span class="src-var">$intitule</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a88"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if</span><span class="src-sym">(</span>isset<span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">stockage</span><span class="src-sym">[</span><span class="src-var">$intitule</span><span class="src-sym">]</span><span class="src-sym">))</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a89"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-id">true</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a90"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a91"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-id">false</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a92"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a93"></a><span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a94"></a><span class="src-php">?&gt;</span></div></li>
</ol></div>
</div>
<p class="notes" id="credit">
Documentation generated on Thu, 04 Mar 2010 19:27:25 +0100 by <a href="http://www.phpdoc.org" target="_blank">phpDocumentor 1.4.3</a>
</p>
</body>
</html>
/tags/v0.3-aleaume/doc/HTMLframesConverter/__filesource/fsource_Framework__Chronometre.php.html
New file
0,0 → 1,172
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<!-- template designed by Marco Von Ballmoos -->
<title>File Source for Chronometre.php</title>
<meta http-equiv='Content-Type' content='text/html; charset=UTF-8'/>
<link rel="stylesheet" href="../media/stylesheet.css" />
</head>
<body>
<h1>Source for file Chronometre.php</h1>
<p>Documentation is available at <a href="../Framework/_Chronometre.php.html">Chronometre.php</a></p>
<div class="src-code">
<div class="src-code"><ol><li><div class="src-line"><a name="a1"></a><span class="src-php">&lt;?php</span></div></li>
<li><div class="src-line"><a name="a2"></a><span class="src-comm">//&nbsp;declare(encoding='UTF-8');</span></div></li>
<li><div class="src-line"><a name="a3"></a><span class="src-doc">/**&nbsp;Classe&nbsp;Chronometre()&nbsp;-&nbsp;Permet&nbsp;de&nbsp;stocker&nbsp;et&nbsp;d'afficher</span></div></li>
<li><div class="src-line"><a name="a4"></a><span class="src-doc">&nbsp;*&nbsp;les&nbsp;temps&nbsp;d'éxécution&nbsp;de&nbsp;script.</span></div></li>
<li><div class="src-line"><a name="a5"></a><span class="src-doc">&nbsp;*</span></div></li>
<li><div class="src-line"><a name="a6"></a><span class="src-doc">&nbsp;*&nbsp;Cette&nbsp;classe&nbsp;permet&nbsp;de&nbsp;réaliser&nbsp;un&nbsp;ensemble</span></div></li>
<li><div class="src-line"><a name="a7"></a><span class="src-doc">&nbsp;*&nbsp;de&nbsp;mesure&nbsp;de&nbsp;temps&nbsp;prises&nbsp;à</span></div></li>
<li><div class="src-line"><a name="a8"></a><span class="src-doc">&nbsp;*&nbsp;différents&nbsp;endroits&nbsp;d'un&nbsp;script.</span></div></li>
<li><div class="src-line"><a name="a9"></a><span class="src-doc">&nbsp;*&nbsp;Ces&nbsp;mesures&nbsp;peuvent&nbsp;ensuite&nbsp;être&nbsp;affichées&nbsp;au</span></div></li>
<li><div class="src-line"><a name="a10"></a><span class="src-doc">&nbsp;*&nbsp;sein&nbsp;d'un&nbsp;tableau&nbsp;XHTML.</span></div></li>
<li><div class="src-line"><a name="a11"></a><span class="src-doc">&nbsp;*</span></div></li>
<li><div class="src-line"><a name="a12"></a><span class="src-doc">&nbsp;*</span></div></li>
<li><div class="src-line"><a name="a13"></a><span class="src-doc">&nbsp;*&nbsp;PHP&nbsp;Version&nbsp;5</span></div></li>
<li><div class="src-line"><a name="a14"></a><span class="src-doc">&nbsp;*</span></div></li>
<li><div class="src-line"><a name="a15"></a><span class="src-doc">&nbsp;*&nbsp;</span><span class="src-doc-coretag">@category</span><span class="src-doc">&nbsp;&nbsp;PHP</span></div></li>
<li><div class="src-line"><a name="a16"></a><span class="src-doc">&nbsp;*&nbsp;</span><span class="src-doc-coretag">@package</span><span class="src-doc">&nbsp;&nbsp;&nbsp;Framework</span></div></li>
<li><div class="src-line"><a name="a17"></a><span class="src-doc">&nbsp;*&nbsp;</span><span class="src-doc-coretag">@author</span><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;Jean-Pascal&nbsp;MILCENT&nbsp;&lt;jpm@tela-botanica.org&gt;</span></div></li>
<li><div class="src-line"><a name="a18"></a><span class="src-doc">&nbsp;*&nbsp;</span><span class="src-doc-coretag">@copyright</span><span class="src-doc">&nbsp;2009&nbsp;Tela-Botanica</span></div></li>
<li><div class="src-line"><a name="a19"></a><span class="src-doc">&nbsp;*&nbsp;</span><span class="src-doc-coretag">@license</span><span class="src-doc">&nbsp;&nbsp;&nbsp;http://www.cecill.info/licences/Licence_CeCILL_V2-fr.txt&nbsp;Licence&nbsp;CECILL</span></div></li>
<li><div class="src-line"><a name="a20"></a><span class="src-doc">&nbsp;*&nbsp;</span><span class="src-doc-coretag">@version</span><span class="src-doc">&nbsp;&nbsp;&nbsp;Release:&nbsp;&lt;package_version&gt;</span></div></li>
<li><div class="src-line"><a name="a21"></a><span class="src-doc">&nbsp;*&nbsp;</span><span class="src-doc-coretag">@link</span><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;/doc/framework/</span></div></li>
<li><div class="src-line"><a name="a22"></a><span class="src-doc">&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a23"></a><span class="src-key">class&nbsp;</span><a href="../Framework/Chronometre.html">Chronometre</a>&nbsp;<span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a24"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">/***&nbsp;Attributs&nbsp;:&nbsp;***/</span></div></li>
<li><div class="src-line"><a name="a25"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">private&nbsp;</span><span class="src-var">$_temps&nbsp;</span>=&nbsp;<span class="src-key">array</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a26"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a27"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**&nbsp;Constructeur&nbsp;:&nbsp;**/</span></div></li>
<li><div class="src-line"><a name="a28"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">public&nbsp;</span><span class="src-key">function&nbsp;</span><a href="../Framework/Chronometre.html#method__construct">__construct</a><span class="src-sym">(</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a29"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Framework/Chronometre.html#methodsetTemps">setTemps</a><span class="src-sym">(</span><span class="src-key">array</span><span class="src-sym">(</span><span class="src-str">'depart'&nbsp;</span>=&gt;&nbsp;<a href="http://www.php.net/microtime">microtime</a><span class="src-sym">(</span><span class="src-sym">)))</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a30"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a31"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a32"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**&nbsp;Accesseurs&nbsp;:</span></div></li>
<li><div class="src-line"><a name="a33"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*</span></div></li>
<li><div class="src-line"><a name="a34"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@param&nbsp;</span><span class="src-doc-type">string&nbsp;</span><span class="src-doc-var">$cle&nbsp;</span><span class="src-doc">la&nbsp;cle&nbsp;associée&nbsp;à&nbsp;un&nbsp;chronomètre&nbsp;particulier</span></div></li>
<li><div class="src-line"><a name="a35"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*</span></div></li>
<li><div class="src-line"><a name="a36"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@return&nbsp;</span><span class="src-doc-type">int&nbsp;</span><span class="src-doc">le&nbsp;temps&nbsp;écoulé</span></div></li>
<li><div class="src-line"><a name="a37"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a38"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">public&nbsp;</span><span class="src-key">function&nbsp;</span><a href="../Framework/Chronometre.html#methodgetTemps">getTemps</a><span class="src-sym">(</span><span class="src-var">$cle&nbsp;</span>=&nbsp;<span class="src-id">null</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a39"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$temps&nbsp;</span>=&nbsp;<span class="src-str">''</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a40"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-sym">!</span><a href="http://www.php.net/is_null">is_null</a><span class="src-sym">(</span><span class="src-var">$cle</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a41"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$temps&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">_temps</span><span class="src-sym">[</span><span class="src-var">$cle</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a42"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}&nbsp;</span><span class="src-key">else&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a43"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$temps&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">_temps</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a44"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a45"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$temps</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a46"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a47"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a48"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**&nbsp;Setteur&nbsp;pour&nbsp;la&nbsp;variable&nbsp;temps</span></div></li>
<li><div class="src-line"><a name="a49"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*</span></div></li>
<li><div class="src-line"><a name="a50"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@param&nbsp;</span><span class="src-doc-type">array()&nbsp;</span><span class="src-doc-var">$moment&nbsp;</span><span class="src-doc">ajoute&nbsp;des&nbsp;points&nbsp;de&nbsp;chronométrage&nbsp;au&nbsp;tableau&nbsp;_temps</span></div></li>
<li><div class="src-line"><a name="a51"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*</span></div></li>
<li><div class="src-line"><a name="a52"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@return&nbsp;</span><span class="src-doc-type">null&nbsp;</span></div></li>
<li><div class="src-line"><a name="a53"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a54"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">public&nbsp;</span><span class="src-key">function&nbsp;</span><a href="../Framework/Chronometre.html#methodsetTemps">setTemps</a><span class="src-sym">(</span><span class="src-var">$moment&nbsp;</span>=&nbsp;<span class="src-key">array&nbsp;</span><span class="src-sym">(</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a55"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="http://www.php.net/array_push">array_push</a><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">_temps</span><span class="src-sym">,&nbsp;</span><span class="src-var">$moment</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a56"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a57"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a58"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">/***&nbsp;Méthodes&nbsp;:&nbsp;***/</span></div></li>
<li><div class="src-line"><a name="a59"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a60"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**&nbsp;Méthode&nbsp;afficherChrono()&nbsp;-</span></div></li>
<li><div class="src-line"><a name="a61"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Permet&nbsp;d'afficher&nbsp;les&nbsp;temps&nbsp;d'éxécution&nbsp;de&nbsp;différentes&nbsp;parties&nbsp;d'un&nbsp;script.</span></div></li>
<li><div class="src-line"><a name="a62"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;*</span></div></li>
<li><div class="src-line"><a name="a63"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Cette&nbsp;fonction&nbsp;permet&nbsp;d'afficher&nbsp;un&nbsp;ensemble&nbsp;de</span></div></li>
<li><div class="src-line"><a name="a64"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;mesure&nbsp;de&nbsp;temps&nbsp;prises&nbsp;à&nbsp;différents&nbsp;endroits&nbsp;d'un&nbsp;script.</span></div></li>
<li><div class="src-line"><a name="a65"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Ces&nbsp;mesures&nbsp;sont&nbsp;affichées&nbsp;au&nbsp;sein&nbsp;d'un&nbsp;tableau&nbsp;XHTML</span></div></li>
<li><div class="src-line"><a name="a66"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;dont&nbsp;on&nbsp;peut&nbsp;controler&nbsp;l'indentation&nbsp;des&nbsp;balises.</span></div></li>
<li><div class="src-line"><a name="a67"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Pour&nbsp;un&nbsp;site&nbsp;en&nbsp;production,&nbsp;il&nbsp;suffit&nbsp;d'ajouter&nbsp;un&nbsp;style</span></div></li>
<li><div class="src-line"><a name="a68"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;#chrono&nbsp;{display:none;}&nbsp;dans&nbsp;la&nbsp;css.&nbsp;De&nbsp;cette&nbsp;façon,</span></div></li>
<li><div class="src-line"><a name="a69"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;le&nbsp;tableau&nbsp;ne&nbsp;s'affichera&nbsp;pas.&nbsp;Le&nbsp;webmaster&nbsp;lui&nbsp;pourra</span></div></li>
<li><div class="src-line"><a name="a70"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;rajouter&nbsp;sa&nbsp;propre&nbsp;feuille&nbsp;de&nbsp;style&nbsp;affichant&nbsp;le&nbsp;tableau.</span></div></li>
<li><div class="src-line"><a name="a71"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Le&nbsp;développeur&nbsp;initial&nbsp;de&nbsp;cette&nbsp;fonction&nbsp;est&nbsp;Loic&nbsp;d'Anterroches.</span></div></li>
<li><div class="src-line"><a name="a72"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Elle&nbsp;a&nbsp;été&nbsp;modifiée&nbsp;par&nbsp;Jean-Pascal&nbsp;Milcent.</span></div></li>
<li><div class="src-line"><a name="a73"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Elle&nbsp;utilise&nbsp;une&nbsp;variable&nbsp;gobale&nbsp;:&nbsp;$_CHRONO_</span></div></li>
<li><div class="src-line"><a name="a74"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;*</span></div></li>
<li><div class="src-line"><a name="a75"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@author</span><span class="src-doc">&nbsp;&nbsp;&nbsp;Loic&nbsp;d'Anterroches</span></div></li>
<li><div class="src-line"><a name="a76"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@author</span><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Jean-Pascal&nbsp;MILCENT&nbsp;&lt;jpm@tela-botanica.org&gt;</span></div></li>
<li><div class="src-line"><a name="a77"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;*</span></div></li>
<li><div class="src-line"><a name="a78"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@param&nbsp;</span><span class="src-doc">&nbsp;&nbsp;&nbsp;</span><span class="src-doc-type">int&nbsp;</span><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="src-doc-var">$indentation_origine&nbsp;</span><span class="src-doc">l'indentation&nbsp;de&nbsp;base.</span></div></li>
<li><div class="src-line"><a name="a79"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@param&nbsp;</span><span class="src-doc">&nbsp;&nbsp;&nbsp;</span><span class="src-doc-type">int&nbsp;</span><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="src-doc-var">$indentation&nbsp;</span><span class="src-doc">le&nbsp;pas&nbsp;d'indentation.</span></div></li>
<li><div class="src-line"><a name="a80"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@return&nbsp;</span><span class="src-doc">&nbsp;&nbsp;</span><span class="src-doc-type">string&nbsp;</span><span class="src-doc">&nbsp;la&nbsp;chaine&nbsp;XHTML&nbsp;de&nbsp;mesure&nbsp;des&nbsp;temps.</span></div></li>
<li><div class="src-line"><a name="a81"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a82"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">public&nbsp;</span><span class="src-key">function&nbsp;</span><a href="../Framework/Chronometre.html#methodafficherChrono">afficherChrono</a><span class="src-sym">(</span><span class="src-var">$indentation_origine&nbsp;</span>=&nbsp;<span class="src-num">8</span><span class="src-sym">,&nbsp;</span><span class="src-var">$indentation&nbsp;</span>=&nbsp;<span class="src-num">4</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a83"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;Création&nbsp;du&nbsp;chrono&nbsp;de&nbsp;fin</span></div></li>
<li><div class="src-line"><a name="a84"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'_SCRIPT_'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'chrono'</span><span class="src-sym">]</span><span class="src-sym">-&gt;</span><span class="src-id">setTemps</span><span class="src-sym">(</span><span class="src-key">array&nbsp;</span><span class="src-sym">(</span></div></li>
<li><div class="src-line"><a name="a85"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-str">'fin'&nbsp;</span>=&gt;&nbsp;<a href="http://www.php.net/microtime">microtime</a><span class="src-sym">(</span><span class="src-sym">)</span></div></li>
<li><div class="src-line"><a name="a86"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">))</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a87"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a88"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;Début&nbsp;création&nbsp;de&nbsp;l'affichage</span></div></li>
<li><div class="src-line"><a name="a89"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$sortie&nbsp;</span>=&nbsp;<a href="http://www.php.net/str_repeat">str_repeat</a><span class="src-sym">(</span><span class="src-str">'&nbsp;'</span><span class="src-sym">,&nbsp;</span><span class="src-var">$indentation_origine</span><span class="src-sym">)&nbsp;</span>.</div></li>
<li><div class="src-line"><a name="a90"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-str">'&lt;table&nbsp;id=&quot;chrono&quot;&nbsp;lang=&quot;fr&quot;&nbsp;summary=&quot;Résultat&nbsp;du</span></div></li>
<li><div class="src-line"><a name="a91"></a><span class="src-str">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;chronométrage&nbsp;du&nbsp;programme&nbsp;affichant&nbsp;la&nbsp;page&nbsp;actuelle.&quot;&gt;'&nbsp;</span>.&nbsp;<span class="src-str">&quot;\n&quot;</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a92"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$sortie&nbsp;</span>.=&nbsp;<a href="http://www.php.net/str_repeat">str_repeat</a><span class="src-sym">(</span><span class="src-str">'&nbsp;'</span><span class="src-sym">,&nbsp;</span><span class="src-sym">(</span><span class="src-var">$indentation_origine&nbsp;</span>+&nbsp;<span class="src-sym">(</span><span class="src-var">$indentation&nbsp;</span>*&nbsp;<span class="src-num">1</span><span class="src-sym">)))&nbsp;</span>.</div></li>
<li><div class="src-line"><a name="a93"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-str">'&lt;caption&gt;Chronométrage&lt;/caption&gt;'&nbsp;</span>.&nbsp;<span class="src-str">&quot;\n&quot;</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a94"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$sortie&nbsp;</span>.=&nbsp;<a href="http://www.php.net/str_repeat">str_repeat</a><span class="src-sym">(</span><span class="src-str">'&nbsp;'</span><span class="src-sym">,&nbsp;</span><span class="src-sym">(</span><span class="src-var">$indentation_origine&nbsp;</span>+&nbsp;<span class="src-sym">(</span><span class="src-var">$indentation&nbsp;</span>*&nbsp;<span class="src-num">1</span><span class="src-sym">)))&nbsp;</span>.</div></li>
<li><div class="src-line"><a name="a95"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-str">'&lt;thead&gt;'&nbsp;</span>.&nbsp;<span class="src-str">&quot;\n&quot;</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a96"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$sortie&nbsp;</span>.=&nbsp;<a href="http://www.php.net/str_repeat">str_repeat</a><span class="src-sym">(</span><span class="src-str">'&nbsp;'</span><span class="src-sym">,&nbsp;</span><span class="src-sym">(</span><span class="src-var">$indentation_origine&nbsp;</span>+&nbsp;<span class="src-sym">(</span><span class="src-var">$indentation&nbsp;</span>*&nbsp;<span class="src-num">2</span><span class="src-sym">)))&nbsp;</span>.</div></li>
<li><div class="src-line"><a name="a97"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-str">'&lt;tr&gt;&lt;th&gt;Action&lt;/th&gt;&lt;th&gt;Temps&nbsp;écoulé&nbsp;(en&nbsp;s.)&lt;/th&gt;</span></div></li>
<li><div class="src-line"><a name="a98"></a><span class="src-str">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;th&gt;Cumul&nbsp;du&nbsp;temps&nbsp;écoulé&nbsp;(en&nbsp;s.)&lt;/th&gt;&lt;/tr&gt;'&nbsp;</span>.&nbsp;<span class="src-str">&quot;\n&quot;</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a99"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$sortie&nbsp;</span>.=&nbsp;<a href="http://www.php.net/str_repeat">str_repeat</a><span class="src-sym">(</span><span class="src-str">'&nbsp;'</span><span class="src-sym">,&nbsp;</span><span class="src-sym">(</span><span class="src-var">$indentation_origine&nbsp;</span>+&nbsp;<span class="src-sym">(</span><span class="src-var">$indentation&nbsp;</span>*&nbsp;<span class="src-num">1</span><span class="src-sym">)))&nbsp;</span>.</div></li>
<li><div class="src-line"><a name="a100"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-str">'&lt;/thead&gt;'&nbsp;</span>.&nbsp;<span class="src-str">&quot;\n&quot;</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a101"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a102"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$tbody&nbsp;</span>=&nbsp;<a href="http://www.php.net/str_repeat">str_repeat</a><span class="src-sym">(</span><span class="src-str">'&nbsp;'</span><span class="src-sym">,&nbsp;</span><span class="src-sym">(</span><span class="src-var">$indentation_origine&nbsp;</span>+&nbsp;<span class="src-sym">(</span><span class="src-var">$indentation&nbsp;</span>*&nbsp;<span class="src-num">1</span><span class="src-sym">)))&nbsp;</span>.</div></li>
<li><div class="src-line"><a name="a103"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-str">'&lt;tbody&gt;'&nbsp;</span>.&nbsp;<span class="src-str">&quot;\n&quot;</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a104"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a105"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$total_tps_ecoule&nbsp;</span>=&nbsp;<span class="src-num">0</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a106"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a107"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;Récupération&nbsp;de&nbsp;la&nbsp;premiére&nbsp;mesure</span></div></li>
<li><div class="src-line"><a name="a108"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$tab_depart&nbsp;</span>=&nbsp;<span class="src-sym">&amp;&nbsp;</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Framework/Chronometre.html#methodgetTemps">getTemps</a><span class="src-sym">(</span><span class="src-num">0</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a109"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;list&nbsp;<span class="src-sym">(</span><span class="src-var">$usec</span><span class="src-sym">,&nbsp;</span><span class="src-var">$sec</span><span class="src-sym">)&nbsp;</span>=&nbsp;<a href="http://www.php.net/explode">explode</a><span class="src-sym">(</span><span class="src-str">'&nbsp;'</span><span class="src-sym">,&nbsp;</span><span class="src-var">$tab_depart</span><span class="src-sym">[</span><span class="src-str">'depart'</span><span class="src-sym">]</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a110"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a111"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;Ce&nbsp;temps&nbsp;correspond&nbsp;à&nbsp;tps_fin</span></div></li>
<li><div class="src-line"><a name="a112"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$tps_debut&nbsp;</span>=&nbsp;<span class="src-sym">(</span>(float)&nbsp;<span class="src-var">$usec&nbsp;</span>+&nbsp;(float)&nbsp;<span class="src-var">$sec</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a113"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a114"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">foreach&nbsp;</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Framework/Chronometre.html#methodgetTemps">getTemps</a><span class="src-sym">(</span><span class="src-sym">)&nbsp;</span><span class="src-key">as&nbsp;</span><span class="src-var">$tab_temps</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a115"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">foreach&nbsp;</span><span class="src-sym">(</span><span class="src-var">$tab_temps&nbsp;</span><span class="src-key">as&nbsp;</span><span class="src-var">$cle&nbsp;</span>=&gt;&nbsp;<span class="src-var">$valeur</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a116"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;list&nbsp;<span class="src-sym">(</span><span class="src-var">$usec</span><span class="src-sym">,&nbsp;</span><span class="src-var">$sec</span><span class="src-sym">)&nbsp;</span>=&nbsp;<a href="http://www.php.net/explode">explode</a><span class="src-sym">(</span><span class="src-str">'&nbsp;'</span><span class="src-sym">,&nbsp;</span><span class="src-var">$valeur</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a117"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$tps_fin&nbsp;</span>=&nbsp;<span class="src-sym">(</span>(float)&nbsp;<span class="src-var">$usec&nbsp;</span>+&nbsp;(float)&nbsp;<span class="src-var">$sec</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a118"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a119"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$tps_ecoule&nbsp;</span>=&nbsp;<a href="http://www.php.net/abs">abs</a><span class="src-sym">(</span><span class="src-var">$tps_fin&nbsp;</span>-&nbsp;<span class="src-var">$tps_debut</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a120"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$total_tps_ecoule&nbsp;</span>+=&nbsp;<span class="src-var">$tps_ecoule</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a121"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a122"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$tbody&nbsp;</span>.=&nbsp;<a href="http://www.php.net/str_repeat">str_repeat</a><span class="src-sym">(</span><span class="src-str">'&nbsp;'</span><span class="src-sym">,</span></div></li>
<li><div class="src-line"><a name="a123"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">(</span><span class="src-var">$indentation_origine&nbsp;</span>+&nbsp;<span class="src-sym">(</span><span class="src-var">$indentation&nbsp;</span>*&nbsp;<span class="src-num">2</span><span class="src-sym">)))&nbsp;</span>.</div></li>
<li><div class="src-line"><a name="a124"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-str">'&lt;tr&gt;'&nbsp;</span>.</div></li>
<li><div class="src-line"><a name="a125"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-str">'&lt;th&gt;'&nbsp;</span>.&nbsp;<span class="src-var">$cle&nbsp;</span>.&nbsp;<span class="src-str">'&lt;/th&gt;'&nbsp;</span>.</div></li>
<li><div class="src-line"><a name="a126"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-str">'&lt;td&gt;'&nbsp;</span>.&nbsp;<a href="http://www.php.net/number_format">number_format</a><span class="src-sym">(</span><span class="src-var">$tps_ecoule</span><span class="src-sym">,&nbsp;</span><span class="src-num">3</span><span class="src-sym">,&nbsp;</span><span class="src-str">','</span><span class="src-sym">,&nbsp;</span><span class="src-str">'&nbsp;'</span><span class="src-sym">)&nbsp;</span>.&nbsp;<span class="src-str">'&lt;/td&gt;'&nbsp;</span>.</div></li>
<li><div class="src-line"><a name="a127"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-str">'&lt;td&gt;'&nbsp;</span>.&nbsp;<a href="http://www.php.net/number_format">number_format</a><span class="src-sym">(</span><span class="src-var">$total_tps_ecoule</span><span class="src-sym">,&nbsp;</span><span class="src-num">3</span><span class="src-sym">,&nbsp;</span><span class="src-str">','</span><span class="src-sym">,&nbsp;</span><span class="src-str">'&nbsp;'</span><span class="src-sym">)&nbsp;</span>.&nbsp;<span class="src-str">'&lt;/td&gt;'&nbsp;</span>.</div></li>
<li><div class="src-line"><a name="a128"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-str">'&lt;/tr&gt;'&nbsp;</span>.&nbsp;<span class="src-str">&quot;\n&quot;</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a129"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$tps_debut&nbsp;</span>=&nbsp;<span class="src-var">$tps_fin</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a130"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a131"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a132"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$tbody&nbsp;</span>.=&nbsp;<a href="http://www.php.net/str_repeat">str_repeat</a><span class="src-sym">(</span><span class="src-str">'&nbsp;'</span><span class="src-sym">,&nbsp;</span><span class="src-sym">(</span><span class="src-var">$indentation_origine&nbsp;</span>+&nbsp;<span class="src-sym">(</span><span class="src-var">$indentation&nbsp;</span>*&nbsp;<span class="src-num">1</span><span class="src-sym">)))&nbsp;</span>.</div></li>
<li><div class="src-line"><a name="a133"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-str">'&lt;/tbody&gt;'&nbsp;</span>.&nbsp;<span class="src-str">&quot;\n&quot;</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a134"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a135"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$sortie&nbsp;</span>.=&nbsp;<a href="http://www.php.net/str_repeat">str_repeat</a><span class="src-sym">(</span><span class="src-str">'&nbsp;'</span><span class="src-sym">,&nbsp;</span><span class="src-sym">(</span><span class="src-var">$indentation_origine&nbsp;</span>+&nbsp;<span class="src-sym">(</span><span class="src-var">$indentation&nbsp;</span>*&nbsp;<span class="src-num">1</span><span class="src-sym">)))&nbsp;</span>.</div></li>
<li><div class="src-line"><a name="a136"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-str">'&lt;tfoot&gt;'&nbsp;</span>.&nbsp;<span class="src-str">&quot;\n&quot;</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a137"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$sortie&nbsp;</span>.=&nbsp;<a href="http://www.php.net/str_repeat">str_repeat</a><span class="src-sym">(</span><span class="src-str">'&nbsp;'</span><span class="src-sym">,&nbsp;</span><span class="src-sym">(</span><span class="src-var">$indentation_origine&nbsp;</span>+&nbsp;<span class="src-sym">(</span><span class="src-var">$indentation&nbsp;</span>*&nbsp;<span class="src-num">2</span><span class="src-sym">)))&nbsp;</span>.</div></li>
<li><div class="src-line"><a name="a138"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-str">'&lt;tr&gt;'&nbsp;</span>.</div></li>
<li><div class="src-line"><a name="a139"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-str">'&lt;th&gt;'&nbsp;</span>.&nbsp;<span class="src-str">'Total&nbsp;du&nbsp;temps&nbsp;écoulé&nbsp;(en&nbsp;s.)'&nbsp;</span>.&nbsp;<span class="src-str">'&lt;/th&gt;'&nbsp;</span>.</div></li>
<li><div class="src-line"><a name="a140"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-str">'&lt;td&nbsp;colspan=&quot;2&quot;&gt;'&nbsp;</span>.</div></li>
<li><div class="src-line"><a name="a141"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="http://www.php.net/number_format">number_format</a><span class="src-sym">(</span><span class="src-var">$total_tps_ecoule</span><span class="src-sym">,&nbsp;</span><span class="src-num">3</span><span class="src-sym">,&nbsp;</span><span class="src-str">','</span><span class="src-sym">,&nbsp;</span><span class="src-str">'&nbsp;'</span><span class="src-sym">)&nbsp;</span>.&nbsp;<span class="src-str">'&lt;/td&gt;'&nbsp;</span>.</div></li>
<li><div class="src-line"><a name="a142"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-str">'&lt;/tr&gt;'&nbsp;</span>.&nbsp;<span class="src-str">&quot;\n&quot;</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a143"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$sortie&nbsp;</span>.=&nbsp;<a href="http://www.php.net/str_repeat">str_repeat</a><span class="src-sym">(</span><span class="src-str">'&nbsp;'</span><span class="src-sym">,&nbsp;</span><span class="src-sym">(</span><span class="src-var">$indentation_origine&nbsp;</span>+&nbsp;<span class="src-sym">(</span><span class="src-var">$indentation&nbsp;</span>*&nbsp;<span class="src-num">1</span><span class="src-sym">)))&nbsp;</span>.</div></li>
<li><div class="src-line"><a name="a144"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-str">'&lt;/tfoot&gt;'&nbsp;</span>.&nbsp;<span class="src-str">&quot;\n&quot;</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a145"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$sortie&nbsp;</span>.=&nbsp;<span class="src-var">$tbody</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a146"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$sortie&nbsp;</span>.=&nbsp;<a href="http://www.php.net/str_repeat">str_repeat</a><span class="src-sym">(</span><span class="src-str">'&nbsp;'</span><span class="src-sym">,&nbsp;</span><span class="src-var">$indentation_origine</span><span class="src-sym">)&nbsp;</span>.</div></li>
<li><div class="src-line"><a name="a147"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-str">'&lt;/table&gt;'&nbsp;</span>.&nbsp;<span class="src-str">&quot;\n&quot;</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a148"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a149"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$sortie</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a150"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a151"></a><span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a152"></a><span class="src-php">?&gt;</span></div></li>
</ol></div>
</div>
<p class="notes" id="credit">
Documentation generated on Thu, 04 Mar 2010 19:27:11 +0100 by <a href="http://www.phpdoc.org" target="_blank">phpDocumentor 1.4.3</a>
</p>
</body>
</html>
/tags/v0.3-aleaume/doc/HTMLframesConverter/__filesource/fsource_Framework__Config.php.html
New file
0,0 → 1,289
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<!-- template designed by Marco Von Ballmoos -->
<title>File Source for Config.php</title>
<meta http-equiv='Content-Type' content='text/html; charset=UTF-8'/>
<link rel="stylesheet" href="../media/stylesheet.css" />
</head>
<body>
<h1>Source for file Config.php</h1>
<p>Documentation is available at <a href="../Framework/_Config.php.html">Config.php</a></p>
<div class="src-code">
<div class="src-code"><ol><li><div class="src-line"><a name="a1"></a><span class="src-php">&lt;?php</span></div></li>
<li><div class="src-line"><a name="a2"></a><span class="src-comm">//&nbsp;declare(encoding='UTF-8');</span></div></li>
<li><div class="src-line"><a name="a3"></a><span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a4"></a><span class="src-doc">&nbsp;*&nbsp;Config&nbsp;permet&nbsp;de&nbsp;charger&nbsp;automatiquement&nbsp;les&nbsp;fichiers&nbsp;ini&nbsp;du&nbsp;Framework&nbsp;et&nbsp;de&nbsp;l'application.</span></div></li>
<li><div class="src-line"><a name="a5"></a><span class="src-doc">&nbsp;*&nbsp;Elle&nbsp;offre&nbsp;l'accès&nbsp;en&nbsp;lecture&nbsp;seule&nbsp;aux&nbsp;paramètres&nbsp;de&nbsp;config.</span></div></li>
<li><div class="src-line"><a name="a6"></a><span class="src-doc">&nbsp;*&nbsp;C'est&nbsp;une&nbsp;Singleton.</span></div></li>
<li><div class="src-line"><a name="a7"></a><span class="src-doc">&nbsp;*</span></div></li>
<li><div class="src-line"><a name="a8"></a><span class="src-doc">&nbsp;*&nbsp;PHP&nbsp;Version&nbsp;5</span></div></li>
<li><div class="src-line"><a name="a9"></a><span class="src-doc">&nbsp;*</span></div></li>
<li><div class="src-line"><a name="a10"></a><span class="src-doc">&nbsp;*&nbsp;</span><span class="src-doc-coretag">@category</span><span class="src-doc">&nbsp;&nbsp;PHP</span></div></li>
<li><div class="src-line"><a name="a11"></a><span class="src-doc">&nbsp;*&nbsp;</span><span class="src-doc-coretag">@package</span><span class="src-doc">&nbsp;&nbsp;&nbsp;Framework</span></div></li>
<li><div class="src-line"><a name="a12"></a><span class="src-doc">&nbsp;*&nbsp;</span><span class="src-doc-coretag">@author</span><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;Jean-Pascal&nbsp;MILCENT&nbsp;&lt;jpm@tela-botanica.org&gt;</span></div></li>
<li><div class="src-line"><a name="a13"></a><span class="src-doc">&nbsp;*&nbsp;</span><span class="src-doc-coretag">@copyright</span><span class="src-doc">&nbsp;2009&nbsp;Tela-Botanica</span></div></li>
<li><div class="src-line"><a name="a14"></a><span class="src-doc">&nbsp;*&nbsp;</span><span class="src-doc-coretag">@license</span><span class="src-doc">&nbsp;&nbsp;&nbsp;GPL-v3&nbsp;et&nbsp;CECILL-v2</span></div></li>
<li><div class="src-line"><a name="a15"></a><span class="src-doc">&nbsp;*&nbsp;</span><span class="src-doc-coretag">@version</span><span class="src-doc">&nbsp;&nbsp;&nbsp;SVN:&nbsp;&lt;svn_id&gt;</span></div></li>
<li><div class="src-line"><a name="a16"></a><span class="src-doc">&nbsp;*&nbsp;</span><span class="src-doc-coretag">@link</span><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;/doc/framework/</span></div></li>
<li><div class="src-line"><a name="a17"></a><span class="src-doc">&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a18"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a19"></a><span class="src-key">class&nbsp;</span><a href="../Framework/Config.html">Config</a>&nbsp;<span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a20"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a21"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a22"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;instance&nbsp;de&nbsp;la&nbsp;classe&nbsp;pointant&nbsp;sur&nbsp;elle&nbsp;même&nbsp;(pour&nbsp;le&nbsp;pattern&nbsp;singleton)</span></div></li>
<li><div class="src-line"><a name="a23"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a24"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">private&nbsp;</span><span class="src-key">static&nbsp;</span><span class="src-var">$instance&nbsp;</span>=&nbsp;<span class="src-id">null</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a25"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a26"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a27"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;paramètres&nbsp;de&nbsp;configuration</span></div></li>
<li><div class="src-line"><a name="a28"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a29"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">private&nbsp;</span><span class="src-key">static&nbsp;</span><span class="src-var">$parametres&nbsp;</span>=&nbsp;<span class="src-key">array</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a30"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a31"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a32"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Constructeur&nbsp;vide</span></div></li>
<li><div class="src-line"><a name="a33"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a34"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">private&nbsp;</span><span class="src-key">function&nbsp;</span><span class="src-id">__construct</span><span class="src-sym">(</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a35"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;Définition&nbsp;de&nbsp;paramètres&nbsp;avant&nbsp;chargement&nbsp;du&nbsp;config.ini</span></div></li>
<li><div class="src-line"><a name="a36"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-id">self</span><span class="src-sym">::</span><span class="src-var">$parametres&nbsp;</span>=&nbsp;<span class="src-key">array</span><span class="src-sym">(</span></div></li>
<li><div class="src-line"><a name="a37"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-str">'fw_fichier_config'&nbsp;</span>=&gt;&nbsp;<span class="src-str">'config%s.ini'</span><span class="src-sym">,</span></div></li>
<li><div class="src-line"><a name="a38"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-str">'fw_chemin'&nbsp;</span>=&gt;&nbsp;<span class="src-id">dirname</span><span class="src-sym">(</span>__FILE__<span class="src-sym">)</span>.<span class="src-id"><a href="../Framework/_autoload.inc.php.html#defineDS">DS</a></span></div></li>
<li><div class="src-line"><a name="a39"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a40"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a41"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;Chargement&nbsp;du&nbsp;fichier&nbsp;config.ini&nbsp;du&nbsp;Framework</span></div></li>
<li><div class="src-line"><a name="a42"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$existe&nbsp;</span>=&nbsp;<span class="src-id">self</span><span class="src-sym">::</span><span class="src-id">parserFichierIni</span><span class="src-sym">(</span><span class="src-id">self</span><span class="src-sym">::</span><span class="src-var">$parametres</span><span class="src-sym">[</span><span class="src-str">'fw_chemin'</span><span class="src-sym">]</span>.<span class="src-id">sprintf</span><span class="src-sym">(</span><span class="src-id">self</span><span class="src-sym">::</span><span class="src-var">$parametres</span><span class="src-sym">[</span><span class="src-str">'fw_fichier_config'</span><span class="src-sym">]</span><span class="src-sym">,&nbsp;</span><span class="src-str">''</span><span class="src-sym">))</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a43"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$existe&nbsp;</span>===&nbsp;<span class="src-id">false</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a44"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="http://www.php.net/trigger_error">trigger_error</a><span class="src-sym">(</span><span class="src-str">&quot;Veuillez&nbsp;configurer&nbsp;le&nbsp;Framework&nbsp;en&nbsp;renommant&nbsp;le&nbsp;fichier&nbsp;config.defaut.ini&nbsp;en&nbsp;config.ini.&quot;</span><span class="src-sym">,&nbsp;</span><span class="src-id">E_USER_ERROR</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a45"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a46"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a47"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;Chargement&nbsp;du&nbsp;fichier&nbsp;config.ini&nbsp;par&nbsp;défaut&nbsp;de&nbsp;l'application</span></div></li>
<li><div class="src-line"><a name="a48"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$chemin_config_defaut_appli&nbsp;</span>=&nbsp;<span class="src-id">self</span><span class="src-sym">::</span><span class="src-var">$parametres</span><span class="src-sym">[</span><span class="src-str">'chemin_configurations'</span><span class="src-sym">]</span>.<span class="src-id">sprintf</span><span class="src-sym">(</span><span class="src-id">self</span><span class="src-sym">::</span><span class="src-var">$parametres</span><span class="src-sym">[</span><span class="src-str">'fw_fichier_config'</span><span class="src-sym">]</span><span class="src-sym">,&nbsp;</span><span class="src-str">''</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a49"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-id">self</span><span class="src-sym">::</span><span class="src-id">parserFichierIni</span><span class="src-sym">(</span><span class="src-var">$chemin_config_defaut_appli</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a50"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a51"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;Chargement&nbsp;des&nbsp;fichiers&nbsp;config.ini&nbsp;contextuels</span></div></li>
<li><div class="src-line"><a name="a52"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-id">PHP_SAPI&nbsp;</span>==&nbsp;<span class="src-str">'cli'</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span><span class="src-comm">//&nbsp;mode&nbsp;console</span></div></li>
<li><div class="src-line"><a name="a53"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">foreach&nbsp;</span><span class="src-sym">(</span><span class="src-var">$_SERVER</span><span class="src-sym">[</span><span class="src-str">'argv'</span><span class="src-sym">]&nbsp;</span><span class="src-key">as&nbsp;</span><span class="src-var">$cle&nbsp;</span>=&gt;&nbsp;<span class="src-var">$valeur</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a54"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$valeur&nbsp;</span>==&nbsp;<span class="src-str">'-contexte'</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a55"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-id">chargerFichierContexte</span><span class="src-sym">(</span><span class="src-var">$_SERVER</span><span class="src-sym">[</span><span class="src-str">'argv'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-sym">(</span><span class="src-var">$cle</span>+<span class="src-num">1</span><span class="src-sym">)</span><span class="src-sym">]</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a56"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">break</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a57"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a58"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a59"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}&nbsp;</span><span class="src-key">else&nbsp;</span><span class="src-sym">{</span><span class="src-comm">//&nbsp;mode&nbsp;web</span></div></li>
<li><div class="src-line"><a name="a60"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;Pour&nbsp;Papyrus</span></div></li>
<li><div class="src-line"><a name="a61"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><a href="http://www.php.net/defined">defined</a><span class="src-sym">(</span><span class="src-str">'PAP_VERSION'</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a62"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-id">self</span><span class="src-sym">::</span><span class="src-id">chargerFichierContexte</span><span class="src-sym">(</span><span class="src-str">'papyrus'</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a63"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a64"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;Via&nbsp;le&nbsp;fichie&nbsp;.ini&nbsp;par&nbsp;défaut&nbsp;de&nbsp;l'appli</span></div></li>
<li><div class="src-line"><a name="a65"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-id"><a href="../Framework/Config.html">Config</a></span><span class="src-sym">::</span><span class="src-id">existeValeur</span><span class="src-sym">(</span><span class="src-str">'info.contexte'</span><span class="src-sym">,&nbsp;</span><span class="src-id">self</span><span class="src-sym">::</span><span class="src-var">$parametres</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a66"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-id">self</span><span class="src-sym">::</span><span class="src-id">chargerFichierContexte</span><span class="src-sym">(</span><span class="src-id"><a href="../Framework/Config.html">Config</a></span><span class="src-sym">::</span><a href="../Framework/Config.html#methodget">get</a><span class="src-sym">(</span><span class="src-str">'info.contexte'</span><span class="src-sym">))</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a67"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a68"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a69"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;Chargement&nbsp;du&nbsp;contexte&nbsp;présent&nbsp;dans&nbsp;le&nbsp;GET</span></div></li>
<li><div class="src-line"><a name="a70"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span>isset<span class="src-sym">(</span><span class="src-var">$_GET</span><span class="src-sym">[</span><span class="src-str">'contexte'</span><span class="src-sym">]</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a71"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-id">self</span><span class="src-sym">::</span><span class="src-id">chargerFichierContexte</span><span class="src-sym">(</span><span class="src-var">$_GET</span><span class="src-sym">[</span><span class="src-str">'contexte'</span><span class="src-sym">]</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a72"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a73"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a74"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;Chargement&nbsp;du&nbsp;contexte&nbsp;présent&nbsp;dans&nbsp;le&nbsp;POST</span></div></li>
<li><div class="src-line"><a name="a75"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span>isset<span class="src-sym">(</span><span class="src-var">$_POST</span><span class="src-sym">[</span><span class="src-str">'contexte'</span><span class="src-sym">]</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a76"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-id">self</span><span class="src-sym">::</span><span class="src-id">chargerFichierContexte</span><span class="src-sym">(</span><span class="src-var">$_POST</span><span class="src-sym">[</span><span class="src-str">'contexte'</span><span class="src-sym">]</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a77"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a78"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a79"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a80"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a81"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a82"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Charge&nbsp;le&nbsp;fichier&nbsp;de&nbsp;config&nbsp;correspondant&nbsp;au&nbsp;contexte</span></div></li>
<li><div class="src-line"><a name="a83"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@param&nbsp;</span><span class="src-doc-type">string&nbsp;</span><span class="src-doc-var">$contexte&nbsp;</span><span class="src-doc">le&nbsp;contexte</span></div></li>
<li><div class="src-line"><a name="a84"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a85"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">private&nbsp;</span><span class="src-key">static&nbsp;</span><span class="src-key">function&nbsp;</span><span class="src-id">chargerFichierContexte</span><span class="src-sym">(</span><span class="src-var">$contexte</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a86"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$chemin_config_appli_contextuel&nbsp;</span>=&nbsp;<span class="src-id">self</span><span class="src-sym">::</span><span class="src-var">$parametres</span><span class="src-sym">[</span><span class="src-str">'chemin_configurations'</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a87"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$chemin_config_appli_contextuel&nbsp;</span>.=&nbsp;<span class="src-id">sprintf</span><span class="src-sym">(</span><span class="src-id">self</span><span class="src-sym">::</span><span class="src-var">$parametres</span><span class="src-sym">[</span><span class="src-str">'fw_fichier_config'</span><span class="src-sym">]</span><span class="src-sym">,&nbsp;</span><span class="src-str">'_'</span>.<span class="src-var">$contexte</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a88"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-id">self</span><span class="src-sym">::</span><span class="src-id">parserFichierIni</span><span class="src-sym">(</span><span class="src-var">$chemin_config_appli_contextuel</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a89"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a90"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a91"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a92"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Parse&nbsp;le&nbsp;fichier&nbsp;ini&nbsp;donné&nbsp;en&nbsp;paramètre</span></div></li>
<li><div class="src-line"><a name="a93"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@param&nbsp;</span><span class="src-doc-type">string&nbsp;</span><span class="src-doc-var">$fichier_ini&nbsp;</span><span class="src-doc">nom&nbsp;du&nbsp;fichier&nbsp;ini&nbsp;à&nbsp;parser</span></div></li>
<li><div class="src-line"><a name="a94"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@return&nbsp;</span><span class="src-doc-type">array&nbsp;</span><span class="src-doc">tableau&nbsp;contenant&nbsp;les&nbsp;paramètres&nbsp;du&nbsp;fichier&nbsp;ini</span></div></li>
<li><div class="src-line"><a name="a95"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a96"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">private&nbsp;</span><span class="src-key">static&nbsp;</span><span class="src-key">function&nbsp;</span><span class="src-id">parserFichierIni</span><span class="src-sym">(</span><span class="src-var">$fichier_ini</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a97"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$retour&nbsp;</span>=&nbsp;<span class="src-id">false</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a98"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><a href="http://www.php.net/file_exists">file_exists</a><span class="src-sym">(</span><span class="src-var">$fichier_ini</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a99"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$ini&nbsp;</span>=&nbsp;<a href="http://www.php.net/parse_ini_file">parse_ini_file</a><span class="src-sym">(</span><span class="src-var">$fichier_ini</span><span class="src-sym">,&nbsp;</span><span class="src-id">true</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a100"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$ini&nbsp;</span>=&nbsp;<span class="src-id">self</span><span class="src-sym">::</span><span class="src-id">analyserTableauIni</span><span class="src-sym">(</span><span class="src-var">$ini</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a101"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-id">self</span><span class="src-sym">::</span><span class="src-id">fusionner</span><span class="src-sym">(</span><span class="src-var">$ini</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a102"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$retour&nbsp;</span>=&nbsp;<span class="src-id">true</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a103"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a104"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$retour</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a105"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a106"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a107"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a108"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;fusionne&nbsp;un&nbsp;tableau&nbsp;de&nbsp;paramètres&nbsp;avec&nbsp;le&nbsp;tableau&nbsp;de&nbsp;paramètres&nbsp;global</span></div></li>
<li><div class="src-line"><a name="a109"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@param&nbsp;</span><span class="src-doc-type">array&nbsp;</span><span class="src-doc-var">$ini&nbsp;</span><span class="src-doc">le&nbsp;tableau&nbsp;à&nbsp;fusionner</span></div></li>
<li><div class="src-line"><a name="a110"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a111"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">private&nbsp;</span><span class="src-key">static&nbsp;</span><span class="src-key">function&nbsp;</span><span class="src-id">fusionner</span><span class="src-sym">(</span><span class="src-key">array&nbsp;</span><span class="src-var">$ini</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a112"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-id">self</span><span class="src-sym">::</span><span class="src-var">$parametres&nbsp;</span>=&nbsp;<span class="src-id">array_merge</span><span class="src-sym">(</span><span class="src-id">self</span><span class="src-sym">::</span><span class="src-var">$parametres</span><span class="src-sym">,&nbsp;</span><span class="src-var">$ini</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a113"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a114"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a115"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a116"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;renvoie&nbsp;la&nbsp;valeur&nbsp;demandé&nbsp;grâce&nbsp;une&nbsp;chaine&nbsp;de&nbsp;paramètres</span></div></li>
<li><div class="src-line"><a name="a117"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@param&nbsp;</span><span class="src-doc-type">string&nbsp;</span><span class="src-doc-var">$param&nbsp;</span><span class="src-doc">la&nbsp;chaine&nbsp;de&nbsp;paramètres</span></div></li>
<li><div class="src-line"><a name="a118"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@param&nbsp;</span><span class="src-doc-type">array&nbsp;</span><span class="src-doc-var">$config&nbsp;</span><span class="src-doc">le&nbsp;tableau&nbsp;de&nbsp;paramètre</span></div></li>
<li><div class="src-line"><a name="a119"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@return&nbsp;</span><span class="src-doc-type">string&nbsp;</span><span class="src-doc">la&nbsp;valeur&nbsp;de&nbsp;la&nbsp;chaine&nbsp;demandée</span></div></li>
<li><div class="src-line"><a name="a120"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a121"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">private&nbsp;</span><span class="src-key">static&nbsp;</span><span class="src-key">function&nbsp;</span><span class="src-id">getValeur</span><span class="src-sym">(</span><span class="src-var">$param</span><span class="src-sym">,&nbsp;</span><span class="src-var">$config</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a122"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$param&nbsp;</span>===&nbsp;<span class="src-id">null</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a123"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-id">null</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a124"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}&nbsp;</span><span class="src-key">else&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a125"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><a href="http://www.php.net/strpos">strpos</a><span class="src-sym">(</span><span class="src-var">$param</span><span class="src-sym">,&nbsp;</span><span class="src-str">'.'</span><span class="src-sym">)&nbsp;</span>!==&nbsp;<span class="src-id">false</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a126"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$pieces&nbsp;</span>=&nbsp;<a href="http://www.php.net/explode">explode</a><span class="src-sym">(</span><span class="src-str">'.'</span><span class="src-sym">,&nbsp;</span><span class="src-var">$param</span><span class="src-sym">,&nbsp;</span><span class="src-num">2</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a127"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><a href="http://www.php.net/strlen">strlen</a><span class="src-sym">(</span><span class="src-var">$pieces</span><span class="src-sym">[</span><span class="src-num">0</span><span class="src-sym">]</span><span class="src-sym">)&nbsp;</span>&amp;&amp;&nbsp;<a href="http://www.php.net/strlen">strlen</a><span class="src-sym">(</span><span class="src-var">$pieces</span><span class="src-sym">[</span><span class="src-num">1</span><span class="src-sym">]</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a128"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span>isset<span class="src-sym">(</span><span class="src-var">$config</span><span class="src-sym">[</span><span class="src-var">$pieces</span><span class="src-sym">[</span><span class="src-num">0</span><span class="src-sym">]]</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a129"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><a href="http://www.php.net/is_array">is_array</a><span class="src-sym">(</span><span class="src-var">$config</span><span class="src-sym">[</span><span class="src-var">$pieces</span><span class="src-sym">[</span><span class="src-num">0</span><span class="src-sym">]]</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a130"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-id">self</span><span class="src-sym">::</span><span class="src-id">getValeur</span><span class="src-sym">(</span><span class="src-var">$pieces</span><span class="src-sym">[</span><span class="src-num">1</span><span class="src-sym">]</span><span class="src-sym">,&nbsp;</span><span class="src-var">$config</span><span class="src-sym">[</span><span class="src-var">$pieces</span><span class="src-sym">[</span><span class="src-num">0</span><span class="src-sym">]]</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a131"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a132"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a133"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a134"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}&nbsp;</span><span class="src-key">else&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a135"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span>isset<span class="src-sym">(</span><span class="src-var">$config</span><span class="src-sym">[</span><span class="src-var">$param</span><span class="src-sym">]</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a136"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$config</span><span class="src-sym">[</span><span class="src-var">$param</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a137"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a138"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a139"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-id">null</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a140"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a141"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a142"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a143"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a144"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Teste&nbsp;si&nbsp;param&nbsp;existe&nbsp;dans&nbsp;le&nbsp;tableau&nbsp;config</span></div></li>
<li><div class="src-line"><a name="a145"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@param&nbsp;</span><span class="src-doc-type">string&nbsp;</span><span class="src-doc-var">$param&nbsp;</span><span class="src-doc">nom&nbsp;du&nbsp;paramètre</span></div></li>
<li><div class="src-line"><a name="a146"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@param&nbsp;</span><span class="src-doc-type">array&nbsp;</span><span class="src-doc">tableau&nbsp;de&nbsp;configuration</span></div></li>
<li><div class="src-line"><a name="a147"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a148"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">private&nbsp;</span><span class="src-key">static&nbsp;</span><span class="src-key">function&nbsp;</span><span class="src-id">existeValeur</span><span class="src-sym">(</span><span class="src-var">$param</span><span class="src-sym">,&nbsp;</span><span class="src-var">$config</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a149"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$retour&nbsp;</span>=&nbsp;<span class="src-id">false</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a150"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-id">self</span><span class="src-sym">::</span><span class="src-id">getValeur</span><span class="src-sym">(</span><span class="src-var">$param</span><span class="src-sym">,&nbsp;</span><span class="src-var">$config</span><span class="src-sym">)&nbsp;</span>!==&nbsp;<span class="src-id">null</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a151"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$retour&nbsp;</span>=&nbsp;<span class="src-id">true</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a152"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a153"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$retour</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a154"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a155"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a156"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a157"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Vérifie&nbsp;si&nbsp;l'instance&nbsp;de&nbsp;classe&nbsp;à&nbsp;été&nbsp;crée,&nbsp;si&nbsp;non&nbsp;la&nbsp;crée</span></div></li>
<li><div class="src-line"><a name="a158"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a159"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">private&nbsp;</span><span class="src-key">static&nbsp;</span><span class="src-key">function&nbsp;</span><span class="src-id">verifierCreationInstance</span><span class="src-sym">(</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a160"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-key">empty</span><span class="src-sym">(</span><span class="src-id">self</span><span class="src-sym">::</span><span class="src-var">$instance</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a161"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-id">self</span><span class="src-sym">::</span><span class="src-var">$instance&nbsp;</span>=&nbsp;<span class="src-key">new&nbsp;</span><span class="src-id">Config</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a162"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a163"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a164"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a165"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a166"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;analyse&nbsp;un&nbsp;tableau&nbsp;de&nbsp;paramètres</span></div></li>
<li><div class="src-line"><a name="a167"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@param&nbsp;</span><span class="src-doc-type">array&nbsp;</span><span class="src-doc-var">$config&nbsp;</span><span class="src-doc">le&nbsp;tableau&nbsp;de&nbsp;paramètres</span></div></li>
<li><div class="src-line"><a name="a168"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@return&nbsp;</span><span class="src-doc-type">array&nbsp;</span><span class="src-doc">le&nbsp;tableau&nbsp;analysé</span></div></li>
<li><div class="src-line"><a name="a169"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a170"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">private&nbsp;</span><span class="src-key">static&nbsp;</span><span class="src-key">function&nbsp;</span><span class="src-id">analyserTableauIni</span><span class="src-sym">(</span><span class="src-var">$config&nbsp;</span>=&nbsp;<span class="src-key">array</span><span class="src-sym">(</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a171"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">foreach&nbsp;</span><span class="src-sym">(</span><span class="src-var">$config&nbsp;</span><span class="src-key">as&nbsp;</span><span class="src-var">$cle&nbsp;</span>=&gt;&nbsp;<span class="src-var">$valeur</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a172"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><a href="http://www.php.net/is_array">is_array</a><span class="src-sym">(</span><span class="src-var">$valeur</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a173"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$config</span><span class="src-sym">[</span><span class="src-var">$cle</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-id">self</span><span class="src-sym">::</span><span class="src-id">analyserTableauIni</span><span class="src-sym">(</span><span class="src-var">$valeur</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a174"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}&nbsp;</span><span class="src-key">else&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a175"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-id">self</span><span class="src-sym">::</span><span class="src-id">evaluerReferences</span><span class="src-sym">(</span><span class="src-var">$config</span><span class="src-sym">,&nbsp;</span><span class="src-var">$cle</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a176"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-id">self</span><span class="src-sym">::</span><span class="src-id">evaluerPhp</span><span class="src-sym">(</span><span class="src-var">$config</span><span class="src-sym">,&nbsp;</span><span class="src-var">$cle</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a177"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-id">self</span><span class="src-sym">::</span><span class="src-id">evaluerCle</span><span class="src-sym">(</span><span class="src-var">$config</span><span class="src-sym">,&nbsp;</span><span class="src-var">$cle</span><span class="src-sym">,&nbsp;</span><span class="src-var">$config</span><span class="src-sym">[</span><span class="src-var">$cle</span><span class="src-sym">]</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a178"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a179"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a180"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$config</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a181"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a182"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a183"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a184"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;dans&nbsp;le&nbsp;cas&nbsp;des&nbsp;chaine&nbsp;de&nbsp;configuration&nbsp;à&nbsp;sous&nbsp;clé&nbsp;(ex.:&nbsp;cle.souscle)</span></div></li>
<li><div class="src-line"><a name="a185"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;evalue&nbsp;les&nbsp;valeurs&nbsp;correspondantes&nbsp;et&nbsp;crée&nbsp;les&nbsp;sous&nbsp;tableaux&nbsp;associés</span></div></li>
<li><div class="src-line"><a name="a186"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@param&nbsp;</span><span class="src-doc-type">array&nbsp;</span><span class="src-doc-var">$config&nbsp;</span><span class="src-doc">tableau&nbsp;de&nbsp;configuration&nbsp;(par&nbsp;référence)</span></div></li>
<li><div class="src-line"><a name="a187"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@param&nbsp;</span><span class="src-doc-type">string&nbsp;</span><span class="src-doc-var">$cle&nbsp;</span><span class="src-doc">la&nbsp;cle&nbsp;dans&nbsp;le&nbsp;tableau</span></div></li>
<li><div class="src-line"><a name="a188"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@param&nbsp;</span><span class="src-doc-type">string&nbsp;</span><span class="src-doc-var">$valeur&nbsp;</span><span class="src-doc">la&nbsp;valeur&nbsp;à&nbsp;affecter</span></div></li>
<li><div class="src-line"><a name="a189"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a190"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">private&nbsp;</span><span class="src-key">static&nbsp;</span><span class="src-key">function&nbsp;</span><span class="src-id">evaluerCle</span><span class="src-sym">(</span><span class="src-sym">&amp;</span><span class="src-var">$config</span><span class="src-sym">,&nbsp;</span><span class="src-var">$cle</span><span class="src-sym">,&nbsp;</span><span class="src-var">$valeur</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a191"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><a href="http://www.php.net/strpos">strpos</a><span class="src-sym">(</span><span class="src-var">$cle</span><span class="src-sym">,&nbsp;</span><span class="src-str">'.'</span><span class="src-sym">)&nbsp;</span>!==&nbsp;<span class="src-id">false</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a192"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;unset<span class="src-sym">(</span><span class="src-var">$config</span><span class="src-sym">[</span><span class="src-var">$cle</span><span class="src-sym">]</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a193"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$pieces&nbsp;</span>=&nbsp;<a href="http://www.php.net/explode">explode</a><span class="src-sym">(</span><span class="src-str">'.'</span><span class="src-sym">,&nbsp;</span><span class="src-var">$cle</span><span class="src-sym">,&nbsp;</span><span class="src-num">2</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a194"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><a href="http://www.php.net/strlen">strlen</a><span class="src-sym">(</span><span class="src-var">$pieces</span><span class="src-sym">[</span><span class="src-num">0</span><span class="src-sym">]</span><span class="src-sym">)&nbsp;</span>&amp;&amp;&nbsp;<a href="http://www.php.net/strlen">strlen</a><span class="src-sym">(</span><span class="src-var">$pieces</span><span class="src-sym">[</span><span class="src-num">1</span><span class="src-sym">]</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a195"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-sym">!</span>isset<span class="src-sym">(</span><span class="src-var">$config</span><span class="src-sym">[</span><span class="src-var">$pieces</span><span class="src-sym">[</span><span class="src-num">0</span><span class="src-sym">]]</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a196"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$pieces</span><span class="src-sym">[</span><span class="src-num">0</span><span class="src-sym">]&nbsp;</span>===&nbsp;<span class="src-str">'0'&nbsp;</span>&amp;&amp;&nbsp;<span class="src-sym">!</span><span class="src-key">empty</span><span class="src-sym">(</span><span class="src-var">$config</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a197"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;convert&nbsp;the&nbsp;current&nbsp;values&nbsp;in&nbsp;$config&nbsp;into&nbsp;an&nbsp;array</span></div></li>
<li><div class="src-line"><a name="a198"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$config&nbsp;</span>=&nbsp;<span class="src-key">array</span><span class="src-sym">(</span><span class="src-var">$pieces</span><span class="src-sym">[</span><span class="src-num">0</span><span class="src-sym">]&nbsp;</span>=&gt;&nbsp;<span class="src-var">$config</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a199"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}&nbsp;</span><span class="src-key">else&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a200"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$config</span><span class="src-sym">[</span><span class="src-var">$pieces</span><span class="src-sym">[</span><span class="src-num">0</span><span class="src-sym">]]&nbsp;</span>=&nbsp;<span class="src-key">array</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a201"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a202"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}&nbsp;</span><span class="src-key">elseif&nbsp;</span><span class="src-sym">(</span><span class="src-sym">!</span><a href="http://www.php.net/is_array">is_array</a><span class="src-sym">(</span><span class="src-var">$config</span><span class="src-sym">[</span><span class="src-var">$pieces</span><span class="src-sym">[</span><span class="src-num">0</span><span class="src-sym">]]</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a203"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;throw&nbsp;<span class="src-key">new&nbsp;</span><span class="src-id">ErrorException</span><span class="src-sym">(</span><span class="src-str">&quot;</span><span class="src-str">Ne&nbsp;peut&nbsp;pas&nbsp;créer&nbsp;de&nbsp;sous-clé&nbsp;pour&nbsp;'{<span class="src-var">$pieces</span><span class="src-sym">[</span><span class="src-num">0</span><span class="src-sym">]</span><span class="src-sym">}</span>'&nbsp;car&nbsp;la&nbsp;clé&nbsp;existe&nbsp;déjà</span><span class="src-str">&quot;</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a204"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a205"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$config</span><span class="src-sym">[</span><span class="src-var">$pieces</span><span class="src-sym">[</span><span class="src-num">0</span><span class="src-sym">]]&nbsp;</span>=&nbsp;<span class="src-id">self</span><span class="src-sym">::</span><span class="src-id">evaluerCle</span><span class="src-sym">(</span><span class="src-var">$config</span><span class="src-sym">[</span><span class="src-var">$pieces</span><span class="src-sym">[</span><span class="src-num">0</span><span class="src-sym">]]</span><span class="src-sym">,&nbsp;</span><span class="src-var">$pieces</span><span class="src-sym">[</span><span class="src-num">1</span><span class="src-sym">]</span><span class="src-sym">,&nbsp;</span><span class="src-var">$valeur</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a206"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}&nbsp;</span><span class="src-key">else&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a207"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;throw&nbsp;<span class="src-key">new&nbsp;</span><span class="src-id">ErrorException</span><span class="src-sym">(</span><span class="src-str">&quot;</span><span class="src-str">Clé&nbsp;invalide&nbsp;'<span class="src-var">$cle</span>'</span><span class="src-str">&quot;</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a208"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a209"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}&nbsp;</span><span class="src-key">else&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a210"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$config</span><span class="src-sym">[</span><span class="src-var">$cle</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-var">$valeur</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a211"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a212"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$config</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a213"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a214"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a215"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a216"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Evalue&nbsp;les&nbsp;valeurs&nbsp;de&nbsp;références&nbsp;à&nbsp;une&nbsp;clé&nbsp;dans&nbsp;le&nbsp;tableau&nbsp;config&nbsp;(cas&nbsp;du&nbsp;ref:cle)</span></div></li>
<li><div class="src-line"><a name="a217"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@param&nbsp;</span><span class="src-doc-type">array&nbsp;</span><span class="src-doc-var">$config&nbsp;</span><span class="src-doc">tableau&nbsp;de&nbsp;configuration</span></div></li>
<li><div class="src-line"><a name="a218"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@param&nbsp;</span><span class="src-doc-type">string&nbsp;</span><span class="src-doc-var">$cle&nbsp;</span><span class="src-doc">la&nbsp;clé&nbsp;dont&nbsp;il&nbsp;faut&nbsp;évaluer&nbsp;les&nbsp;références</span></div></li>
<li><div class="src-line"><a name="a219"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a220"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">private&nbsp;</span><span class="src-key">static&nbsp;</span><span class="src-key">function&nbsp;</span><span class="src-id">evaluerReferences</span><span class="src-sym">(</span><span class="src-sym">&amp;</span><span class="src-var">$config</span><span class="src-sym">,&nbsp;</span><span class="src-var">$cle</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a221"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><a href="http://www.php.net/preg_match_all">preg_match_all</a><span class="src-sym">(</span><span class="src-str">'/{ref:([A-Za-z0-9_-]+)}/'</span><span class="src-sym">,&nbsp;</span><span class="src-var">$config</span><span class="src-sym">[</span><span class="src-var">$cle</span><span class="src-sym">]</span><span class="src-sym">,&nbsp;</span><span class="src-var">$correspondances</span><span class="src-sym">,&nbsp;&nbsp;</span><span class="src-id">PREG_SET_ORDER</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a222"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">foreach&nbsp;</span><span class="src-sym">(</span><span class="src-var">$correspondances&nbsp;</span><span class="src-key">as&nbsp;</span><span class="src-var">$ref</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a223"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$config</span><span class="src-sym">[</span><span class="src-var">$cle</span><span class="src-sym">]&nbsp;</span>=&nbsp;<a href="http://www.php.net/str_replace">str_replace</a><span class="src-sym">(</span><span class="src-var">$ref</span><span class="src-sym">[</span><span class="src-num">0</span><span class="src-sym">]</span><span class="src-sym">,&nbsp;</span><span class="src-id">self</span><span class="src-sym">::</span><span class="src-id">getValeur</span><span class="src-sym">(</span><span class="src-var">$ref</span><span class="src-sym">[</span><span class="src-num">1</span><span class="src-sym">]</span><span class="src-sym">,&nbsp;</span><span class="src-var">$config</span><span class="src-sym">)</span><span class="src-sym">,&nbsp;</span><span class="src-var">$config</span><span class="src-sym">[</span><span class="src-var">$cle</span><span class="src-sym">]</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a224"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a225"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a226"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a227"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a228"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a229"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Evalue&nbsp;le&nbsp;code&nbsp;php&nbsp;contenu&nbsp;dans&nbsp;un&nbsp;clé&nbsp;tu&nbsp;tableau&nbsp;config</span></div></li>
<li><div class="src-line"><a name="a230"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@param&nbsp;</span><span class="src-doc-type">array&nbsp;</span><span class="src-doc-var">$config&nbsp;</span><span class="src-doc">tableau&nbsp;de&nbsp;configuration&nbsp;(par&nbsp;référence)</span></div></li>
<li><div class="src-line"><a name="a231"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@param&nbsp;</span><span class="src-doc-type">string&nbsp;</span><span class="src-doc-var">$cle&nbsp;</span><span class="src-doc">le&nbsp;clé&nbsp;du&nbsp;tableau&nbsp;dont&nbsp;il&nbsp;faut&nbsp;évaluer&nbsp;la&nbsp;valeur</span></div></li>
<li><div class="src-line"><a name="a232"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a233"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">private&nbsp;</span><span class="src-key">static&nbsp;</span><span class="src-key">function&nbsp;</span><span class="src-id">evaluerPhp</span><span class="src-sym">(</span><span class="src-sym">&amp;</span><span class="src-var">$config</span><span class="src-sym">,&nbsp;</span><span class="src-var">$cle</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a234"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><a href="http://www.php.net/preg_match">preg_match</a><span class="src-sym">(</span><span class="src-str">'/^php:(.+)$/'</span><span class="src-sym">,&nbsp;</span><span class="src-var">$config</span><span class="src-sym">[</span><span class="src-var">$cle</span><span class="src-sym">]</span><span class="src-sym">,&nbsp;</span><span class="src-var">$correspondances</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a235"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;eval<span class="src-sym">(</span><span class="src-str">'$config[&quot;'</span>.<span class="src-var">$cle</span>.<span class="src-str">'&quot;]&nbsp;=&nbsp;'</span>.<span class="src-var">$correspondances</span><span class="src-sym">[</span><span class="src-num">1</span><span class="src-sym">]</span>.<span class="src-str">';'</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a236"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a237"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a238"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a239"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a240"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Charge&nbsp;un&nbsp;fichier&nbsp;ini&nbsp;dans&nbsp;le&nbsp;tableau&nbsp;des&nbsp;paramètres&nbsp;de&nbsp;l'appli</span></div></li>
<li><div class="src-line"><a name="a241"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@param&nbsp;</span><span class="src-doc-type">string&nbsp;</span><span class="src-doc-var">$fichier_ini&nbsp;</span><span class="src-doc">le&nbsp;nom&nbsp;du&nbsp;fichier&nbsp;à&nbsp;charger</span></div></li>
<li><div class="src-line"><a name="a242"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@return&nbsp;</span><span class="src-doc-type">array&nbsp;</span><span class="src-doc">le&nbsp;fichier&nbsp;ini&nbsp;parsé</span></div></li>
<li><div class="src-line"><a name="a243"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a244"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">public&nbsp;</span><span class="src-key">static&nbsp;</span><span class="src-key">function&nbsp;</span><a href="../Framework/Config.html#methodcharger">charger</a><span class="src-sym">(</span><span class="src-var">$fichier_ini</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a245"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-id">self</span><span class="src-sym">::</span><span class="src-id">verifierCreationInstance</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a246"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-id">self</span><span class="src-sym">::</span><span class="src-id">parserFichierIni</span><span class="src-sym">(</span><span class="src-var">$fichier_ini</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a247"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a248"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a249"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a250"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Acesseur&nbsp;pour&nbsp;la&nbsp;valeur&nbsp;d'un&nbsp;paramètre</span></div></li>
<li><div class="src-line"><a name="a251"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@param&nbsp;</span><span class="src-doc-type">string&nbsp;</span><span class="src-doc-var">$param&nbsp;</span><span class="src-doc">le&nbsp;nom&nbsp;du&nbsp;paramètre</span></div></li>
<li><div class="src-line"><a name="a252"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@return&nbsp;</span><span class="src-doc-type">string&nbsp;</span><span class="src-doc">la&nbsp;valeur&nbsp;du&nbsp;paramètre</span></div></li>
<li><div class="src-line"><a name="a253"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a254"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">public&nbsp;</span><span class="src-key">static&nbsp;</span><span class="src-key">function&nbsp;</span><a href="../Framework/Config.html#methodget">get</a><span class="src-sym">(</span><span class="src-var">$param&nbsp;</span>=&nbsp;<span class="src-id">null</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a255"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-id">self</span><span class="src-sym">::</span><span class="src-id">verifierCreationInstance</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a256"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-id">self</span><span class="src-sym">::</span><span class="src-id">getValeur</span><span class="src-sym">(</span><span class="src-var">$param</span><span class="src-sym">,&nbsp;</span><span class="src-id">self</span><span class="src-sym">::</span><span class="src-var">$parametres</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a257"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a258"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a259"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a260"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Vérifie&nbsp;si&nbsp;la&nbsp;valeur&nbsp;d'un&nbsp;paramètre&nbsp;existe</span></div></li>
<li><div class="src-line"><a name="a261"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@param&nbsp;</span><span class="src-doc-type">string&nbsp;</span><span class="src-doc-var">$param&nbsp;</span><span class="src-doc">le&nbsp;nom&nbsp;du&nbsp;paramètre</span></div></li>
<li><div class="src-line"><a name="a262"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@return&nbsp;</span><span class="src-doc-type">boolean&nbsp;</span><span class="src-doc">vrai&nbsp;si&nbsp;le&nbsp;paramètre&nbsp;existe,&nbsp;false&nbsp;sinon</span></div></li>
<li><div class="src-line"><a name="a263"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a264"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">public&nbsp;</span><span class="src-key">static&nbsp;</span><span class="src-key">function&nbsp;</span><span class="src-id">existe</span><span class="src-sym">(</span><span class="src-var">$param</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a265"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-id">self</span><span class="src-sym">::</span><span class="src-id">verifierCreationInstance</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a266"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-id">self</span><span class="src-sym">::</span><span class="src-id">existeValeur</span><span class="src-sym">(</span><span class="src-var">$param</span><span class="src-sym">,&nbsp;</span><span class="src-id">self</span><span class="src-sym">::</span><span class="src-var">$parametres</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a267"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a268"></a><span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a269"></a><span class="src-php">?&gt;</span></div></li>
</ol></div>
</div>
<p class="notes" id="credit">
Documentation generated on Thu, 04 Mar 2010 19:27:16 +0100 by <a href="http://www.phpdoc.org" target="_blank">phpDocumentor 1.4.3</a>
</p>
</body>
</html>
/tags/v0.3-aleaume/doc/HTMLframesConverter/__filesource/fsource_Framework__Modele.php.html
New file
0,0 → 1,360
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<!-- template designed by Marco Von Ballmoos -->
<title>File Source for Modele.php</title>
<meta http-equiv='Content-Type' content='text/html; charset=UTF-8'/>
<link rel="stylesheet" href="../media/stylesheet.css" />
</head>
<body>
<h1>Source for file Modele.php</h1>
<p>Documentation is available at <a href="../Framework/_Modele.php.html">Modele.php</a></p>
<div class="src-code">
<div class="src-code"><ol><li><div class="src-line"><a name="a1"></a><span class="src-php">&lt;?php</span></div></li>
<li><div class="src-line"><a name="a2"></a><span class="src-comm">//&nbsp;declare(encoding='UTF-8');</span></div></li>
<li><div class="src-line"><a name="a3"></a><span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a4"></a><span class="src-doc">*&nbsp;Classe&nbsp;modèle,&nbsp;donc&nbsp;d'accés&nbsp;au&nbsp;données,&nbsp;elle&nbsp;ne&nbsp;devrait&nbsp;pas&nbsp;être&nbsp;appelée&nbsp;de&nbsp;l'extérieur.</span></div></li>
<li><div class="src-line"><a name="a5"></a><span class="src-doc">*&nbsp;Elle&nbsp;fait&nbsp;office&nbsp;d'abstraction&nbsp;légère&nbsp;de&nbsp;base&nbsp;de&nbsp;données&nbsp;en&nbsp;utilisant&nbsp;diveres&nbsp;possibilités</span></div></li>
<li><div class="src-line"><a name="a6"></a><span class="src-doc">*&nbsp;d'abstraction&nbsp;de&nbsp;base&nbsp;de&nbsp;données&nbsp;(PDO,&nbsp;mysql,&nbsp;mysqli,&nbsp;sqlite)</span></div></li>
<li><div class="src-line"><a name="a7"></a><span class="src-doc">*&nbsp;Elle&nbsp;est&nbsp;abstraite&nbsp;donc&nbsp;doit&nbsp;obligatoirement&nbsp;être&nbsp;étendue.</span></div></li>
<li><div class="src-line"><a name="a8"></a><span class="src-doc">*</span></div></li>
<li><div class="src-line"><a name="a9"></a><span class="src-doc">*&nbsp;PHP&nbsp;Version&nbsp;5</span></div></li>
<li><div class="src-line"><a name="a10"></a><span class="src-doc">*</span></div></li>
<li><div class="src-line"><a name="a11"></a><span class="src-doc">*&nbsp;</span><span class="src-doc-coretag">@category</span><span class="src-doc">&nbsp;&nbsp;Class</span></div></li>
<li><div class="src-line"><a name="a12"></a><span class="src-doc">*&nbsp;</span><span class="src-doc-coretag">@package</span><span class="src-doc">&nbsp;&nbsp;&nbsp;Framework</span></div></li>
<li><div class="src-line"><a name="a13"></a><span class="src-doc">*&nbsp;</span><span class="src-doc-coretag">@author</span><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;aurelien&nbsp;&lt;aurelien@tela-botanica.org&gt;</span></div></li>
<li><div class="src-line"><a name="a14"></a><span class="src-doc">*&nbsp;</span><span class="src-doc-coretag">@copyright</span><span class="src-doc">&nbsp;2009&nbsp;Tela-Botanica</span></div></li>
<li><div class="src-line"><a name="a15"></a><span class="src-doc">*&nbsp;</span><span class="src-doc-coretag">@license</span><span class="src-doc">&nbsp;&nbsp;&nbsp;http://www.cecill.info/licences/Licence_CeCILL_V2-fr.txt&nbsp;Licence&nbsp;CECILL</span></div></li>
<li><div class="src-line"><a name="a16"></a><span class="src-doc">*&nbsp;</span><span class="src-doc-coretag">@license</span><span class="src-doc">&nbsp;&nbsp;&nbsp;http://www.gnu.org/licenses/gpl.html&nbsp;Licence&nbsp;GNU-GPL</span></div></li>
<li><div class="src-line"><a name="a17"></a><span class="src-doc">*&nbsp;</span><span class="src-doc-coretag">@version</span><span class="src-doc">&nbsp;&nbsp;&nbsp;SVN:&nbsp;$$Id:&nbsp;Modele.php&nbsp;145&nbsp;2010-03-02&nbsp;17:23:09Z&nbsp;jpm&nbsp;$$</span></div></li>
<li><div class="src-line"><a name="a18"></a><span class="src-doc">*&nbsp;</span><span class="src-doc-coretag">@link</span><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;/doc/framework/</span></div></li>
<li><div class="src-line"><a name="a19"></a><span class="src-doc">*</span></div></li>
<li><div class="src-line"><a name="a20"></a><span class="src-doc">*/</span></div></li>
<li><div class="src-line"><a name="a21"></a><span class="src-key">abstract&nbsp;</span><span class="src-key">class&nbsp;</span><a href="../Framework/Modele.html">Modele</a>&nbsp;<span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a22"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a23"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a24"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Mode&nbsp;de&nbsp;fetch&nbsp;associatif</span></div></li>
<li><div class="src-line"><a name="a25"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a26"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">private&nbsp;</span><span class="src-var">$ASSOC&nbsp;</span>=&nbsp;<span class="src-str">''</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a27"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a28"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Mode&nbsp;de&nbsp;fetch&nbsp;objet</span></div></li>
<li><div class="src-line"><a name="a29"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a30"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">private&nbsp;</span><span class="src-var">$OBJECT&nbsp;</span>=&nbsp;<span class="src-str">''</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a31"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a32"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a33"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;abstraction&nbsp;de&nbsp;base&nbsp;de&nbsp;données&nbsp;utilisée</span></div></li>
<li><div class="src-line"><a name="a34"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a35"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">private&nbsp;</span><span class="src-var">$abstraction</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a36"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a37"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;registre&nbsp;global</span></div></li>
<li><div class="src-line"><a name="a38"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a39"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">private&nbsp;</span><span class="src-var">$registre</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a40"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a41"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;DSN&nbsp;pour&nbsp;accéder&nbsp;à&nbsp;la&nbsp;base&nbsp;de&nbsp;données</span></div></li>
<li><div class="src-line"><a name="a42"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a43"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">private&nbsp;</span><span class="src-var">$dsn</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a44"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a45"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Type&nbsp;de&nbsp;base&nbsp;de&nbsp;données&nbsp;(mysql,&nbsp;mysqli,&nbsp;etc&nbsp;...)</span></div></li>
<li><div class="src-line"><a name="a46"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a47"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">private&nbsp;</span><span class="src-var">$type</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a48"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a49"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Hote&nbsp;herbergeant&nbsp;la&nbsp;base&nbsp;de&nbsp;données</span></div></li>
<li><div class="src-line"><a name="a50"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a51"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">private&nbsp;</span><span class="src-var">$hote</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a52"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a53"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Nom&nbsp;de&nbsp;la&nbsp;base&nbsp;de&nbsp;données&nbsp;à&nbsp;laquelle&nbsp;le&nbsp;modèle&nbsp;doit&nbsp;se&nbsp;connecter</span></div></li>
<li><div class="src-line"><a name="a54"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a55"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">private&nbsp;</span><span class="src-var">$bdd_nom</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a56"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a57"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Nom&nbsp;d'utilisateur</span></div></li>
<li><div class="src-line"><a name="a58"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a59"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">private&nbsp;</span><span class="src-var">$utilisateur</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a60"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a61"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Mot&nbsp;de&nbsp;passe</span></div></li>
<li><div class="src-line"><a name="a62"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a63"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">private&nbsp;</span><span class="src-var">$pass</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a64"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a65"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a66"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Encodage&nbsp;de&nbsp;la&nbsp;base&nbsp;de&nbsp;données</span></div></li>
<li><div class="src-line"><a name="a67"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a68"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">private&nbsp;</span><span class="src-var">$encodage&nbsp;</span>=&nbsp;<span class="src-id">null</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a69"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a70"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Connexion&nbsp;à&nbsp;la&nbsp;base&nbsp;de&nbsp;données</span></div></li>
<li><div class="src-line"><a name="a71"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a72"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">private&nbsp;</span><span class="src-var">$connexion&nbsp;</span>=&nbsp;<span class="src-id">null</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a73"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a74"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a75"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Constructeur&nbsp;par&nbsp;défaut,&nbsp;appelé&nbsp;à&nbsp;l'initialisation.</span></div></li>
<li><div class="src-line"><a name="a76"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a77"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">public&nbsp;</span><span class="src-key">function&nbsp;</span><a href="../Framework/Modele.html#method__construct">__construct</a><span class="src-sym">(</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a78"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;les&nbsp;différents&nbsp;paramètres&nbsp;nécessaires&nbsp;sont&nbsp;lus&nbsp;à&nbsp;partir&nbsp;du&nbsp;registre</span></div></li>
<li><div class="src-line"><a name="a79"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">registre&nbsp;</span>=&nbsp;<span class="src-id"><a href="../Framework/Registre.html">Registre</a></span><span class="src-sym">::</span><a href="../Framework/Registre.html#methodgetInstance">getInstance</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a80"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">abstraction&nbsp;</span>=&nbsp;<a href="http://www.php.net/strtolower">strtolower</a><span class="src-sym">(</span><span class="src-id"><a href="../Framework/Config.html">Config</a></span><span class="src-sym">::</span><a href="../Framework/Config.html#methodget">get</a><span class="src-sym">(</span><span class="src-str">'bdd_abstraction'</span><span class="src-sym">))</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a81"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">type&nbsp;</span>=&nbsp;<span class="src-id"><a href="../Framework/Config.html">Config</a></span><span class="src-sym">::</span><a href="../Framework/Config.html#methodget">get</a><span class="src-sym">(</span><span class="src-str">'bdd_protocole'</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a82"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">hote&nbsp;</span>=&nbsp;<span class="src-id"><a href="../Framework/Config.html">Config</a></span><span class="src-sym">::</span><a href="../Framework/Config.html#methodget">get</a><span class="src-sym">(</span><span class="src-str">'bdd_serveur'</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a83"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">bdd_nom&nbsp;</span>=&nbsp;<span class="src-id"><a href="../Framework/Config.html">Config</a></span><span class="src-sym">::</span><a href="../Framework/Config.html#methodget">get</a><span class="src-sym">(</span><span class="src-str">'bdd_nom'</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a84"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">utilisateur&nbsp;</span>=&nbsp;<span class="src-id"><a href="../Framework/Config.html">Config</a></span><span class="src-sym">::</span><a href="../Framework/Config.html#methodget">get</a><span class="src-sym">(</span><span class="src-str">'bdd_utilisateur'</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a85"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">pass&nbsp;</span>=&nbsp;<span class="src-id"><a href="../Framework/Config.html">Config</a></span><span class="src-sym">::</span><a href="../Framework/Config.html#methodget">get</a><span class="src-sym">(</span><span class="src-str">'bdd_mot_de_passe'</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a86"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">encodage&nbsp;</span>=&nbsp;<span class="src-id"><a href="../Framework/Config.html">Config</a></span><span class="src-sym">::</span><a href="../Framework/Config.html#methodget">get</a><span class="src-sym">(</span><span class="src-str">'bdd_encodage'</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a87"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a88"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">dsn&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">type</span>.<span class="src-str">':dbname='</span>.<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">bdd_nom</span>.<span class="src-str">';host='</span>.<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">hote</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a89"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Framework/Modele.html#methodinitialiserProtocole">initialiserProtocole</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a90"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a91"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a92"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a93"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Connection&nbsp;à&nbsp;la&nbsp;base&nbsp;de&nbsp;données&nbsp;en&nbsp;utilisant&nbsp;les&nbsp;informations&nbsp;fournies&nbsp;par</span></div></li>
<li><div class="src-line"><a name="a94"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;le&nbsp;fichier&nbsp;de&nbsp;configuration.</span></div></li>
<li><div class="src-line"><a name="a95"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;private&nbsp;et&nbsp;final&nbsp;car&nbsp;n'a&nbsp;pas&nbsp;vocation&nbsp;a&nbsp;être&nbsp;appelée&nbsp;par&nbsp;l'utilisateur.</span></div></li>
<li><div class="src-line"><a name="a96"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*</span></div></li>
<li><div class="src-line"><a name="a97"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@throws</span><span class="src-doc">&nbsp;Exception&nbsp;une&nbsp;exception&nbsp;dans&nbsp;le&nbsp;cas&nbsp;ou&nbsp;là&nbsp;connexion&nbsp;échoue</span></div></li>
<li><div class="src-line"><a name="a98"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a99"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">final&nbsp;</span><span class="src-key">private&nbsp;</span><span class="src-key">function&nbsp;</span><span class="src-id">connecter</span><span class="src-sym">(</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a100"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">switch&nbsp;</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">abstraction</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a101"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">case&nbsp;</span><span class="src-str">'pdo'</span>:</div></li>
<li><div class="src-line"><a name="a102"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">connexion&nbsp;</span>=&nbsp;<span class="src-key">new&nbsp;</span><span class="src-id">PDO</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">dsn</span><span class="src-sym">,&nbsp;</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">utilisateur</span><span class="src-sym">,&nbsp;</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">pass</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a103"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">break</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a104"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a105"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">case&nbsp;</span><span class="src-str">'mysql'</span>:</div></li>
<li><div class="src-line"><a name="a106"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">connexion&nbsp;</span>=&nbsp;<a href="http://www.php.net/mysql_connect">mysql_connect</a><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">hote</span><span class="src-sym">,</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">utilisateur</span><span class="src-sym">,</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">pass</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a107"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">connexion&nbsp;</span>!=&nbsp;<span class="src-id">null</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a108"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="http://www.php.net/mysql_select_db">mysql_select_db</a><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">bdd_nom</span><span class="src-sym">,&nbsp;</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">connexion</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a109"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}&nbsp;</span><span class="src-key">else&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a110"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;throw&nbsp;<span class="src-key">new&nbsp;</span><span class="src-id">Exception</span><span class="src-sym">(</span><span class="src-str">'Erreur&nbsp;de&nbsp;connexion&nbsp;à&nbsp;la&nbsp;base&nbsp;de&nbsp;données,&nbsp;vérifiez&nbsp;les&nbsp;paramètres&nbsp;du&nbsp;fichier&nbsp;de&nbsp;configuration'</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a111"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a112"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">break</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a113"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a114"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">case&nbsp;</span><span class="src-str">'mysqli'</span>:</div></li>
<li><div class="src-line"><a name="a115"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">connexion&nbsp;</span>=&nbsp;<span class="src-key">new&nbsp;</span><span class="src-id">mysqli</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">hote</span><span class="src-sym">,</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">utilisateur</span><span class="src-sym">,</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">pass</span><span class="src-sym">,&nbsp;</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">bdd_nom</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a116"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-sym">!</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">connexion</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a117"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;throw&nbsp;<span class="src-key">new&nbsp;</span><span class="src-id">Exception</span><span class="src-sym">(</span><span class="src-str">'Erreur&nbsp;de&nbsp;connexion&nbsp;à&nbsp;la&nbsp;base&nbsp;de&nbsp;données,&nbsp;vérifiez&nbsp;les&nbsp;paramètres&nbsp;du&nbsp;fichier&nbsp;de&nbsp;configuration'</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a118"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a119"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a120"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">break</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a121"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a122"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">case&nbsp;</span><span class="src-str">'sqlite3'</span>:</div></li>
<li><div class="src-line"><a name="a123"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;cas&nbsp;particulier&nbsp;de&nbsp;sqllite,&nbsp;on&nbsp;considère&nbsp;que&nbsp;le&nbsp;nom&nbsp;de&nbsp;la&nbsp;base&nbsp;de&nbsp;données&nbsp;correspond&nbsp;au&nbsp;fichier&nbsp;à&nbsp;ouvrir</span></div></li>
<li><div class="src-line"><a name="a124"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">connexion&nbsp;</span>=&nbsp;<span class="src-key">new&nbsp;</span><span class="src-id">SQLite3</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">bdd_nom</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a125"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-sym">!</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">connexion</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a126"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;throw&nbsp;<span class="src-key">new&nbsp;</span><span class="src-id">Exception</span><span class="src-sym">(</span><span class="src-str">'Erreur&nbsp;de&nbsp;connexion&nbsp;à&nbsp;la&nbsp;base&nbsp;de&nbsp;données,&nbsp;vérifiez&nbsp;les&nbsp;paramètres&nbsp;du&nbsp;fichier&nbsp;de&nbsp;configuration'</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a127"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a128"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a129"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">break</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a130"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a131"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">default</span>:</div></li>
<li><div class="src-line"><a name="a132"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">connexion&nbsp;</span>=&nbsp;<span class="src-id">null</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a133"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a134"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a135"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">encodage&nbsp;</span>!=&nbsp;<span class="src-id">null</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a136"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Framework/Modele.html#methodrequete">requete</a><span class="src-sym">(</span><span class="src-str">&quot;SET&nbsp;names&nbsp;'&quot;</span>.<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">encodage</span>.<span class="src-str">&quot;'&quot;</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a137"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a138"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a139"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a140"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a141"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Fonction&nbsp;qui&nbsp;appelle&nbsp;la&nbsp;bonne&nbsp;fonction&nbsp;pour&nbsp;executer&nbsp;une&nbsp;requête&nbsp;suivant&nbsp;le&nbsp;type&nbsp;de&nbsp;bdd.</span></div></li>
<li><div class="src-line"><a name="a142"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*</span></div></li>
<li><div class="src-line"><a name="a143"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@param&nbsp;</span><span class="src-doc-type">string&nbsp;</span><span class="src-doc">la&nbsp;requete&nbsp;à&nbsp;effectuer</span></div></li>
<li><div class="src-line"><a name="a144"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@return&nbsp;</span><span class="src-doc-type">PDOStatement&nbsp;</span><span class="src-doc">un&nbsp;objet&nbsp;contenant&nbsp;le&nbsp;résultat&nbsp;de&nbsp;la&nbsp;requête</span></div></li>
<li><div class="src-line"><a name="a145"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a146"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">final&nbsp;</span><span class="src-key">protected&nbsp;</span><span class="src-key">function&nbsp;</span><a href="../Framework/Modele.html#methodrequete">requete</a><span class="src-sym">(</span><span class="src-var">$requete</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a147"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;on&nbsp;ne&nbsp;se&nbsp;connecte&nbsp;que&nbsp;lors&nbsp;du&nbsp;premier&nbsp;appel&nbsp;à&nbsp;une&nbsp;requete&nbsp;(lazy&nbsp;connexion)</span></div></li>
<li><div class="src-line"><a name="a148"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">connexion&nbsp;</span>==&nbsp;<span class="src-id">null</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a149"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">connecter</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a150"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a151"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a152"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$retour&nbsp;</span>=&nbsp;<span class="src-id">null</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a153"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a154"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">switch&nbsp;</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">abstraction</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a155"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">case&nbsp;</span><span class="src-str">'pdo'</span>:</div></li>
<li><div class="src-line"><a name="a156"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$retour&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">connexion</span><span class="src-sym">-&gt;</span><span class="src-id">query</span><span class="src-sym">(</span><span class="src-var">$requete</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a157"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">break</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a158"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">case&nbsp;</span><span class="src-str">'mysql'</span>:</div></li>
<li><div class="src-line"><a name="a159"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$retour&nbsp;</span>=&nbsp;<a href="http://www.php.net/mysql_query">mysql_query</a><span class="src-sym">(</span><span class="src-var">$requete</span><span class="src-sym">,</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">connexion</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a160"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">break</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a161"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">case&nbsp;</span><span class="src-str">'mysqli'</span>:</div></li>
<li><div class="src-line"><a name="a162"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$retour&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">connexion</span><span class="src-sym">-&gt;</span><span class="src-id">query</span><span class="src-sym">(</span><span class="src-var">$requete</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a163"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">break</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a164"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">case&nbsp;</span><span class="src-str">'sqlite3'</span>:</div></li>
<li><div class="src-line"><a name="a165"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$retour&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">connexion</span><span class="src-sym">-&gt;</span><span class="src-id">exec</span><span class="src-sym">(</span><span class="src-var">$requete</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a166"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">break</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a167"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a168"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a169"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$retour</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a170"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a171"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a172"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">final&nbsp;</span><span class="src-key">protected&nbsp;</span><span class="src-key">function&nbsp;</span><a href="../Framework/Modele.html#methodrequeteUn">requeteUn</a><span class="src-sym">(</span><span class="src-var">$requete</span><span class="src-sym">,</span><span class="src-var">$mode&nbsp;</span>=&nbsp;<span class="src-str">'ASSOC'</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a173"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;Connection&nbsp;seulement&nbsp;lors&nbsp;du&nbsp;premier&nbsp;appel&nbsp;à&nbsp;une&nbsp;requete&nbsp;(lazy&nbsp;connexion)</span></div></li>
<li><div class="src-line"><a name="a174"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">connexion&nbsp;</span>==&nbsp;<span class="src-id">null</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a175"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">connecter</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a176"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a177"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a178"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$retour&nbsp;</span>=&nbsp;<span class="src-id">null</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a179"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">switch&nbsp;</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">abstraction</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a180"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">case&nbsp;</span><span class="src-str">'pdo'</span>:</div></li>
<li><div class="src-line"><a name="a181"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$res_req&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">connexion</span><span class="src-sym">-&gt;</span><span class="src-id">query</span><span class="src-sym">(</span><span class="src-var">$requete</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a182"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$retour&nbsp;</span>=<span class="src-var">$res_req</span><span class="src-sym">-&gt;</span><span class="src-id">fetch</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">$mode</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a183"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">break</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a184"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">case&nbsp;</span><span class="src-str">'mysql'</span>:</div></li>
<li><div class="src-line"><a name="a185"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$res&nbsp;</span>=&nbsp;<a href="http://www.php.net/mysql_query">mysql_query</a><span class="src-sym">(</span><span class="src-var">$requete</span><span class="src-sym">,</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">connexion</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a186"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$fonction_fetch&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">$mode</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a187"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$retour&nbsp;</span>=&nbsp;<span class="src-var">$fonction_fetch</span><span class="src-sym">(</span><span class="src-var">$res</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a188"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">break</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a189"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">case&nbsp;</span><span class="src-str">'mysqli'</span>:</div></li>
<li><div class="src-line"><a name="a190"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$res&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">connexion</span><span class="src-sym">-&gt;</span><span class="src-id">query</span><span class="src-sym">(</span><span class="src-var">$requete</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a191"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$fonction_fetch&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">$mode</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a192"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$retour&nbsp;</span>=&nbsp;<span class="src-var">$res</span><span class="src-sym">-&gt;</span><span class="src-var">$fonction_fetch</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a193"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">break</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a194"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">case&nbsp;</span><span class="src-str">'sqlite3'</span>:</div></li>
<li><div class="src-line"><a name="a195"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$retour&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">connexion</span><span class="src-sym">-&gt;</span><span class="src-id">querySingle</span><span class="src-sym">(</span><span class="src-var">$requete</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a196"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">break</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a197"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a198"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a199"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$retour</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a200"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a201"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a202"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a203"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">final&nbsp;</span><span class="src-key">protected&nbsp;</span><span class="src-key">function&nbsp;</span><a href="../Framework/Modele.html#methodrequeteTous">requeteTous</a><span class="src-sym">(</span><span class="src-var">$requete</span><span class="src-sym">,</span><span class="src-var">$mode&nbsp;</span>=&nbsp;<span class="src-str">'ASSOC'</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a204"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;Connexion&nbsp;seulement&nbsp;lors&nbsp;du&nbsp;premier&nbsp;appel&nbsp;à&nbsp;une&nbsp;requete&nbsp;(lazy&nbsp;connexion)</span></div></li>
<li><div class="src-line"><a name="a205"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">connexion&nbsp;</span>==&nbsp;<span class="src-id">null</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a206"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">connecter</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a207"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a208"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a209"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$retour&nbsp;</span>=&nbsp;<span class="src-id">null</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a210"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a211"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">switch&nbsp;</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">abstraction</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a212"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">case&nbsp;</span><span class="src-str">'pdo'</span>:</div></li>
<li><div class="src-line"><a name="a213"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;try&nbsp;<span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a214"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$res_req&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">connexion</span><span class="src-sym">-&gt;</span><span class="src-id">query</span><span class="src-sym">(</span><span class="src-var">$requete</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a215"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$res_req&nbsp;</span>!==&nbsp;<span class="src-id">false</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a216"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$retour&nbsp;</span>=&nbsp;<span class="src-var">$res_req</span><span class="src-sym">-&gt;</span><span class="src-id">fetchAll</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">$mode</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a217"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}&nbsp;</span><span class="src-key">else&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a218"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$retour&nbsp;</span>=&nbsp;<span class="src-id">false</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a219"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a220"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}&nbsp;</span>catch&nbsp;<span class="src-sym">(</span><span class="src-id">PDOException&nbsp;</span><span class="src-var">$e</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a221"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$message&nbsp;</span>=&nbsp;<span class="src-str">'Requête&nbsp;echec.&nbsp;Fichier&nbsp;:&nbsp;&quot;%s&quot;.&nbsp;Ligne&nbsp;:&nbsp;&quot;%s&quot;.&nbsp;Message&nbsp;:&nbsp;%s'</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a222"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="http://www.php.net/trigger_error">trigger_error</a><span class="src-sym">(</span><a href="http://www.php.net/sprintf">sprintf</a><span class="src-sym">(</span><span class="src-var">$message</span><span class="src-sym">,&nbsp;</span><span class="src-var">$e</span><span class="src-sym">-&gt;</span><span class="src-id">getFile</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">,&nbsp;</span><span class="src-var">$e</span><span class="src-sym">-&gt;</span><span class="src-id">getLine</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">,&nbsp;</span><span class="src-var">$e</span><span class="src-sym">-&gt;</span><span class="src-id">getMessage</span><span class="src-sym">(</span><span class="src-sym">))</span><span class="src-sym">,&nbsp;</span><span class="src-id">E_USER_WARNING</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a223"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a224"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">break</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a225"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">case&nbsp;</span><span class="src-str">'mysql'</span>:</div></li>
<li><div class="src-line"><a name="a226"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$res&nbsp;</span>=&nbsp;<a href="http://www.php.net/mysql_query">mysql_query</a><span class="src-sym">(</span><span class="src-var">$requete</span><span class="src-sym">,&nbsp;</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">connexion</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a227"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$fonction_fetch&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">$mode</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a228"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">while&nbsp;</span><span class="src-sym">(</span><span class="src-var">$ligne&nbsp;</span>=&nbsp;<span class="src-var">$fonction_fetch</span><span class="src-sym">(</span><span class="src-var">$res</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a229"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$retour</span><span class="src-sym">[</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-var">$ligne</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a230"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a231"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">break</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a232"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">case&nbsp;</span><span class="src-str">'mysqli'</span>:</div></li>
<li><div class="src-line"><a name="a233"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$res&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">connexion</span><span class="src-sym">-&gt;</span><span class="src-id">query</span><span class="src-sym">(</span><span class="src-var">$requete</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a234"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$function_fetch&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">$mode</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a235"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">while&nbsp;</span><span class="src-sym">(</span><span class="src-var">$ligne&nbsp;</span>=&nbsp;<span class="src-var">$res</span><span class="src-sym">-&gt;</span><span class="src-var">$function_fetch</span><span class="src-sym">(</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a236"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$retour</span><span class="src-sym">[</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-var">$ligne</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a237"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a238"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">break</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a239"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">case&nbsp;</span><span class="src-str">'sqlite3'</span>:</div></li>
<li><div class="src-line"><a name="a240"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$res&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">connexion</span><span class="src-sym">-&gt;</span><span class="src-id">query</span><span class="src-sym">(</span><span class="src-var">$requete</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a241"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">while&nbsp;</span><span class="src-sym">(</span><span class="src-var">$ligne&nbsp;</span>=&nbsp;<span class="src-var">$res</span><span class="src-sym">-&gt;</span><span class="src-id">fetch_array</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">ASSOC</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a242"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$mode&nbsp;</span>==&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">ASSOC</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a243"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$retour</span><span class="src-sym">[</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-var">$ligne</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a244"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}&nbsp;</span><span class="src-key">elseif&nbsp;</span><span class="src-sym">(</span><span class="src-var">$mode&nbsp;</span>==&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">OBJECT</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a245"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;cas&nbsp;particulier&nbsp;de&nbsp;sqllite</span></div></li>
<li><div class="src-line"><a name="a246"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;qui&nbsp;n'a&nbsp;pas&nbsp;de&nbsp;fonction&nbsp;fetch_object</span></div></li>
<li><div class="src-line"><a name="a247"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$ligneObjet&nbsp;</span>=&nbsp;<span class="src-key">new&nbsp;</span><span class="src-id">stdClass</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a248"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">foreach&nbsp;</span><span class="src-sym">(</span><span class="src-var">$ligne&nbsp;</span><span class="src-key">as&nbsp;</span><span class="src-var">$colonne&nbsp;</span>=&gt;&nbsp;<span class="src-var">$valeur</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a249"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$ligneObjet</span><span class="src-sym">-&gt;</span><span class="src-var">$colonne&nbsp;</span>=&nbsp;<span class="src-var">$valeur</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a250"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a251"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$retour</span><span class="src-sym">[</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-var">$ligneObjet</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a252"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a253"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a254"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">break</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a255"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a256"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a257"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$retour</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a258"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a259"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a260"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a261"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;protège&nbsp;une&nbsp;chaine&nbsp;de&nbsp;caractères&nbsp;avant&nbsp;l'insertion&nbsp;dans&nbsp;la&nbsp;base&nbsp;de&nbsp;données</span></div></li>
<li><div class="src-line"><a name="a262"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a263"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">final&nbsp;</span><span class="src-key">protected&nbsp;</span><span class="src-key">function&nbsp;</span><a href="../Framework/Modele.html#methodproteger">proteger</a><span class="src-sym">(</span><span class="src-var">$chaine</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a264"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a265"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;on&nbsp;ne&nbsp;se&nbsp;connecte&nbsp;que&nbsp;lors&nbsp;du&nbsp;premier&nbsp;appel&nbsp;à&nbsp;une&nbsp;requete</span></div></li>
<li><div class="src-line"><a name="a266"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">connexion&nbsp;</span>==&nbsp;<span class="src-id">null</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a267"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">connecter</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a268"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a269"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a270"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$retour&nbsp;</span>=&nbsp;<span class="src-var">$chaine</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a271"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a272"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">switch&nbsp;</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">abstraction</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a273"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">case&nbsp;</span><span class="src-str">'pdo'</span>:</div></li>
<li><div class="src-line"><a name="a274"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$retour&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">connexion</span><span class="src-sym">-&gt;</span><span class="src-id">quote</span><span class="src-sym">(</span><span class="src-var">$chaine</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a275"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">break</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a276"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">case&nbsp;</span><span class="src-str">'mysql'</span>:</div></li>
<li><div class="src-line"><a name="a277"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$retour&nbsp;</span>=&nbsp;<span class="src-str">'&quot;'</span>.<a href="http://www.php.net/mysql_real_escape_string">mysql_real_escape_string</a><span class="src-sym">(</span><span class="src-var">$chaine</span><span class="src-sym">,&nbsp;</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">connexion</span><span class="src-sym">)</span>.<span class="src-str">'&quot;'</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a278"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">break</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a279"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">case&nbsp;</span><span class="src-str">'mysqli'</span>:</div></li>
<li><div class="src-line"><a name="a280"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$retour&nbsp;</span>=&nbsp;<span class="src-str">'&quot;'</span>.<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">connexion</span><span class="src-sym">-&gt;</span><span class="src-id">real_escape_string</span><span class="src-sym">(</span><span class="src-var">$chaine</span><span class="src-sym">)</span>.<span class="src-str">'&quot;'</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a281"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">break</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a282"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">case&nbsp;</span><span class="src-str">'sqlite3'</span>:</div></li>
<li><div class="src-line"><a name="a283"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$retour&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">connexion</span><span class="src-sym">-&gt;</span><span class="src-id">escapeString</span><span class="src-sym">(</span><span class="src-var">$chaine</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a284"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">break</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a285"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a286"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a287"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$retour</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a288"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a289"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a290"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a291"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;initialise&nbsp;les&nbsp;constantes&nbsp;de&nbsp;classe&nbsp;à&nbsp;leur&nbsp;bonne&nbsp;valeur</span></div></li>
<li><div class="src-line"><a name="a292"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;et&nbsp;lance&nbsp;une&nbsp;exception&nbsp;si&nbsp;le&nbsp;protocole&nbsp;n'est&nbsp;pas&nbsp;bien&nbsp;défini</span></div></li>
<li><div class="src-line"><a name="a293"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@throws</span><span class="src-doc">&nbsp;Exception</span></div></li>
<li><div class="src-line"><a name="a294"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a295"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">final&nbsp;</span><span class="src-key">public&nbsp;</span><span class="src-key">function&nbsp;</span><a href="../Framework/Modele.html#methodinitialiserProtocole">initialiserProtocole</a><span class="src-sym">(</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a296"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a297"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">switch&nbsp;</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">abstraction</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a298"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">case&nbsp;</span><span class="src-str">'pdo'</span>:</div></li>
<li><div class="src-line"><a name="a299"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">ASSOC&nbsp;</span>=&nbsp;<span class="src-id">PDO</span><span class="src-sym">::</span><span class="src-id">FETCH_ASSOC</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a300"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">OBJECT&nbsp;</span>=&nbsp;<span class="src-id">PDO</span><span class="src-sym">::</span><span class="src-id">FETCH_CLASS</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a301"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">break</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a302"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">case&nbsp;</span><span class="src-str">'mysql'</span>:</div></li>
<li><div class="src-line"><a name="a303"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">ASSOC&nbsp;</span>=&nbsp;<span class="src-str">'mysql_fetch_assoc'</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a304"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">OBJECT&nbsp;</span>=&nbsp;<span class="src-str">'mysql_fetch_object'</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a305"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">break</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a306"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">case&nbsp;</span><span class="src-str">'mysqli'</span>:</div></li>
<li><div class="src-line"><a name="a307"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">ASSOC&nbsp;</span>=&nbsp;<span class="src-str">'fetch_assoc'</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a308"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">OBJECT&nbsp;</span>=&nbsp;<span class="src-str">'fetch_object'</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a309"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">break</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a310"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">case&nbsp;</span><span class="src-str">'sqlite3'</span>:</div></li>
<li><div class="src-line"><a name="a311"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">ASSOC&nbsp;</span>=&nbsp;<span class="src-str">'SQLITE3_ASSOC'</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a312"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">OBJECT&nbsp;</span>=&nbsp;<span class="src-str">'SQLITE3_OBJECT'</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a313"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">break</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a314"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">default</span>:</div></li>
<li><div class="src-line"><a name="a315"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;throw&nbsp;<span class="src-key">new&nbsp;</span><span class="src-id">Exception</span><span class="src-sym">(</span><span class="src-str">'Erreur&nbsp;:&nbsp;l\'abstraction&nbsp;'</span>.<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">abstraction</span>.<span class="src-str">'&nbsp;n\'est&nbsp;pas&nbsp;prise&nbsp;en&nbsp;charge'</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a316"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">break</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a317"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a318"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a319"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a320"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a321"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Destructeur&nbsp;de&nbsp;classe,&nbsp;se&nbsp;contente&nbsp;de&nbsp;fermer&nbsp;explicitement&nbsp;la&nbsp;connexion</span></div></li>
<li><div class="src-line"><a name="a322"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a323"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">final&nbsp;</span><span class="src-key">public&nbsp;</span><span class="src-key">function&nbsp;</span><a href="../Framework/Modele.html#method__destruct">__destruct</a><span class="src-sym">(</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a324"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">switch&nbsp;</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">abstraction</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a325"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">case&nbsp;</span><span class="src-str">'pdo'</span>:</div></li>
<li><div class="src-line"><a name="a326"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">connexion&nbsp;</span>=&nbsp;<span class="src-id">null</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a327"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">break</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a328"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">case&nbsp;</span><span class="src-str">'mysql'</span>:</div></li>
<li><div class="src-line"><a name="a329"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><a href="http://www.php.net/mysql_close">mysql_close</a><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">connexion</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a330"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">break</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a331"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">case&nbsp;</span><span class="src-str">'mysqli'</span>:</div></li>
<li><div class="src-line"><a name="a332"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">connexion</span><span class="src-sym">-&gt;</span><span class="src-id">close</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a333"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">break</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a334"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">case&nbsp;</span><span class="src-str">'sqlite3'</span>:</div></li>
<li><div class="src-line"><a name="a335"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">connexion</span><span class="src-sym">-&gt;</span><span class="src-id">close</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a336"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">break</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a337"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a338"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a339"></a><span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a340"></a><span class="src-php">?&gt;</span></div></li>
</ol></div>
</div>
<p class="notes" id="credit">
Documentation generated on Thu, 04 Mar 2010 19:27:25 +0100 by <a href="http://www.phpdoc.org" target="_blank">phpDocumentor 1.4.3</a>
</p>
</body>
</html>
/tags/v0.3-aleaume/doc/HTMLframesConverter/__filesource/fsource_Framework__Debug.php.html
New file
0,0 → 1,141
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<!-- template designed by Marco Von Ballmoos -->
<title>File Source for Debug.php</title>
<meta http-equiv='Content-Type' content='text/html; charset=UTF-8'/>
<link rel="stylesheet" href="../media/stylesheet.css" />
</head>
<body>
<h1>Source for file Debug.php</h1>
<p>Documentation is available at <a href="../Framework/_Debug.php.html">Debug.php</a></p>
<div class="src-code">
<div class="src-code"><ol><li><div class="src-line"><a name="a1"></a><span class="src-php">&lt;?php</span></div></li>
<li><div class="src-line"><a name="a2"></a><span class="src-comm">//&nbsp;declare(encoding='UTF-8');</span></div></li>
<li><div class="src-line"><a name="a3"></a><span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a4"></a><span class="src-doc">&nbsp;*&nbsp;Classe&nbsp;fournissant&nbsp;des&nbsp;fonctions&nbsp;de&nbsp;débogage&nbsp;équivalante&nbsp;à&nbsp;var_dump&nbsp;et&nbsp;print_r.</span></div></li>
<li><div class="src-line"><a name="a5"></a><span class="src-doc">&nbsp;*&nbsp;L'affichage&nbsp;et&nbsp;l'utilisation&nbsp;de&nbsp;ces&nbsp;fonctions&nbsp;sont&nbsp;améliorés&nbsp;via&nbsp;cette&nbsp;classe.</span></div></li>
<li><div class="src-line"><a name="a6"></a><span class="src-doc">&nbsp;*&nbsp;Cette&nbsp;classe&nbsp;est&nbsp;inspirée&nbsp;de&nbsp;la&nbsp;classe&nbsp;Zend_Debug.</span></div></li>
<li><div class="src-line"><a name="a7"></a><span class="src-doc">&nbsp;*</span></div></li>
<li><div class="src-line"><a name="a8"></a><span class="src-doc">&nbsp;*&nbsp;PHP&nbsp;version&nbsp;5</span></div></li>
<li><div class="src-line"><a name="a9"></a><span class="src-doc">&nbsp;*</span></div></li>
<li><div class="src-line"><a name="a10"></a><span class="src-doc">&nbsp;*&nbsp;</span><span class="src-doc-coretag">@category</span><span class="src-doc">&nbsp;Debogage</span></div></li>
<li><div class="src-line"><a name="a11"></a><span class="src-doc">&nbsp;*&nbsp;</span><span class="src-doc-coretag">@package</span><span class="src-doc">&nbsp;Framework</span></div></li>
<li><div class="src-line"><a name="a12"></a><span class="src-doc">&nbsp;//&nbsp;Auteur&nbsp;principal&nbsp;:</span></div></li>
<li><div class="src-line"><a name="a13"></a><span class="src-doc">&nbsp;*&nbsp;</span><span class="src-doc-coretag">@author</span><span class="src-doc">&nbsp;Jean-Pascal&nbsp;MILCENT&nbsp;&lt;jpm@tela-botanica.org&gt;</span></div></li>
<li><div class="src-line"><a name="a14"></a><span class="src-doc">&nbsp;//&nbsp;Autres&nbsp;auteurs&nbsp;:</span></div></li>
<li><div class="src-line"><a name="a15"></a><span class="src-doc">&nbsp;*&nbsp;</span><span class="src-doc-coretag">@license</span><span class="src-doc">&nbsp;GPL&nbsp;v3&nbsp;&lt;http://www.gnu.org/licenses/gpl.txt&gt;</span></div></li>
<li><div class="src-line"><a name="a16"></a><span class="src-doc">&nbsp;*&nbsp;</span><span class="src-doc-coretag">@license</span><span class="src-doc">&nbsp;CECILL&nbsp;v2&nbsp;&lt;http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt&gt;</span></div></li>
<li><div class="src-line"><a name="a17"></a><span class="src-doc">&nbsp;*&nbsp;</span><span class="src-doc-coretag">@version</span><span class="src-doc">&nbsp;$$Id:&nbsp;Debug.php&nbsp;153&nbsp;2010-03-04&nbsp;10:48:32Z&nbsp;jpm&nbsp;$$</span></div></li>
<li><div class="src-line"><a name="a18"></a><span class="src-doc">&nbsp;*&nbsp;</span><span class="src-doc-coretag">@copyright</span><span class="src-doc">&nbsp;1999-2009&nbsp;Tela&nbsp;Botanica&nbsp;(accueil@tela-botanica.org)</span></div></li>
<li><div class="src-line"><a name="a19"></a><span class="src-doc">&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a20"></a><span class="src-key">class&nbsp;</span><a href="../Framework/Debug.html">Debug</a>&nbsp;<span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a21"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a22"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a23"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;mode&nbsp;de&nbsp;php&nbsp;(cli&nbsp;ou&nbsp;sapi)</span></div></li>
<li><div class="src-line"><a name="a24"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a25"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">protected&nbsp;</span><span class="src-key">static&nbsp;</span><span class="src-var">$mode&nbsp;</span>=&nbsp;<span class="src-id">null</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a26"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a27"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a28"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Accesseur&nbsp;pour&nbsp;le&nbsp;mode</span></div></li>
<li><div class="src-line"><a name="a29"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@return&nbsp;</span><span class="src-doc-type">string&nbsp;</span><span class="src-doc">le&nbsp;mode&nbsp;de&nbsp;php</span></div></li>
<li><div class="src-line"><a name="a30"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a31"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">public&nbsp;</span><span class="src-key">static&nbsp;</span><span class="src-key">function&nbsp;</span><a href="../Framework/Debug.html#methodgetMode">getMode</a><span class="src-sym">(</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a32"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-id">self</span><span class="src-sym">::</span><span class="src-var">$mode&nbsp;</span>===&nbsp;<span class="src-id">null</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a33"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-id">self</span><span class="src-sym">::</span><span class="src-var">$mode&nbsp;</span>=&nbsp;<span class="src-id">PHP_SAPI</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a34"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a35"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-id">self</span><span class="src-sym">::</span><span class="src-var">$mode</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a36"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a37"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a38"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a39"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Equivalent&nbsp;de&nbsp;var_dump</span></div></li>
<li><div class="src-line"><a name="a40"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@param&nbsp;</span><span class="src-doc-type">mixed&nbsp;</span><span class="src-doc-var">$variable&nbsp;</span><span class="src-doc">la&nbsp;variable&nbsp;à&nbsp;dumper</span></div></li>
<li><div class="src-line"><a name="a41"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@param&nbsp;</span><span class="src-doc-type">string&nbsp;</span><span class="src-doc-var">$mot_cle&nbsp;</span><span class="src-doc">le&nbsp;mot&nbsp;cle&nbsp;à&nbsp;associer&nbsp;à&nbsp;la&nbsp;variable</span></div></li>
<li><div class="src-line"><a name="a42"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@param&nbsp;</span><span class="src-doc-type">boolean&nbsp;</span><span class="src-doc-var">$echo&nbsp;</span><span class="src-doc">si&nbsp;true&nbsp;on&nbsp;affiche&nbsp;le&nbsp;résultat,&nbsp;si&nbsp;false&nbsp;on&nbsp;ne&nbsp;renvoie&nbsp;que&nbsp;la&nbsp;chaine&nbsp;sans&nbsp;l'afficher</span></div></li>
<li><div class="src-line"><a name="a43"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@return&nbsp;</span><span class="src-doc-type">string&nbsp;</span><span class="src-doc">la&nbsp;chaine&nbsp;à&nbsp;afficher&nbsp;representant&nbsp;le&nbsp;dump&nbsp;ou&nbsp;null&nbsp;si&nbsp;echo</span></div></li>
<li><div class="src-line"><a name="a44"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a45"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">public&nbsp;</span><span class="src-key">static&nbsp;</span><span class="src-key">function&nbsp;</span><a href="../Framework/Debug.html#methoddump">dump</a><span class="src-sym">(</span><span class="src-var">$variable</span><span class="src-sym">,&nbsp;</span><span class="src-var">$mot_cle&nbsp;</span>=&nbsp;<span class="src-id">null</span><span class="src-sym">,&nbsp;</span><span class="src-var">$echo&nbsp;</span>=&nbsp;<span class="src-id">true</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a46"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;var_dump&nbsp;de&nbsp;la&nbsp;variable&nbsp;dans&nbsp;un&nbsp;buffer&nbsp;et&nbsp;récupération&nbsp;de&nbsp;la&nbsp;sortie</span></div></li>
<li><div class="src-line"><a name="a47"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-id">ob_start</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a48"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="http://www.php.net/var_dump">var_dump</a><span class="src-sym">(</span><span class="src-var">$variable</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a49"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$sortie&nbsp;</span>=&nbsp;<a href="http://www.php.net/ob_get_clean">ob_get_clean</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a50"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a51"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;Pré-traitement&nbsp;de&nbsp;la&nbsp;sortie</span></div></li>
<li><div class="src-line"><a name="a52"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$sortie&nbsp;</span>=&nbsp;<a href="http://www.php.net/preg_replace">preg_replace</a><span class="src-sym">(</span><span class="src-str">&quot;/\]\=\&gt;\n(\s+)/m&quot;</span><span class="src-sym">,&nbsp;</span><span class="src-str">&quot;]&nbsp;=&gt;&nbsp;&quot;</span><span class="src-sym">,&nbsp;</span><span class="src-var">$sortie</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a53"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a54"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;Traitement&nbsp;général&nbsp;du&nbsp;débogage</span></div></li>
<li><div class="src-line"><a name="a55"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-id">self</span><span class="src-sym">::</span><span class="src-id">traiterDebogage</span><span class="src-sym">(</span><span class="src-var">$mot_cle</span><span class="src-sym">,&nbsp;</span><span class="src-var">$sortie</span><span class="src-sym">,&nbsp;</span><span class="src-var">$echo</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a56"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a57"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a58"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a59"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Equivalent&nbsp;de&nbsp;print_r</span></div></li>
<li><div class="src-line"><a name="a60"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@param&nbsp;</span><span class="src-doc-type">mixed&nbsp;</span><span class="src-doc-var">$variable&nbsp;</span><span class="src-doc">la&nbsp;variable&nbsp;à&nbsp;afficher</span></div></li>
<li><div class="src-line"><a name="a61"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@param&nbsp;</span><span class="src-doc-type">string&nbsp;</span><span class="src-doc-var">$mot_cle&nbsp;</span><span class="src-doc">le&nbsp;mot&nbsp;cle&nbsp;à&nbsp;associer</span></div></li>
<li><div class="src-line"><a name="a62"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@param&nbsp;</span><span class="src-doc-type">boolean&nbsp;</span><span class="src-doc-var">$echo&nbsp;</span><span class="src-doc">faire&nbsp;un&nbsp;echo&nbsp;ou&nbsp;non</span></div></li>
<li><div class="src-line"><a name="a63"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@return&nbsp;</span><span class="src-doc-type">string&nbsp;</span><span class="src-doc">la&nbsp;chaine&nbsp;contenant&nbsp;la&nbsp;variable&nbsp;printée&nbsp;ou&nbsp;null&nbsp;si&nbsp;echo</span></div></li>
<li><div class="src-line"><a name="a64"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a65"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">public&nbsp;</span><span class="src-key">static&nbsp;</span><span class="src-key">function&nbsp;</span><a href="../Framework/Debug.html#methodprintr">printr</a><span class="src-sym">(</span><span class="src-var">$variable</span><span class="src-sym">,&nbsp;</span><span class="src-var">$mot_cle&nbsp;</span>=&nbsp;<span class="src-id">null</span><span class="src-sym">,&nbsp;</span><span class="src-var">$echo&nbsp;</span>=&nbsp;<span class="src-id">true</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a66"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;Récupération&nbsp;de&nbsp;la&nbsp;sortie</span></div></li>
<li><div class="src-line"><a name="a67"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$sortie&nbsp;</span>=&nbsp;<a href="http://www.php.net/print_r">print_r</a><span class="src-sym">(</span><span class="src-var">$variable</span><span class="src-sym">,&nbsp;</span><span class="src-id">true</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a68"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a69"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;Traitement&nbsp;général&nbsp;du&nbsp;débogage</span></div></li>
<li><div class="src-line"><a name="a70"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-id">self</span><span class="src-sym">::</span><span class="src-id">traiterDebogage</span><span class="src-sym">(</span><span class="src-var">$mot_cle</span><span class="src-sym">,&nbsp;</span><span class="src-var">$sortie</span><span class="src-sym">,&nbsp;</span><span class="src-var">$echo</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a71"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a72"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a73"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a74"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Traite&nbsp;une&nbsp;chaine&nbsp;de&nbsp;débogage&nbsp;et&nbsp;les&nbsp;mots&nbsp;clés&nbsp;associés</span></div></li>
<li><div class="src-line"><a name="a75"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@param&nbsp;</span><span class="src-doc-type">string&nbsp;</span><span class="src-doc">&nbsp;</span><span class="src-doc-var">$mot_cle&nbsp;</span><span class="src-doc">le&nbsp;mot&nbsp;à&nbsp;associer&nbsp;à&nbsp;la&nbsp;chaine</span></div></li>
<li><div class="src-line"><a name="a76"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@param&nbsp;</span><span class="src-doc-type">string&nbsp;</span><span class="src-doc">&nbsp;</span><span class="src-doc-var">$sortie&nbsp;</span><span class="src-doc">le&nbsp;chaine&nbsp;de&nbsp;debogage</span></div></li>
<li><div class="src-line"><a name="a77"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@param&nbsp;</span><span class="src-doc-type">boolean&nbsp;</span><span class="src-doc-var">$echo&nbsp;</span><span class="src-doc">faire&nbsp;un&nbsp;echo&nbsp;du&nbsp;resultat&nbsp;ou&nbsp;non</span></div></li>
<li><div class="src-line"><a name="a78"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@return&nbsp;</span><span class="src-doc-type">string&nbsp;</span><span class="src-doc">la&nbsp;chaine&nbsp;de&nbsp;debogage&nbsp;formatée&nbsp;ou&nbsp;bien&nbsp;null&nbsp;si&nbsp;echo</span></div></li>
<li><div class="src-line"><a name="a79"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a80"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">private&nbsp;</span><span class="src-key">static&nbsp;</span><span class="src-key">function&nbsp;</span><span class="src-id">traiterDebogage</span><span class="src-sym">(</span><span class="src-var">$mot_cle</span><span class="src-sym">,&nbsp;</span><span class="src-var">$sortie</span><span class="src-sym">,&nbsp;</span><span class="src-var">$echo</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a81"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;Formate&nbsp;le&nbsp;mot-clé</span></div></li>
<li><div class="src-line"><a name="a82"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$mot_cle&nbsp;</span>=&nbsp;<span class="src-id">self</span><span class="src-sym">::</span><span class="src-id">formaterMotCle</span><span class="src-sym">(</span><span class="src-var">$mot_cle</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a83"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a84"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;Traitement&nbsp;de&nbsp;la&nbsp;sortie</span></div></li>
<li><div class="src-line"><a name="a85"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$sortie&nbsp;</span>=&nbsp;<span class="src-id">self</span><span class="src-sym">::</span><span class="src-id">traiterSortieSuivantMode</span><span class="src-sym">(</span><span class="src-var">$mot_cle</span><span class="src-sym">,&nbsp;</span><span class="src-var">$sortie</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a86"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a87"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;Affichage&nbsp;et/ou&nbsp;retour</span></div></li>
<li><div class="src-line"><a name="a88"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$echo</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a89"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;echo&nbsp;<span class="src-var">$sortie</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a90"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-id">null</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a91"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}&nbsp;</span><span class="src-key">else&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a92"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$sortie</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a93"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a94"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a95"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a96"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a97"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;formate&nbsp;un&nbsp;mot&nbsp;clé&nbsp;donné</span></div></li>
<li><div class="src-line"><a name="a98"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@param&nbsp;</span><span class="src-doc-type">string&nbsp;</span><span class="src-doc-var">$mot_cle&nbsp;</span><span class="src-doc">le&nbsp;mot&nbsp;clé&nbsp;à&nbsp;formaté</span></div></li>
<li><div class="src-line"><a name="a99"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@return&nbsp;</span><span class="src-doc-type">string&nbsp;</span><span class="src-doc">le&nbsp;mot&nbsp;clé&nbsp;formaté&nbsp;ou&nbsp;bien&nbsp;un&nbsp;chaine&nbsp;vide&nbsp;le&nbsp;mot&nbsp;clé&nbsp;est&nbsp;null&nbsp;ou&nbsp;vide</span></div></li>
<li><div class="src-line"><a name="a100"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a101"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">private&nbsp;</span><span class="src-key">static&nbsp;</span><span class="src-key">function&nbsp;</span><span class="src-id">formaterMotCle</span><span class="src-sym">(</span><span class="src-var">$mot_cle</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a102"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-sym">(</span><span class="src-var">$mot_cle&nbsp;</span>===&nbsp;<span class="src-id">null</span><span class="src-sym">)&nbsp;</span>?&nbsp;<span class="src-str">''&nbsp;</span>:&nbsp;<a href="http://www.php.net/rtrim">rtrim</a><span class="src-sym">(</span><span class="src-var">$mot_cle</span><span class="src-sym">)</span>.<span class="src-str">'&nbsp;'</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a103"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a104"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a105"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a106"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;traite&nbsp;la&nbsp;sortie&nbsp;de&nbsp;la&nbsp;chaine&nbsp;de&nbsp;débogage&nbsp;suivant&nbsp;le&nbsp;mode&nbsp;de&nbsp;php</span></div></li>
<li><div class="src-line"><a name="a107"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@param&nbsp;</span><span class="src-doc-type">string&nbsp;</span><span class="src-doc-var">$mot_cle&nbsp;</span><span class="src-doc">le&nbsp;mot&nbsp;clé&nbsp;associé&nbsp;à&nbsp;la&nbsp;chaine</span></div></li>
<li><div class="src-line"><a name="a108"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@param&nbsp;</span><span class="src-doc-type">string&nbsp;</span><span class="src-doc">&nbsp;</span><span class="src-doc-var">$sortie&nbsp;</span><span class="src-doc">la&nbsp;chaine&nbsp;de&nbsp;débogage</span></div></li>
<li><div class="src-line"><a name="a109"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@return&nbsp;</span><span class="src-doc-type">string&nbsp;</span><span class="src-doc">la&nbsp;sortie&nbsp;formatée&nbsp;pour&nbsp;le&nbsp;mode&nbsp;en&nbsp;cours</span></div></li>
<li><div class="src-line"><a name="a110"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a111"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">private&nbsp;</span><span class="src-key">static&nbsp;</span><span class="src-key">function&nbsp;</span><span class="src-id">traiterSortieSuivantMode</span><span class="src-sym">(</span><span class="src-var">$mot_cle</span><span class="src-sym">,&nbsp;</span><span class="src-var">$sortie</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a112"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$corps&nbsp;</span>=&nbsp;<span class="src-var">$mot_cle</span>.<span class="src-id">PHP_EOL</span>.<span class="src-var">$sortie</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a113"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-id">self</span><span class="src-sym">::</span><span class="src-id">getMode</span><span class="src-sym">(</span><span class="src-sym">)&nbsp;</span>==&nbsp;<span class="src-str">'cli'</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a114"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$sortie&nbsp;</span>=&nbsp;<span class="src-id">PHP_EOL</span>.<span class="src-var">$corps</span>.<span class="src-id">PHP_EOL</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a115"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}&nbsp;</span><span class="src-key">else&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a116"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$sortie&nbsp;</span>=&nbsp;<span class="src-str">'&lt;pre&gt;'</span>.<span class="src-var">$corps</span>.<span class="src-str">'&lt;/pre&gt;'</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a117"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a118"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$sortie</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a119"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a120"></a><span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a121"></a><span class="src-php">?&gt;</span></div></li>
</ol></div>
</div>
<p class="notes" id="credit">
Documentation generated on Thu, 04 Mar 2010 19:27:21 +0100 by <a href="http://www.phpdoc.org" target="_blank">phpDocumentor 1.4.3</a>
</p>
</body>
</html>
/tags/v0.3-aleaume/doc/HTMLframesConverter/__filesource/fsource_Framework__GestionnaireException.php.html
New file
0,0 → 1,206
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<!-- template designed by Marco Von Ballmoos -->
<title>File Source for GestionnaireException.php</title>
<meta http-equiv='Content-Type' content='text/html; charset=UTF-8'/>
<link rel="stylesheet" href="../media/stylesheet.css" />
</head>
<body>
<h1>Source for file GestionnaireException.php</h1>
<p>Documentation is available at <a href="../Framework/_GestionnaireException.php.html">GestionnaireException.php</a></p>
<div class="src-code">
<div class="src-code"><ol><li><div class="src-line"><a name="a1"></a><span class="src-php">&lt;?php</span></div></li>
<li><div class="src-line"><a name="a2"></a><span class="src-comm">//&nbsp;declare(encoding='UTF-8');</span></div></li>
<li><div class="src-line"><a name="a3"></a><span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a4"></a><span class="src-doc">&nbsp;*&nbsp;Classe&nbsp;de&nbsp;gestion&nbsp;des&nbsp;exceptions.</span></div></li>
<li><div class="src-line"><a name="a5"></a><span class="src-doc">&nbsp;*&nbsp;C'est&nbsp;un&nbsp;Singleton.</span></div></li>
<li><div class="src-line"><a name="a6"></a><span class="src-doc">&nbsp;*</span></div></li>
<li><div class="src-line"><a name="a7"></a><span class="src-doc">&nbsp;*&nbsp;PHP&nbsp;Version&nbsp;5</span></div></li>
<li><div class="src-line"><a name="a8"></a><span class="src-doc">&nbsp;*</span></div></li>
<li><div class="src-line"><a name="a9"></a><span class="src-doc">&nbsp;*&nbsp;</span><span class="src-doc-coretag">@category</span><span class="src-doc">&nbsp;&nbsp;Class</span></div></li>
<li><div class="src-line"><a name="a10"></a><span class="src-doc">&nbsp;*&nbsp;</span><span class="src-doc-coretag">@package</span><span class="src-doc">&nbsp;&nbsp;&nbsp;Framework</span></div></li>
<li><div class="src-line"><a name="a11"></a><span class="src-doc">&nbsp;*&nbsp;</span><span class="src-doc-coretag">@author</span><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;aurelien&nbsp;&lt;aurelien@tela-botanica.org&gt;</span></div></li>
<li><div class="src-line"><a name="a12"></a><span class="src-doc">&nbsp;*&nbsp;</span><span class="src-doc-coretag">@copyright</span><span class="src-doc">&nbsp;2009&nbsp;Tela-Botanica</span></div></li>
<li><div class="src-line"><a name="a13"></a><span class="src-doc">&nbsp;*&nbsp;</span><span class="src-doc-coretag">@license</span><span class="src-doc">&nbsp;&nbsp;&nbsp;http://www.cecill.info/licences/Licence_CeCILL_V2-fr.txt&nbsp;Licence&nbsp;CECILL</span></div></li>
<li><div class="src-line"><a name="a14"></a><span class="src-doc">&nbsp;*&nbsp;</span><span class="src-doc-coretag">@license</span><span class="src-doc">&nbsp;&nbsp;&nbsp;http://www.gnu.org/licenses/gpl.html&nbsp;Licence&nbsp;GNU-GPL</span></div></li>
<li><div class="src-line"><a name="a15"></a><span class="src-doc">&nbsp;*&nbsp;</span><span class="src-doc-coretag">@version</span><span class="src-doc">&nbsp;&nbsp;&nbsp;SVN:&nbsp;$$Id:&nbsp;GestionnaireException.php&nbsp;158&nbsp;2010-03-04&nbsp;17:14:36Z&nbsp;jpm&nbsp;$$</span></div></li>
<li><div class="src-line"><a name="a16"></a><span class="src-doc">&nbsp;*&nbsp;</span><span class="src-doc-coretag">@link</span><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;/doc/framework/</span></div></li>
<li><div class="src-line"><a name="a17"></a><span class="src-doc">&nbsp;*</span></div></li>
<li><div class="src-line"><a name="a18"></a><span class="src-doc">&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a19"></a><span class="src-key">class&nbsp;</span><a href="../Framework/GestionnaireException.html">GestionnaireException</a>&nbsp;<span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a20"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a21"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a22"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Liste&nbsp;des&nbsp;exceptions&nbsp;enregistrées</span></div></li>
<li><div class="src-line"><a name="a23"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a24"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">private&nbsp;</span><span class="src-key">static&nbsp;</span><span class="src-var">$exceptions&nbsp;</span>=&nbsp;<span class="src-key">array</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a25"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a26"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a27"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Détermine&nbsp;si&nbsp;l'on&nbsp;affiche&nbsp;ou&nbsp;non&nbsp;le&nbsp;contexte</span></div></li>
<li><div class="src-line"><a name="a28"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a29"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">private&nbsp;</span><span class="src-key">static&nbsp;</span><span class="src-var">$contexte&nbsp;</span>=&nbsp;<span class="src-id">false</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a30"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a31"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a32"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Détermine&nbsp;si&nbsp;l'on&nbsp;loggue&nbsp;ou&nbsp;non&nbsp;les&nbsp;erreurs</span></div></li>
<li><div class="src-line"><a name="a33"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a34"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">private&nbsp;</span><span class="src-key">static&nbsp;</span><span class="src-var">$logger&nbsp;</span>=&nbsp;<span class="src-id">false</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a35"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a36"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a37"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Definit&nbsp;si&nbsp;php&nbsp;est&nbsp;lancé&nbsp;en&nbsp;ligne&nbsp;de&nbsp;commande&nbsp;ou&nbsp;en&nbsp;mode&nbsp;serveur</span></div></li>
<li><div class="src-line"><a name="a38"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a39"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">private&nbsp;</span><span class="src-key">static&nbsp;</span><span class="src-var">$mode&nbsp;</span>=&nbsp;<span class="src-id">php_sapi_name&nbsp;</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a40"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a41"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a42"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;le&nbsp;gestionnaire&nbsp;d'exception&nbsp;est&nbsp;un&nbsp;singleton</span></div></li>
<li><div class="src-line"><a name="a43"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;et&nbsp;possède&nbsp;donc&nbsp;un&nbsp;&quot;pointeur&nbsp;statique&nbsp;sur&nbsp;lui-même&quot;</span></div></li>
<li><div class="src-line"><a name="a44"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a45"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">private&nbsp;</span><span class="src-key">static&nbsp;</span><span class="src-var">$gestionnaireException</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a46"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a47"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a48"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Constructeur&nbsp;avec&nbsp;paramètres&nbsp;optionnel</span></div></li>
<li><div class="src-line"><a name="a49"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@param&nbsp;</span><span class="src-doc-type">bool&nbsp;</span><span class="src-doc">indique&nbsp;si&nbsp;l'on&nbsp;veut&nbsp;afficher&nbsp;ou&nbsp;non&nbsp;le&nbsp;contexte&nbsp;des&nbsp;exceptions&nbsp;(i.e.&nbsp;la&nbsp;trace)</span></div></li>
<li><div class="src-line"><a name="a50"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a51"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">public&nbsp;</span><span class="src-key">function&nbsp;</span><a href="../Framework/GestionnaireException.html#method__construct">__construct</a><span class="src-sym">(</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a52"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-id">self</span><span class="src-sym">::</span><span class="src-var">$exceptions&nbsp;</span>=&nbsp;<span class="src-key">array</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a53"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-id">self</span><span class="src-sym">::</span><span class="src-var">$contexte&nbsp;</span>=&nbsp;<span class="src-id">Config</span><span class="src-sym">::</span><span class="src-id">get</span><span class="src-sym">(</span><span class="src-str">'fw_debogage_contexte'</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a54"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-id">self</span><span class="src-sym">::</span><span class="src-var">$logger&nbsp;</span>=&nbsp;<span class="src-id">Config</span><span class="src-sym">::</span><span class="src-id">get</span><span class="src-sym">(</span><span class="src-str">'fw_log_debogage'</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a55"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-id">self</span><span class="src-sym">::</span><span class="src-var">$mode&nbsp;</span>=&nbsp;<span class="src-id">php_sapi_name</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a56"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a57"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="http://www.php.net/set_exception_handler">set_exception_handler</a><span class="src-sym">(</span><span class="src-key">array</span><span class="src-sym">(</span><a href="http://www.php.net/get_class">get_class</a><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">)</span><span class="src-sym">,</span><span class="src-str">'gererException'</span><span class="src-sym">))</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a58"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="http://www.php.net/set_error_handler">set_error_handler</a><span class="src-sym">(</span><span class="src-key">array</span><span class="src-sym">(</span><a href="http://www.php.net/get_class">get_class</a><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">)</span><span class="src-sym">,</span><span class="src-str">'gererErreur'</span><span class="src-sym">))</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a59"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a60"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a61"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a62"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Renvoie&nbsp;le&nbsp;booleen&nbsp;définissant&nbsp;si&nbsp;l'on&nbsp;affiche&nbsp;le&nbsp;contexte&nbsp;ou&nbsp;non</span></div></li>
<li><div class="src-line"><a name="a63"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a64"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">public&nbsp;</span><span class="src-key">static&nbsp;</span><span class="src-key">function&nbsp;</span><a href="../Framework/GestionnaireException.html#methodgetContexte">getContexte</a><span class="src-sym">(</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a65"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-id">self</span><span class="src-sym">::</span><span class="src-var">$contexte</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a66"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a67"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a68"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a69"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Definit&nbsp;si&nbsp;l'on&nbsp;veut&nbsp;afficher&nbsp;le&nbsp;contexte&nbsp;ou&nbsp;non</span></div></li>
<li><div class="src-line"><a name="a70"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@param&nbsp;</span><span class="src-doc-type">bool&nbsp;</span><span class="src-doc">true&nbsp;si&nbsp;on&nbsp;veut&nbsp;afficher&nbsp;le&nbsp;contexte,&nbsp;false&nbsp;sinon,&nbsp;par&nbsp;défaut&nbsp;vaut&nbsp;false</span></div></li>
<li><div class="src-line"><a name="a71"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a72"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">public&nbsp;</span><span class="src-key">function&nbsp;</span><a href="../Framework/GestionnaireException.html#methodsetContexte">setContexte</a><span class="src-sym">(</span><span class="src-var">$contexte</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a73"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-id">self</span><span class="src-sym">::</span><span class="src-var">$contexte&nbsp;</span>=&nbsp;<span class="src-var">$contexte</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a74"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a75"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a76"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**&nbsp;Fonction&nbsp;d'accès&nbsp;au&nbsp;singleton</span></div></li>
<li><div class="src-line"><a name="a77"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@return&nbsp;</span><span class="src-doc-type">GestionnaireErreur&nbsp;</span><span class="src-doc">le&nbsp;gestionnaire&nbsp;d'exceptions&nbsp;courant</span></div></li>
<li><div class="src-line"><a name="a78"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a79"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">public&nbsp;</span><span class="src-key">static&nbsp;</span><span class="src-key">function&nbsp;</span><a href="../Framework/GestionnaireException.html#methodgetInstance">getInstance</a><span class="src-sym">(</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a80"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-id">self</span><span class="src-sym">::</span><span class="src-var">$gestionnaireException&nbsp;</span>instanceof&nbsp;<span class="src-id">GestionnaireException</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a81"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-id">self</span><span class="src-sym">::</span><span class="src-var">$gestionnaireException</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a82"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a83"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-id">self</span><span class="src-sym">::</span><span class="src-var">$gestionnaireException&nbsp;</span>=&nbsp;<span class="src-key">new&nbsp;</span><span class="src-id">GestionnaireException</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a84"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a85"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-id">self</span><span class="src-sym">::</span><span class="src-var">$gestionnaireException</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a86"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a87"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a88"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a89"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Fonction&nbsp;de&nbsp;gestion&nbsp;des&nbsp;exceptions,&nbsp;remplace&nbsp;le&nbsp;handler&nbsp;par&nbsp;défaut</span></div></li>
<li><div class="src-line"><a name="a90"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@param&nbsp;</span><span class="src-doc-type">Exception&nbsp;</span><span class="src-doc-var">$e&nbsp;</span><span class="src-doc">l'exception&nbsp;à&nbsp;traiter</span></div></li>
<li><div class="src-line"><a name="a91"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a92"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">public&nbsp;</span><span class="src-key">static&nbsp;</span><span class="src-key">function&nbsp;</span><a href="../Framework/GestionnaireException.html#methodgererException">gererException</a><span class="src-sym">(</span><span class="src-id">Exception&nbsp;</span><span class="src-var">$e</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a93"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;pour&nbsp;le&nbsp;moment&nbsp;on&nbsp;se&nbsp;contente&nbsp;de&nbsp;l'ajouter&nbsp;au&nbsp;tableau&nbsp;et&nbsp;de&nbsp;les&nbsp;afficher</span></div></li>
<li><div class="src-line"><a name="a94"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-id">self</span><span class="src-sym">::</span><span class="src-var">$exceptions</span><span class="src-sym">[</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-var">$e</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a95"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a96"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;si&nbsp;on&nbsp;doit&nbsp;logger&nbsp;on&nbsp;envoie&nbsp;l'exception&nbsp;au&nbsp;loggeur</span></div></li>
<li><div class="src-line"><a name="a97"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-id">self</span><span class="src-sym">::</span><span class="src-var">$logger</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a98"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-id">self</span><span class="src-sym">::</span><span class="src-id">loggerException</span><span class="src-sym">(</span><span class="src-var">$e</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a99"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a100"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a101"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a102"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a103"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Gère&nbsp;les&nbsp;erreurs&nbsp;en&nbsp;les&nbsp;convertissant&nbsp;en&nbsp;exceptions&nbsp;(remplace&nbsp;la&nbsp;fonction&nbsp;gestion&nbsp;d'erreurs&nbsp;native&nbsp;de&nbsp;php)</span></div></li>
<li><div class="src-line"><a name="a104"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@param&nbsp;</span><span class="src-doc-type">int&nbsp;</span><span class="src-doc-var">$niveau&nbsp;</span><span class="src-doc">le&nbsp;niveau&nbsp;de&nbsp;l'erreur</span></div></li>
<li><div class="src-line"><a name="a105"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@param&nbsp;</span><span class="src-doc-type">string&nbsp;</span><span class="src-doc-var">$message&nbsp;</span><span class="src-doc">le&nbsp;message&nbsp;associé&nbsp;à&nbsp;l'erreur</span></div></li>
<li><div class="src-line"><a name="a106"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@param&nbsp;</span><span class="src-doc-type">string&nbsp;</span><span class="src-doc-var">$fichier&nbsp;</span><span class="src-doc">le&nbsp;nom&nbsp;du&nbsp;fichier&nbsp;où&nbsp;l'erreur&nbsp;s'est&nbsp;produite</span></div></li>
<li><div class="src-line"><a name="a107"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@param&nbsp;</span><span class="src-doc-type">int&nbsp;</span><span class="src-doc-var">$ligne&nbsp;</span><span class="src-doc">la&nbsp;ligne&nbsp;où&nbsp;l'erreur&nbsp;s'est&nbsp;produite</span></div></li>
<li><div class="src-line"><a name="a108"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@param&nbsp;</span><span class="src-doc-type">string&nbsp;</span><span class="src-doc-var">$contexte&nbsp;</span><span class="src-doc">le&nbsp;contexte&nbsp;associé&nbsp;à&nbsp;l'erreur</span></div></li>
<li><div class="src-line"><a name="a109"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a110"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">public&nbsp;</span><span class="src-key">static&nbsp;</span><span class="src-key">function&nbsp;</span><a href="../Framework/GestionnaireException.html#methodgererErreur">gererErreur</a><span class="src-sym">(</span><span class="src-var">$niveau</span><span class="src-sym">,&nbsp;&nbsp;</span><span class="src-var">$message</span><span class="src-sym">,&nbsp;&nbsp;</span><span class="src-var">$fichier</span><span class="src-sym">,&nbsp;&nbsp;</span><span class="src-var">$ligne</span><span class="src-sym">,&nbsp;&nbsp;</span><span class="src-var">$contexte</span><span class="src-sym">)</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a111"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;si&nbsp;aucun&nbsp;rapport&nbsp;d'erreur,&nbsp;on&nbsp;sort&nbsp;directement</span></div></li>
<li><div class="src-line"><a name="a112"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><a href="http://www.php.net/error_reporting">error_reporting</a><span class="src-sym">(</span><span class="src-sym">)&nbsp;</span>==&nbsp;<span class="src-num">0</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a113"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a114"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a115"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a116"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;sinon&nbsp;on&nbsp;crée&nbsp;une&nbsp;exception</span></div></li>
<li><div class="src-line"><a name="a117"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$e&nbsp;</span>=&nbsp;<span class="src-key">new&nbsp;</span><span class="src-id">ErrorException</span><span class="src-sym">(</span><span class="src-var">$message</span><span class="src-sym">,&nbsp;</span><span class="src-num">0</span><span class="src-sym">,&nbsp;</span><span class="src-var">$niveau</span><span class="src-sym">,&nbsp;</span><span class="src-var">$fichier</span><span class="src-sym">,&nbsp;</span><span class="src-var">$ligne</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a118"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;que&nbsp;l'on&nbsp;donne&nbsp;au&nbsp;tableau&nbsp;d'exceptions</span></div></li>
<li><div class="src-line"><a name="a119"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-id">self</span><span class="src-sym">::</span><span class="src-var">$exceptions</span><span class="src-sym">[</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-var">$e</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a120"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;on&nbsp;la&nbsp;logge&nbsp;si&nbsp;nécéssaire</span></div></li>
<li><div class="src-line"><a name="a121"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-id">self</span><span class="src-sym">::</span><span class="src-var">$logger</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a122"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-id">self</span><span class="src-sym">::</span><span class="src-id">loggerException</span><span class="src-sym">(</span><span class="src-var">$e</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a123"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a124"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a125"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a126"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a127"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a128"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Renvoie&nbsp;les&nbsp;exceptions&nbsp;au&nbsp;format&nbsp;(X)HTML</span></div></li>
<li><div class="src-line"><a name="a129"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;ou&nbsp;bien&nbsp;au&nbsp;format&nbsp;texte&nbsp;suivant&nbsp;le&nbsp;mode&nbsp;d'utilisation&nbsp;de&nbsp;PHP</span></div></li>
<li><div class="src-line"><a name="a130"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a131"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">public&nbsp;</span><span class="src-key">static&nbsp;</span><span class="src-key">function&nbsp;</span><a href="../Framework/GestionnaireException.html#methodgetExceptions">getExceptions</a><span class="src-sym">(</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a132"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$retour&nbsp;</span>=&nbsp;<span class="src-str">''</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a133"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">foreach&nbsp;</span><span class="src-sym">(</span><span class="src-id">self</span><span class="src-sym">::</span><span class="src-var">$exceptions&nbsp;</span><span class="src-key">as&nbsp;</span><span class="src-var">$cle&nbsp;</span>=&gt;&nbsp;<span class="src-var">$e</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a134"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">switch&nbsp;</span><span class="src-sym">(</span><span class="src-id">self</span><span class="src-sym">::</span><span class="src-var">$mode</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a135"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">case&nbsp;</span><span class="src-str">'cli'&nbsp;</span>:</div></li>
<li><div class="src-line"><a name="a136"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$retour&nbsp;</span>.=&nbsp;<span class="src-var">$e</span><span class="src-sym">-&gt;</span><span class="src-id">getMessage</span><span class="src-sym">(</span><span class="src-sym">)</span>.<span class="src-str">&quot;\n&quot;</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a137"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$retour&nbsp;</span>.=&nbsp;<span class="src-str">'Fichier&nbsp;:&nbsp;'</span>.<span class="src-var">$e</span><span class="src-sym">-&gt;</span><span class="src-id">getFile</span><span class="src-sym">(</span><span class="src-sym">)</span>.<span class="src-str">&quot;\n&quot;</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a138"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$retour&nbsp;</span>.=&nbsp;<span class="src-str">'Ligne&nbsp;:&nbsp;'</span>.<span class="src-var">$e</span><span class="src-sym">-&gt;</span><span class="src-id">getLine</span><span class="src-sym">(</span><span class="src-sym">)</span>.<span class="src-str">&quot;\n&quot;</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a139"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-id">self</span><span class="src-sym">::</span><span class="src-id">getContexte</span><span class="src-sym">(</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a140"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$retour&nbsp;</span>.=&nbsp;<span class="src-str">'Contexte&nbsp;:&nbsp;'</span>.<span class="src-str">&quot;\n&quot;</span>.<a href="http://www.php.net/print_r">print_r</a><span class="src-sym">(</span><span class="src-var">$e</span><span class="src-sym">-&gt;</span><span class="src-id">getTraceAsString</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">,&nbsp;</span><span class="src-id">true</span><span class="src-sym">)</span>.<span class="src-str">&quot;\n&quot;</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a141"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a142"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">break</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a143"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">default</span>:</div></li>
<li><div class="src-line"><a name="a144"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$retour&nbsp;</span>.=&nbsp;<span class="src-str">'&lt;pre&nbsp;class=&quot;debogage&quot;&gt;'</span>.<span class="src-str">&quot;\n&quot;</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a145"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$retour&nbsp;</span>.=&nbsp;<span class="src-var">$e</span><span class="src-sym">-&gt;</span><span class="src-id">getMessage</span><span class="src-sym">(</span><span class="src-sym">)</span>.<span class="src-str">&quot;\n&quot;</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a146"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$retour&nbsp;</span>.=&nbsp;<span class="src-str">'&lt;span&nbsp;class=&quot;debogage_fichier&quot;&gt;'</span>.<span class="src-str">'Fichier&nbsp;:&nbsp;'</span>.<span class="src-var">$e</span><span class="src-sym">-&gt;</span><span class="src-id">getFile</span><span class="src-sym">(</span><span class="src-sym">)</span>.<span class="src-str">'&lt;/span&gt;'</span>.<span class="src-str">&quot;\n&quot;</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a147"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$retour&nbsp;</span>.=&nbsp;<span class="src-str">'&lt;span&nbsp;class=&quot;debogage_ligne&quot;&gt;'</span>.<span class="src-str">'Ligne&nbsp;:&nbsp;'</span>.<span class="src-var">$e</span><span class="src-sym">-&gt;</span><span class="src-id">getLine</span><span class="src-sym">(</span><span class="src-sym">)</span>.<span class="src-str">'&lt;/span&gt;'</span>.<span class="src-str">&quot;\n&quot;</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a148"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$retour&nbsp;</span>.=&nbsp;<span class="src-str">'&lt;/pre&gt;'</span>.<span class="src-str">&quot;\n&quot;</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a149"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a150"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-id">self</span><span class="src-sym">::</span><span class="src-id">getContexte</span><span class="src-sym">(</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a151"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$retour&nbsp;</span>.=&nbsp;<span class="src-str">'&lt;pre&gt;'</span>.<span class="src-str">&quot;\n&quot;</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a152"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$retour&nbsp;</span>.=&nbsp;<span class="src-str">'&lt;strong&gt;Contexte&nbsp;:&nbsp;&lt;/strong&gt;'</span>.<span class="src-str">&quot;\n&quot;</span>.<a href="http://www.php.net/print_r">print_r</a><span class="src-sym">(</span><span class="src-var">$e</span><span class="src-sym">-&gt;</span><span class="src-id">getTraceAsString</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">,&nbsp;</span><span class="src-id">true</span><span class="src-sym">)</span>.<span class="src-str">&quot;\n&quot;</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a153"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$retour&nbsp;</span>.=&nbsp;<span class="src-str">'&lt;/pre&gt;'</span>.<span class="src-str">&quot;\n&quot;</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a154"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a155"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a156"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;Nous&nbsp;vidons&nbsp;le&nbsp;tableau&nbsp;des&nbsp;exceptions&nbsp;au&nbsp;fur&nbsp;et&nbsp;à&nbsp;mesure</span></div></li>
<li><div class="src-line"><a name="a157"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;unset<span class="src-sym">(</span><span class="src-id">self</span><span class="src-sym">::</span><span class="src-var">$exceptions</span><span class="src-sym">[</span><span class="src-var">$cle</span><span class="src-sym">]</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a158"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a159"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$retour</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a160"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a161"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a162"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a163"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;logge&nbsp;une&nbsp;exception&nbsp;donnée&nbsp;sous&nbsp;une&nbsp;forme&nbsp;lisible</span></div></li>
<li><div class="src-line"><a name="a164"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@param&nbsp;</span><span class="src-doc-type">Exception&nbsp;</span><span class="src-doc">&nbsp;&nbsp;&nbsp;</span><span class="src-doc-var">$e&nbsp;</span><span class="src-doc">l'exception&nbsp;à&nbsp;logger</span></div></li>
<li><div class="src-line"><a name="a165"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a166"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">private&nbsp;</span><span class="src-key">static&nbsp;</span><span class="src-key">function&nbsp;</span><span class="src-id">loggerException</span><span class="src-sym">(</span><span class="src-var">$e</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a167"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$erreur&nbsp;</span>=&nbsp;<span class="src-str">''</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a168"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$erreur&nbsp;</span>.=&nbsp;<span class="src-var">$e</span><span class="src-sym">-&gt;</span><span class="src-id">getMessage</span><span class="src-sym">(</span><span class="src-sym">)</span>.<span class="src-str">&quot;\n&quot;</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a169"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$erreur&nbsp;</span>.=&nbsp;<span class="src-str">'Fichier&nbsp;:&nbsp;'</span>.<span class="src-var">$e</span><span class="src-sym">-&gt;</span><span class="src-id">getFile</span><span class="src-sym">(</span><span class="src-sym">)</span>.<span class="src-str">&quot;\n&quot;</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a170"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$erreur&nbsp;</span>.=&nbsp;<span class="src-str">'Ligne&nbsp;:&nbsp;'</span>.<span class="src-var">$e</span><span class="src-sym">-&gt;</span><span class="src-id">getLine</span><span class="src-sym">(</span><span class="src-sym">)</span>.<span class="src-str">&quot;\n&quot;</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a171"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-id">self</span><span class="src-sym">::</span><span class="src-id">getContexte</span><span class="src-sym">(</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a172"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$erreur&nbsp;</span>.=&nbsp;<span class="src-str">'Contexte&nbsp;:&nbsp;'</span>.<span class="src-str">&quot;\n&quot;</span>.<a href="http://www.php.net/print_r">print_r</a><span class="src-sym">(</span><span class="src-var">$e</span><span class="src-sym">-&gt;</span><span class="src-id">getTraceAsString</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">,&nbsp;</span><span class="src-id">true</span><span class="src-sym">)</span>.<span class="src-str">&quot;\n&quot;</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a173"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a174"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$erreur&nbsp;</span>.=&nbsp;<span class="src-str">&quot;\n&quot;</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a175"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-id"><a href="../Framework/Log.html">Log</a></span><span class="src-sym">::</span><a href="../Framework/Log.html#methodajouterEntree">ajouterEntree</a><span class="src-sym">(</span><span class="src-str">'erreurs'</span><span class="src-sym">,</span><span class="src-var">$erreur</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a176"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a177"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a178"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">public&nbsp;</span><span class="src-key">function&nbsp;</span><a href="../Framework/GestionnaireException.html#method__destruct">__destruct</a><span class="src-sym">(</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a179"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;Si&nbsp;des&nbsp;erreurs&nbsp;n'ont&nbsp;pas&nbsp;été&nbsp;affichée&nbsp;nous&nbsp;forçons&nbsp;leur&nbsp;affichage</span></div></li>
<li><div class="src-line"><a name="a180"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><a href="http://www.php.net/count">count</a><span class="src-sym">(</span><span class="src-id">self</span><span class="src-sym">::</span><span class="src-var">$exceptions</span><span class="src-sym">)&nbsp;</span>&gt;&nbsp;<span class="src-num">0</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a181"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;echo&nbsp;<span class="src-id">self</span><span class="src-sym">::</span><span class="src-id">getExceptions</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a182"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a183"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a184"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a185"></a><span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a186"></a><span class="src-php">?&gt;</span></div></li>
</ol></div>
</div>
<p class="notes" id="credit">
Documentation generated on Thu, 04 Mar 2010 19:27:23 +0100 by <a href="http://www.phpdoc.org" target="_blank">phpDocumentor 1.4.3</a>
</p>
</body>
</html>
/tags/v0.3-aleaume/doc/HTMLframesConverter/__filesource/fsource_Framework__Controleur.php.html
New file
0,0 → 1,133
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<!-- template designed by Marco Von Ballmoos -->
<title>File Source for Controleur.php</title>
<meta http-equiv='Content-Type' content='text/html; charset=UTF-8'/>
<link rel="stylesheet" href="../media/stylesheet.css" />
</head>
<body>
<h1>Source for file Controleur.php</h1>
<p>Documentation is available at <a href="../Framework/_Controleur.php.html">Controleur.php</a></p>
<div class="src-code">
<div class="src-code"><ol><li><div class="src-line"><a name="a1"></a><span class="src-php">&lt;?php</span></div></li>
<li><div class="src-line"><a name="a2"></a><span class="src-comm">//&nbsp;declare(encoding='UTF-8');</span></div></li>
<li><div class="src-line"><a name="a3"></a><span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a4"></a><span class="src-doc">&nbsp;*&nbsp;Classe&nbsp;Controleur,&nbsp;coeur&nbsp;d'une&nbsp;application,&nbsp;c'est&nbsp;normalement&nbsp;la&nbsp;seule&nbsp;classe&nbsp;d'une&nbsp;application</span></div></li>
<li><div class="src-line"><a name="a5"></a><span class="src-doc">&nbsp;*&nbsp;qui&nbsp;devrait&nbsp;être&nbsp;appelée&nbsp;de&nbsp;l'extérieur.</span></div></li>
<li><div class="src-line"><a name="a6"></a><span class="src-doc">&nbsp;*&nbsp;Elle&nbsp;est&nbsp;abstraite&nbsp;donc&nbsp;doit&nbsp;obligatoirement&nbsp;être&nbsp;étendue.</span></div></li>
<li><div class="src-line"><a name="a7"></a><span class="src-doc">&nbsp;*</span></div></li>
<li><div class="src-line"><a name="a8"></a><span class="src-doc">&nbsp;*&nbsp;</span><span class="src-doc-coretag">@category</span><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;php5</span></div></li>
<li><div class="src-line"><a name="a9"></a><span class="src-doc">&nbsp;*&nbsp;</span><span class="src-doc-coretag">@package</span><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Framework</span></div></li>
<li><div class="src-line"><a name="a10"></a><span class="src-doc">&nbsp;*&nbsp;</span><span class="src-doc-coretag">@author</span><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Aurélien&nbsp;PERONNET&nbsp;&lt;aurelien@tela-botanica.org&gt;</span></div></li>
<li><div class="src-line"><a name="a11"></a><span class="src-doc">&nbsp;*&nbsp;</span><span class="src-doc-coretag">@author</span><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Jean-Pascal&nbsp;MILCENT&nbsp;&lt;jpm@tela-botanica.org&gt;</span></div></li>
<li><div class="src-line"><a name="a12"></a><span class="src-doc">&nbsp;*&nbsp;</span><span class="src-doc-coretag">@copyright</span><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;2009&nbsp;Tela-Botanica</span></div></li>
<li><div class="src-line"><a name="a13"></a><span class="src-doc">&nbsp;*&nbsp;</span><span class="src-doc-coretag">@license</span><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;http://www.cecill.info/licences/Licence_CeCILL_V2-fr.txt&nbsp;Licence&nbsp;CECILL</span></div></li>
<li><div class="src-line"><a name="a14"></a><span class="src-doc">&nbsp;*&nbsp;</span><span class="src-doc-coretag">@license</span><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;http://www.gnu.org/licenses/gpl.html&nbsp;Licence&nbsp;GNU-GPL</span></div></li>
<li><div class="src-line"><a name="a15"></a><span class="src-doc">&nbsp;*&nbsp;</span><span class="src-doc-coretag">@version</span><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;SVN:&nbsp;$$Id:&nbsp;Controleur.php&nbsp;158&nbsp;2010-03-04&nbsp;17:14:36Z&nbsp;jpm&nbsp;$$</span></div></li>
<li><div class="src-line"><a name="a16"></a><span class="src-doc">&nbsp;*&nbsp;</span><span class="src-doc-coretag">@link</span><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;/doc/framework/</span></div></li>
<li><div class="src-line"><a name="a17"></a><span class="src-doc">&nbsp;*</span></div></li>
<li><div class="src-line"><a name="a18"></a><span class="src-doc">&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a19"></a><span class="src-key">abstract&nbsp;</span><span class="src-key">class&nbsp;</span><a href="../Framework/Controleur.html">Controleur</a>&nbsp;<span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a20"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a21"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Registre&nbsp;global,&nbsp;normalement&nbsp;accessible&nbsp;partout</span></div></li>
<li><div class="src-line"><a name="a22"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a23"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">private&nbsp;</span><span class="src-var">$registre</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a24"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a25"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a26"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Constructeur&nbsp;par&nbsp;défaut</span></div></li>
<li><div class="src-line"><a name="a27"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a28"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">public&nbsp;</span><span class="src-key">function&nbsp;</span><a href="../Framework/Controleur.html#method__construct">__construct</a><span class="src-sym">(</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a29"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-id"><a href="../Framework/Config.html">Config</a></span><span class="src-sym">::</span><a href="../Framework/Config.html#methodexiste">existe</a><span class="src-sym">(</span><span class="src-str">'fw_html_errors'</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a30"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="http://www.php.net/ini_set">ini_set</a><span class="src-sym">(</span><span class="src-str">'html_errors'</span><span class="src-sym">,&nbsp;</span><span class="src-id"><a href="../Framework/Config.html">Config</a></span><span class="src-sym">::</span><a href="../Framework/Config.html#methodget">get</a><span class="src-sym">(</span><span class="src-str">'fw_html_errors'</span><span class="src-sym">))</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a31"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a32"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a33"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">registre&nbsp;</span>=&nbsp;<span class="src-id"><a href="../Framework/Registre.html">Registre</a></span><span class="src-sym">::</span><a href="../Framework/Registre.html#methodgetInstance">getInstance</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a34"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">registre</span><span class="src-sym">-&gt;</span><span class="src-id">set</span><span class="src-sym">(</span><span class="src-str">'base_chemin_modele'</span><span class="src-sym">,&nbsp;</span><span class="src-id"><a href="../Framework/Config.html">Config</a></span><span class="src-sym">::</span><a href="../Framework/Config.html#methodget">get</a><span class="src-sym">(</span><span class="src-str">'chemin_modeles'</span><span class="src-sym">))</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a35"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">registre</span><span class="src-sym">-&gt;</span><span class="src-id">set</span><span class="src-sym">(</span><span class="src-str">'base_chemin_squelette'</span><span class="src-sym">,&nbsp;</span><span class="src-id"><a href="../Framework/Config.html">Config</a></span><span class="src-sym">::</span><a href="../Framework/Config.html#methodget">get</a><span class="src-sym">(</span><span class="src-str">'chemin_squelettes'</span><span class="src-sym">))</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a36"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">registre</span><span class="src-sym">-&gt;</span><span class="src-id">set</span><span class="src-sym">(</span><span class="src-str">'base_chemin_controleur'</span><span class="src-sym">,&nbsp;</span><span class="src-id"><a href="../Framework/Config.html">Config</a></span><span class="src-sym">::</span><a href="../Framework/Config.html#methodget">get</a><span class="src-sym">(</span><span class="src-str">'chemin_controleurs'</span><span class="src-sym">))</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a37"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">registre</span><span class="src-sym">-&gt;</span><span class="src-id">set</span><span class="src-sym">(</span><span class="src-str">'base_url_application'</span><span class="src-sym">,&nbsp;</span><span class="src-key">new&nbsp;</span><span class="src-id"><a href="../Framework/Url.html">Url</a></span><span class="src-sym">(</span><span class="src-id"><a href="../Framework/Config.html">Config</a></span><span class="src-sym">::</span><a href="../Framework/Config.html#methodget">get</a><span class="src-sym">(</span><span class="src-str">'url_base'</span><span class="src-sym">)))</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a38"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a39"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a40"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a41"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Charge&nbsp;un&nbsp;modele&nbsp;donné&nbsp;et&nbsp;le&nbsp;rend&nbsp;disponible&nbsp;sous&nbsp;la&nbsp;forme&nbsp;$this-&gt;nom_modele</span></div></li>
<li><div class="src-line"><a name="a42"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;*</span></div></li>
<li><div class="src-line"><a name="a43"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@param&nbsp;</span><span class="src-doc-type">string&nbsp;</span><span class="src-doc-var">$nom_modele&nbsp;</span><span class="src-doc">le&nbsp;nom&nbsp;du&nbsp;modèle&nbsp;à&nbsp;charger</span></div></li>
<li><div class="src-line"><a name="a44"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;*</span></div></li>
<li><div class="src-line"><a name="a45"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@return&nbsp;</span><span class="src-doc-type">boolean&nbsp;</span><span class="src-doc">false&nbsp;si&nbsp;le&nbsp;chargement&nbsp;a&nbsp;échoué,&nbsp;sinon&nbsp;true.</span></div></li>
<li><div class="src-line"><a name="a46"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a47"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">final&nbsp;</span><span class="src-key">protected&nbsp;</span><span class="src-key">function&nbsp;</span><a href="../Framework/Controleur.html#methodchargerModele">chargerModele</a><span class="src-sym">(</span><span class="src-var">$nom_modele</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a48"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$sortie&nbsp;</span>=&nbsp;<span class="src-id">true</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a49"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$modele&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Framework/Controleur.html#methodgetModele">getModele</a><span class="src-sym">(</span><span class="src-var">$nom_modele</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a50"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$modele&nbsp;</span>!==&nbsp;<span class="src-id">false</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a51"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">$nom_modele&nbsp;</span>=&nbsp;<span class="src-key">new&nbsp;</span><span class="src-var">$nom_modele</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a52"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}&nbsp;</span><span class="src-key">else&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a53"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$sortie&nbsp;</span>=&nbsp;<span class="src-id">false</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a54"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a55"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$sortie</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a56"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a57"></a>&nbsp;&nbsp;&nbsp;&nbsp;</div></li>
<li><div class="src-line"><a name="a58"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a59"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Retourne&nbsp;un&nbsp;modele&nbsp;donné</span></div></li>
<li><div class="src-line"><a name="a60"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;*</span></div></li>
<li><div class="src-line"><a name="a61"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@param&nbsp;</span><span class="src-doc-type">string&nbsp;</span><span class="src-doc-var">$nom_modele&nbsp;</span><span class="src-doc">le&nbsp;nom&nbsp;du&nbsp;modèle&nbsp;à&nbsp;charger</span></div></li>
<li><div class="src-line"><a name="a62"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;*</span></div></li>
<li><div class="src-line"><a name="a63"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@return&nbsp;</span><span class="src-doc-type">mixed&nbsp;</span><span class="src-doc">false&nbsp;si&nbsp;le&nbsp;chargement&nbsp;a&nbsp;échoué,&nbsp;sinon&nbsp;l'objet&nbsp;du&nbsp;modèle&nbsp;demandé.</span></div></li>
<li><div class="src-line"><a name="a64"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a65"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">final&nbsp;</span><span class="src-key">protected&nbsp;</span><span class="src-key">function&nbsp;</span><a href="../Framework/Controleur.html#methodgetModele">getModele</a><span class="src-sym">(</span><span class="src-var">$nom_modele</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a66"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$sortie&nbsp;</span>=&nbsp;<span class="src-id">false</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a67"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$chemin_modele&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">registre</span><span class="src-sym">-&gt;</span><span class="src-id">get</span><span class="src-sym">(</span><span class="src-str">'base_chemin_modele'</span><span class="src-sym">)</span>.<span class="src-var">$nom_modele</span>.<span class="src-str">'.php'</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a68"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><a href="http://www.php.net/file_exists">file_exists</a><span class="src-sym">(</span><span class="src-var">$chemin_modele</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a69"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-inc">include_once&nbsp;</span><span class="src-var">$chemin_modele</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a70"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><a href="http://www.php.net/class_exists">class_exists</a><span class="src-sym">(</span><span class="src-var">$nom_modele</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a71"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$sortie&nbsp;</span>=&nbsp;<span class="src-key">new&nbsp;</span><span class="src-var">$nom_modele</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a72"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a73"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a74"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$sortie</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a75"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a76"></a>&nbsp;&nbsp;&nbsp;&nbsp;</div></li>
<li><div class="src-line"><a name="a77"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a78"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Fonction&nbsp;prenant&nbsp;en&nbsp;paramètre&nbsp;le&nbsp;nom&nbsp;d'un&nbsp;squelette&nbsp;et&nbsp;un&nbsp;tableau&nbsp;associatif&nbsp;de&nbsp;données,</span></div></li>
<li><div class="src-line"><a name="a79"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;en&nbsp;extrait&nbsp;les&nbsp;variables,&nbsp;charge&nbsp;le&nbsp;squelette&nbsp;et&nbsp;retourne&nbsp;le&nbsp;résultat&nbsp;des&nbsp;deux&nbsp;combinés.</span></div></li>
<li><div class="src-line"><a name="a80"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*</span></div></li>
<li><div class="src-line"><a name="a81"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@param&nbsp;</span><span class="src-doc-type">String&nbsp;</span><span class="src-doc-var">$nom_squelette&nbsp;</span><span class="src-doc">le&nbsp;nom&nbsp;du&nbsp;squelette</span></div></li>
<li><div class="src-line"><a name="a82"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@param&nbsp;</span><span class="src-doc-type">Array&nbsp;</span><span class="src-doc">&nbsp;</span><span class="src-doc-var">$donnees&nbsp;</span><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;un&nbsp;tableau&nbsp;associatif&nbsp;contenant&nbsp;les&nbsp;variables&nbsp;a&nbsp;injecter&nbsp;dans&nbsp;la&nbsp;vue</span></div></li>
<li><div class="src-line"><a name="a83"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*</span></div></li>
<li><div class="src-line"><a name="a84"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@return&nbsp;</span><span class="src-doc-type">boolean&nbsp;</span><span class="src-doc">false&nbsp;si&nbsp;la&nbsp;vue&nbsp;n'existe&nbsp;pas,&nbsp;sinon&nbsp;la&nbsp;chaine&nbsp;résultat.</span></div></li>
<li><div class="src-line"><a name="a85"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a86"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">final&nbsp;</span><span class="src-key">protected&nbsp;</span><span class="src-key">function&nbsp;</span><a href="../Framework/Controleur.html#methodgetVue">getVue</a><span class="src-sym">(</span><span class="src-var">$nom_squelette</span><span class="src-sym">,&nbsp;</span><span class="src-var">$donnees&nbsp;</span>=&nbsp;<span class="src-key">array</span><span class="src-sym">(</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a87"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$chemin_squelette&nbsp;</span>=&nbsp;<span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">registre</span><span class="src-sym">-&gt;</span><span class="src-id">get</span><span class="src-sym">(</span><span class="src-str">'base_chemin_squelette'</span><span class="src-sym">))</span>.<span class="src-var">$nom_squelette</span>.<span class="src-str">'.tpl.html'</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a88"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$sortie&nbsp;</span>=&nbsp;<span class="src-id"><a href="../Framework/SquelettePhp.html">SquelettePhp</a></span><span class="src-sym">::</span><a href="../Framework/SquelettePhp.html#methodanalyser">analyser</a><span class="src-sym">(</span><span class="src-var">$chemin_squelette</span><span class="src-sym">,&nbsp;</span><span class="src-var">$donnees</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a89"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$sortie</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a90"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a91"></a>&nbsp;&nbsp;&nbsp;&nbsp;</div></li>
<li><div class="src-line"><a name="a92"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a93"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Fonction&nbsp;prenant&nbsp;en&nbsp;paramètre&nbsp;le&nbsp;nom&nbsp;d'un&nbsp;squelette&nbsp;et&nbsp;un&nbsp;tableau&nbsp;associatif&nbsp;de&nbsp;données,</span></div></li>
<li><div class="src-line"><a name="a94"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;en&nbsp;extrait&nbsp;les&nbsp;variables,&nbsp;charge&nbsp;le&nbsp;squelette&nbsp;et&nbsp;crée&nbsp;une&nbsp;variable&nbsp;de&nbsp;classe&nbsp;portant&nbsp;le&nbsp;nom&nbsp;du&nbsp;squelette</span></div></li>
<li><div class="src-line"><a name="a95"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;contenant&nbsp;les&nbsp;deux&nbsp;combinés.</span></div></li>
<li><div class="src-line"><a name="a96"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*</span></div></li>
<li><div class="src-line"><a name="a97"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@param&nbsp;</span><span class="src-doc-type">String&nbsp;</span><span class="src-doc-var">$nom_squelette&nbsp;</span><span class="src-doc">le&nbsp;nom&nbsp;du&nbsp;squelette</span></div></li>
<li><div class="src-line"><a name="a98"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@param&nbsp;</span><span class="src-doc-type">Array&nbsp;</span><span class="src-doc">&nbsp;</span><span class="src-doc-var">$donnees&nbsp;</span><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;un&nbsp;tableau&nbsp;associatif&nbsp;contenant&nbsp;les&nbsp;variables&nbsp;a&nbsp;injecter&nbsp;dans&nbsp;la&nbsp;vue</span></div></li>
<li><div class="src-line"><a name="a99"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*</span></div></li>
<li><div class="src-line"><a name="a100"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@return&nbsp;</span><span class="src-doc-type">boolean&nbsp;</span><span class="src-doc">false&nbsp;si&nbsp;la&nbsp;vue&nbsp;n'existe&nbsp;pas,&nbsp;sinon&nbsp;true.</span></div></li>
<li><div class="src-line"><a name="a101"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a102"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">final&nbsp;</span><span class="src-key">protected&nbsp;</span><span class="src-key">function&nbsp;</span><a href="../Framework/Controleur.html#methodchargerVue">chargerVue</a><span class="src-sym">(</span><span class="src-var">$nom_squelette</span><span class="src-sym">,&nbsp;</span><span class="src-var">$donnees&nbsp;</span>=&nbsp;<span class="src-key">array</span><span class="src-sym">(</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a103"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$sortie&nbsp;</span>=&nbsp;<span class="src-id">false</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a104"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$rendu&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Framework/Controleur.html#methodgetVue">getVue</a><span class="src-sym">(</span><span class="src-var">$nom_squelette</span><span class="src-sym">,&nbsp;</span><span class="src-var">$donnees</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a105"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$rendu&nbsp;</span>!==&nbsp;<span class="src-id">false</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a106"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;Création&nbsp;d'une&nbsp;variable&nbsp;de&nbsp;classe&nbsp;contenant&nbsp;le&nbsp;rendu</span></div></li>
<li><div class="src-line"><a name="a107"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">$nom_squelette&nbsp;</span>=&nbsp;<span class="src-var">$rendu</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a108"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$sortie&nbsp;</span>=&nbsp;<span class="src-id">true</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a109"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a110"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$sortie</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a111"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a112"></a><span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a113"></a><span class="src-php">?&gt;</span></div></li>
</ol></div>
</div>
<p class="notes" id="credit">
Documentation generated on Thu, 04 Mar 2010 19:27:20 +0100 by <a href="http://www.phpdoc.org" target="_blank">phpDocumentor 1.4.3</a>
</p>
</body>
</html>
/tags/v0.3-aleaume/doc/HTMLframesConverter/errors.html
New file
0,0 → 1,87
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<!-- template designed by Marco Von Ballmoos -->
<title>phpDocumentor Parser Errors and Warnings</title>
<meta http-equiv='Content-Type' content='text/html; charset=UTF-8'/>
<link rel="stylesheet" href="media/stylesheet.css" />
</head>
<body>
<a href="#Post-parsing">Post-parsing</a><br>
<a href="#autoload.inc.php">autoload.inc.php</a><br>
<a href="#Chronometre.php">Chronometre.php</a><br>
<a href="#Config.php">Config.php</a><br>
<a href="#Controleur.php">Controleur.php</a><br>
<a href="#Debug.php">Debug.php</a><br>
<a href="#GestionnaireException.php">GestionnaireException.php</a><br>
<a href="#Log.php">Log.php</a><br>
<a href="#Modele.php">Modele.php</a><br>
<a href="#Registre.php">Registre.php</a><br>
<a href="#SquelettePhp.php">SquelettePhp.php</a><br>
<a href="#Url.php">Url.php</a><br>
<a name="Application.php"></a>
<h1>Application.php</h1>
<h2>Warnings:</h2><br>
<b>Warning on line 17</b> - package Framework is already in category php5, will now replace with category Debogage<br>
<b>Warning on line 17</b> - DocBlock would be page-level, but precedes class "Application", use another DocBlock to document the file<br>
<a name="autoload.inc.php"></a>
<h1>autoload.inc.php</h1>
<h2>Warnings:</h2><br>
<b>Warning on line 21</b> - package Framework is already in category Class, will now replace with category Fichier_De_Fonctions<br>
<b>Warning on line 22</b> - Page-level DocBlock precedes "define DS", use another DocBlock to document the source element<br>
<a name="Chronometre.php"></a>
<h1>Chronometre.php</h1>
<h2>Warnings:</h2><br>
<b>Warning on line 22</b> - package Framework is already in category Class, will now replace with category PHP<br>
<b>Warning on line 22</b> - DocBlock would be page-level, but precedes class "Chronometre", use another DocBlock to document the file<br>
<a name="Config.php"></a>
<h1>Config.php</h1>
<h2>Warnings:</h2><br>
<b>Warning on line 18</b> - package Framework is already in category php5, will now replace with category PHP<br>
<b>Warning on line 18</b> - DocBlock would be page-level, but precedes class "Config", use another DocBlock to document the file<br>
<a name="Controleur.php"></a>
<h1>Controleur.php</h1>
<h2>Warnings:</h2><br>
<b>Warning on line 18</b> - DocBlock would be page-level, but precedes class "Controleur", use another DocBlock to document the file<br>
<b>Warning on line 18</b> - package Framework is already in category Php5, will now replace with category php5<br>
<a name="Debug.php"></a>
<h1>Debug.php</h1>
<h2>Warnings:</h2><br>
<b>Warning on line 19</b> - package Framework is already in category Class, will now replace with category Debogage<br>
<b>Warning on line 19</b> - DocBlock would be page-level, but precedes class "Debug", use another DocBlock to document the file<br>
<a name="GestionnaireException.php"></a>
<h1>GestionnaireException.php</h1>
<h2>Warnings:</h2><br>
<b>Warning on line 18</b> - DocBlock would be page-level, but precedes class "GestionnaireException", use another DocBlock to document the file<br>
<b>Warning on line 18</b> - package Framework is already in category Fichier_De_Fonctions, will now replace with category Class<br>
<a name="Log.php"></a>
<h1>Log.php</h1>
<h2>Warnings:</h2><br>
<b>Warning on line 16</b> - package Framework is already in category Debogage, will now replace with category PHP<br>
<b>Warning on line 16</b> - DocBlock would be page-level, but precedes class "Log", use another DocBlock to document the file<br>
<a name="Modele.php"></a>
<h1>Modele.php</h1>
<h2>Warnings:</h2><br>
<b>Warning on line 20</b> - package Framework is already in category PHP, will now replace with category Class<br>
<b>Warning on line 20</b> - DocBlock would be page-level, but precedes class "Modele", use another DocBlock to document the file<br>
<a name="Registre.php"></a>
<h1>Registre.php</h1>
<h2>Warnings:</h2><br>
<b>Warning on line 18</b> - package Framework is already in category PHP, will now replace with category Class<br>
<b>Warning on line 18</b> - DocBlock would be page-level, but precedes class "Registre", use another DocBlock to document the file<br>
<a name="SquelettePhp.php"></a>
<h1>SquelettePhp.php</h1>
<h2>Warnings:</h2><br>
<b>Warning on line 15</b> - DocBlock would be page-level, but precedes class "SquelettePhp", use another DocBlock to document the file<br>
<b>Warning on line 15</b> - package Framework is already in category Debogage, will now replace with category php5<br>
<a name="Url.php"></a>
<h1>Url.php</h1>
<h2>Warnings:</h2><br>
<b>Warning on line 20</b> - package Framework is already in category php, will now replace with category Php5<br>
<b>Warning on line 21</b> - DocBlock would be page-level, but precedes class "Url", use another DocBlock to document the file<br>
<p class="notes" id="credit">
Documentation generated on Thu, 04 Mar 2010 19:27:28 +0100 by <a href="http://www.phpdoc.org" target="_blank">phpDocumentor 1.4.3</a>
</p>
</body>
</html>
/tags/v0.3-aleaume/doc/HTMLframesConverter/media/lib/classTree.js
New file
0,0 → 1,454
/*----------------------------------------\
| Cross Browser Tree Widget 1.1 |
|-----------------------------------------|
| Created by Emil A. Eklund (eae@eae.net) |
| For WebFX (http://webfx.eae.net/) |
|-----------------------------------------|
| This script is provided as is without |
| any warranty whatsoever. It may be used |
| free of charge for non commerical sites |
| For commerical use contact the author |
| of this script for further details. |
|-----------------------------------------|
| Created 2000-12-11 | Updated 2001-09-06 |
\----------------------------------------*/
 
var webFXTreeConfig = {
rootIcon : 'media/images/empty.png',
openRootIcon : 'media/images/empty.png',
folderIcon : 'media/images/empty.png',
openFolderIcon : 'media/images/empty.png',
fileIcon : 'media/images/empty.png',
iIcon : 'media/images/I.png',
lIcon : 'media/images/L.png',
lMinusIcon : 'media/images/Lminus.png',
lPlusIcon : 'media/images/Lplus.png',
tIcon : 'media/images/T.png',
tMinusIcon : 'media/images/Tminus.png',
tPlusIcon : 'media/images/Tplus.png',
blankIcon : 'media/images/blank.png',
defaultText : 'Tree Item',
defaultAction : 'javascript:void(0);',
defaultTarget : 'right',
defaultBehavior : 'classic'
};
 
var webFXTreeHandler = {
idCounter : 0,
idPrefix : "webfx-tree-object-",
all : {},
behavior : null,
selected : null,
getId : function() { return this.idPrefix + this.idCounter++; },
toggle : function (oItem) { this.all[oItem.id.replace('-plus','')].toggle(); },
select : function (oItem) { this.all[oItem.id.replace('-icon','')].select(); },
focus : function (oItem) { this.all[oItem.id.replace('-anchor','')].focus(); },
blur : function (oItem) { this.all[oItem.id.replace('-anchor','')].blur(); },
keydown : function (oItem) { return this.all[oItem.id].keydown(window.event.keyCode); },
cookies : new WebFXCookie()
};
 
/*
* WebFXCookie class
*/
 
function WebFXCookie() {
if (document.cookie.length) { this.cookies = ' ' + document.cookie; }
}
 
WebFXCookie.prototype.setCookie = function (key, value) {
document.cookie = key + "=" + escape(value);
}
 
WebFXCookie.prototype.getCookie = function (key) {
if (this.cookies) {
var start = this.cookies.indexOf(' ' + key + '=');
if (start == -1) { return null; }
var end = this.cookies.indexOf(";", start);
if (end == -1) { end = this.cookies.length; }
end -= start;
var cookie = this.cookies.substr(start,end);
return unescape(cookie.substr(cookie.indexOf('=') + 1, cookie.length - cookie.indexOf('=') + 1));
}
else { return null; }
}
 
/*
* WebFXTreeAbstractNode class
*/
 
function WebFXTreeAbstractNode(sText, sAction, sTarget) {
this.childNodes = [];
this.id = webFXTreeHandler.getId();
this.text = sText || webFXTreeConfig.defaultText;
this.action = sAction || webFXTreeConfig.defaultAction;
this.targetWindow = sTarget || webFXTreeConfig.defaultTarget;
this._last = false;
webFXTreeHandler.all[this.id] = this;
}
 
WebFXTreeAbstractNode.prototype.add = function (node) {
node.parentNode = this;
this.childNodes[this.childNodes.length] = node;
var root = this;
if (this.childNodes.length >=2) {
this.childNodes[this.childNodes.length -2]._last = false;
}
while (root.parentNode) { root = root.parentNode; }
if (root.rendered) {
if (this.childNodes.length >= 2) {
document.getElementById(this.childNodes[this.childNodes.length -2].id + '-plus').src = ((this.childNodes[this.childNodes.length -2].folder)?webFXTreeConfig.tMinusIcon:webFXTreeConfig.tIcon);
if (this.childNodes[this.childNodes.length -2].folder) {
this.childNodes[this.childNodes.length -2].plusIcon = webFXTreeConfig.tPlusIcon;
this.childNodes[this.childNodes.length -2].minusIcon = webFXTreeConfig.tMinusIcon;
}
this.childNodes[this.childNodes.length -2]._last = false;
}
this._last = true;
var foo = this;
while (foo.parentNode) {
for (var i = 0; i < foo.parentNode.childNodes.length; i++) {
if (foo.id == foo.parentNode.childNodes[i].id) { break; }
}
if (++i == foo.parentNode.childNodes.length) { foo.parentNode._last = true; }
else { foo.parentNode._last = false; }
foo = foo.parentNode;
}
document.getElementById(this.id + '-cont').insertAdjacentHTML("beforeEnd", node.toString());
if ((!this.folder) && (!this.openIcon)) {
this.icon = webFXTreeConfig.folderIcon;
this.openIcon = webFXTreeConfig.openFolderIcon;
}
this.folder = true;
this.indent();
this.expand();
}
return node;
}
 
WebFXTreeAbstractNode.prototype.toggle = function() {
if (this.folder) {
if (this.open) { this.collapse(); }
else { this.expand(); }
}
}
 
WebFXTreeAbstractNode.prototype.select = function() {
document.getElementById(this.id + '-anchor').focus();
}
 
WebFXTreeAbstractNode.prototype.focus = function() {
webFXTreeHandler.selected = this;
if ((this.openIcon) && (webFXTreeHandler.behavior != 'classic')) { document.getElementById(this.id + '-icon').src = this.openIcon; }
document.getElementById(this.id + '-anchor').style.backgroundColor = 'highlight';
document.getElementById(this.id + '-anchor').style.color = 'highlighttext';
document.getElementById(this.id + '-anchor').focus();
}
 
WebFXTreeAbstractNode.prototype.blur = function() {
if ((this.openIcon) && (webFXTreeHandler.behavior != 'classic')) { document.getElementById(this.id + '-icon').src = this.icon; }
document.getElementById(this.id + '-anchor').style.backgroundColor = 'transparent';
document.getElementById(this.id + '-anchor').style.color = 'menutext';
}
 
WebFXTreeAbstractNode.prototype.doExpand = function() {
if (webFXTreeHandler.behavior == 'classic') { document.getElementById(this.id + '-icon').src = this.openIcon; }
if (this.childNodes.length) { document.getElementById(this.id + '-cont').style.display = 'block'; }
this.open = true;
webFXTreeHandler.cookies.setCookie(this.id.substr(18,this.id.length - 18), '1');
}
 
WebFXTreeAbstractNode.prototype.doCollapse = function() {
if (webFXTreeHandler.behavior == 'classic') { document.getElementById(this.id + '-icon').src = this.icon; }
if (this.childNodes.length) { document.getElementById(this.id + '-cont').style.display = 'none'; }
this.open = false;
webFXTreeHandler.cookies.setCookie(this.id.substr(18,this.id.length - 18), '0');
}
 
WebFXTreeAbstractNode.prototype.expandAll = function() {
this.expandChildren();
if ((this.folder) && (!this.open)) { this.expand(); }
}
 
WebFXTreeAbstractNode.prototype.expandChildren = function() {
for (var i = 0; i < this.childNodes.length; i++) {
this.childNodes[i].expandAll();
} }
 
WebFXTreeAbstractNode.prototype.collapseAll = function() {
if ((this.folder) && (this.open)) { this.collapse(); }
this.collapseChildren();
}
 
WebFXTreeAbstractNode.prototype.collapseChildren = function() {
for (var i = 0; i < this.childNodes.length; i++) {
this.childNodes[i].collapseAll();
} }
 
WebFXTreeAbstractNode.prototype.indent = function(lvl, del, last, level) {
/*
* Since we only want to modify items one level below ourself,
* and since the rightmost indentation position is occupied by
* the plus icon we set this to -2
*/
if (lvl == null) { lvl = -2; }
var state = 0;
for (var i = this.childNodes.length - 1; i >= 0 ; i--) {
state = this.childNodes[i].indent(lvl + 1, del, last, level);
if (state) { return; }
}
if (del) {
if (level >= this._level) {
if (this.folder) {
document.getElementById(this.id + '-plus').src = (this.open)?webFXTreeConfig.lMinusIcon:webFXTreeConfig.lPlusIcon;
this.plusIcon = webFXTreeConfig.lPlusIcon;
this.minusIcon = webFXTreeConfig.lMinusIcon;
}
else { document.getElementById(this.id + '-plus').src = webFXTreeConfig.lIcon; }
return 1;
}
}
var foo = document.getElementById(this.id + '-indent-' + lvl);
if (foo) {
if ((del) && (last)) { foo._last = true; }
if (foo._last) { foo.src = webFXTreeConfig.blankIcon; }
else { foo.src = webFXTreeConfig.iIcon; }
}
return 0;
}
 
/*
* WebFXTree class
*/
 
function WebFXTree(sText, sAction, sBehavior, sIcon, sOpenIcon) {
this.base = WebFXTreeAbstractNode;
this.base(sText, sAction);
this.icon = sIcon || webFXTreeConfig.rootIcon;
this.openIcon = sOpenIcon || webFXTreeConfig.openRootIcon;
/* Defaults to open */
this.open = (webFXTreeHandler.cookies.getCookie(this.id.substr(18,this.id.length - 18)) == '0')?false:true;
this.folder = true;
this.rendered = false;
if (!webFXTreeHandler.behavior) { webFXTreeHandler.behavior = sBehavior || webFXTreeConfig.defaultBehavior; }
this.targetWindow = 'right';
}
 
WebFXTree.prototype = new WebFXTreeAbstractNode;
 
WebFXTree.prototype.setBehavior = function (sBehavior) {
webFXTreeHandler.behavior = sBehavior;
};
 
WebFXTree.prototype.getBehavior = function (sBehavior) {
return webFXTreeHandler.behavior;
};
 
WebFXTree.prototype.getSelected = function() {
if (webFXTreeHandler.selected) { return webFXTreeHandler.selected; }
else { return null; }
}
 
WebFXTree.prototype.remove = function() { }
 
WebFXTree.prototype.expand = function() {
this.doExpand();
}
 
WebFXTree.prototype.collapse = function() {
this.focus();
this.doCollapse();
}
 
WebFXTree.prototype.getFirst = function() {
return null;
}
 
WebFXTree.prototype.getLast = function() {
return null;
}
 
WebFXTree.prototype.getNextSibling = function() {
return null;
}
 
WebFXTree.prototype.getPreviousSibling = function() {
return null;
}
 
WebFXTree.prototype.keydown = function(key) {
if (key == 39) { this.expand(); return false; }
if (key == 37) { this.collapse(); return false; }
if ((key == 40) && (this.open)) { this.childNodes[0].select(); return false; }
return true;
}
 
WebFXTree.prototype.toString = function() {
var str = "<div id=\"" + this.id + "\" ondblclick=\"webFXTreeHandler.toggle(this);\" class=\"webfx-tree-item\" onkeydown=\"return webFXTreeHandler.keydown(this)\">";
str += "<img id=\"" + this.id + "-icon\" class=\"webfx-tree-icon\" src=\"" + ((webFXTreeHandler.behavior == 'classic' && this.open)?this.openIcon:this.icon) + "\" onclick=\"webFXTreeHandler.select(this);\"><a href=\"" + this.action + "\" id=\"" + this.id + "-anchor\" target=\"" + this.targetWindow + "\" onfocus=\"webFXTreeHandler.focus(this);\" onblur=\"webFXTreeHandler.blur(this);\">" + this.text + "</a></div>";
str += "<div id=\"" + this.id + "-cont\" class=\"webfx-tree-container\" style=\"display: " + ((this.open)?'block':'none') + ";\">";
for (var i = 0; i < this.childNodes.length; i++) {
str += this.childNodes[i].toString(i, this.childNodes.length);
}
str += "</div>";
this.rendered = true;
return str;
};
 
/*
* WebFXTreeItem class
*/
 
function WebFXTreeItem(sText, sAction, eParent, sIcon, sOpenIcon) {
this.base = WebFXTreeAbstractNode;
this.base(sText, sAction);
/* Defaults to close */
this.open = (webFXTreeHandler.cookies.getCookie(this.id.substr(18,this.id.length - 18)) == '1')?true:false;
if (eParent) { eParent.add(this); }
if (sIcon) { this.icon = sIcon; }
if (sOpenIcon) { this.openIcon = sOpenIcon; }
}
 
WebFXTreeItem.prototype = new WebFXTreeAbstractNode;
 
WebFXTreeItem.prototype.remove = function() {
var parentNode = this.parentNode;
var prevSibling = this.getPreviousSibling(true);
var nextSibling = this.getNextSibling(true);
var folder = this.parentNode.folder;
var last = ((nextSibling) && (nextSibling.parentNode) && (nextSibling.parentNode.id == parentNode.id))?false:true;
this.getPreviousSibling().focus();
this._remove();
if (parentNode.childNodes.length == 0) {
parentNode.folder = false;
parentNode.open = false;
}
if (last) {
if (parentNode.id == prevSibling.id) {
document.getElementById(parentNode.id + '-icon').src = webFXTreeConfig.fileIcon;
}
else { }
}
if ((!prevSibling.parentNode) || (prevSibling.parentNode != parentNode)) {
parentNode.indent(null, true, last, this._level);
}
if (document.getElementById(prevSibling.id + '-plus')) {
if (nextSibling) {
if ((parentNode == prevSibling) && (parentNode.getNextSibling)) { document.getElementById(prevSibling.id + '-plus').src = webFXTreeConfig.tIcon; }
else if (nextSibling.parentNode != prevSibling) { document.getElementById(prevSibling.id + '-plus').src = webFXTreeConfig.lIcon; }
}
else { document.getElementById(prevSibling.id + '-plus').src = webFXTreeConfig.lIcon; }
}
}
 
WebFXTreeItem.prototype._remove = function() {
for (var i = this.childNodes.length - 1; i >= 0; i--) {
this.childNodes[i]._remove();
}
for (var i = 0; i < this.parentNode.childNodes.length; i++) {
if (this.id == this.parentNode.childNodes[i].id) {
for (var j = i; j < this.parentNode.childNodes.length; j++) {
this.parentNode.childNodes[i] = this.parentNode.childNodes[i+1]
}
this.parentNode.childNodes.length = this.parentNode.childNodes.length - 1;
if (i + 1 == this.parentNode.childNodes.length) { this.parentNode._last = true; }
}
}
webFXTreeHandler.all[this.id] = null;
if (document.getElementById(this.id)) {
document.getElementById(this.id).innerHTML = "";
document.getElementById(this.id).removeNode();
}
}
 
WebFXTreeItem.prototype.expand = function() {
this.doExpand();
document.getElementById(this.id + '-plus').src = this.minusIcon;
}
 
WebFXTreeItem.prototype.collapse = function() {
this.focus();
this.doCollapse();
document.getElementById(this.id + '-plus').src = this.plusIcon;
}
 
WebFXTreeItem.prototype.getFirst = function() {
return this.childNodes[0];
}
 
WebFXTreeItem.prototype.getLast = function() {
if (this.childNodes[this.childNodes.length - 1].open) { return this.childNodes[this.childNodes.length - 1].getLast(); }
else { return this.childNodes[this.childNodes.length - 1]; }
}
 
WebFXTreeItem.prototype.getNextSibling = function() {
for (var i = 0; i < this.parentNode.childNodes.length; i++) {
if (this == this.parentNode.childNodes[i]) { break; }
}
if (++i == this.parentNode.childNodes.length) { return this.parentNode.getNextSibling(); }
else { return this.parentNode.childNodes[i]; }
}
 
WebFXTreeItem.prototype.getPreviousSibling = function(b) {
for (var i = 0; i < this.parentNode.childNodes.length; i++) {
if (this == this.parentNode.childNodes[i]) { break; }
}
if (i == 0) { return this.parentNode; }
else {
if ((this.parentNode.childNodes[--i].open) || (b && this.parentNode.childNodes[i].folder)) { return this.parentNode.childNodes[i].getLast(); }
else { return this.parentNode.childNodes[i]; }
} }
 
WebFXTreeItem.prototype.keydown = function(key) {
if ((key == 39) && (this.folder)) {
if (!this.open) { this.expand(); return false; }
else { this.getFirst().select(); return false; }
}
else if (key == 37) {
if (this.open) { this.collapse(); return false; }
else { this.parentNode.select(); return false; }
}
else if (key == 40) {
if (this.open) { this.getFirst().select(); return false; }
else {
var sib = this.getNextSibling();
if (sib) { sib.select(); return false; }
} }
else if (key == 38) { this.getPreviousSibling().select(); return false; }
return true;
}
 
WebFXTreeItem.prototype.toString = function (nItem, nItemCount) {
var foo = this.parentNode;
var indent = '';
if (nItem + 1 == nItemCount) { this.parentNode._last = true; }
var i = 0;
while (foo.parentNode) {
foo = foo.parentNode;
indent = "<img id=\"" + this.id + "-indent-" + i + "\" src=\"" + ((foo._last)?webFXTreeConfig.blankIcon:webFXTreeConfig.iIcon) + "\">" + indent;
i++;
}
this._level = i;
if (this.childNodes.length) { this.folder = 1; }
else { this.open = false; }
if ((this.folder) || (webFXTreeHandler.behavior != 'classic')) {
if (!this.icon) { this.icon = webFXTreeConfig.folderIcon; }
if (!this.openIcon) { this.openIcon = webFXTreeConfig.openFolderIcon; }
}
else if (!this.icon) { this.icon = webFXTreeConfig.fileIcon; }
var label = this.text;
label = label.replace('<', '<');
label = label.replace('>', '>');
var str = "<div id=\"" + this.id + "\" ondblclick=\"webFXTreeHandler.toggle(this);\" class=\"webfx-tree-item\" onkeydown=\"return webFXTreeHandler.keydown(this)\">";
str += indent;
str += "<img id=\"" + this.id + "-plus\" src=\"" + ((this.folder)?((this.open)?((this.parentNode._last)?webFXTreeConfig.lMinusIcon:webFXTreeConfig.tMinusIcon):((this.parentNode._last)?webFXTreeConfig.lPlusIcon:webFXTreeConfig.tPlusIcon)):((this.parentNode._last)?webFXTreeConfig.lIcon:webFXTreeConfig.tIcon)) + "\" onclick=\"webFXTreeHandler.toggle(this);\">"
str += "<img id=\"" + this.id + "-icon\" src=\"" + ((webFXTreeHandler.behavior == 'classic' && this.open)?this.openIcon:this.icon) + "\" onclick=\"webFXTreeHandler.select(this);\"><a href=\"" + this.action + "\" id=\"" + this.id + "-anchor\" target=\"" + this.targetWindow + "\" onfocus=\"webFXTreeHandler.focus(this);\" onblur=\"webFXTreeHandler.blur(this);\">" + label + "</a></div>";
str += "<div id=\"" + this.id + "-cont\" class=\"webfx-tree-container\" style=\"display: " + ((this.open)?'block':'none') + ";\">";
for (var i = 0; i < this.childNodes.length; i++) {
str += this.childNodes[i].toString(i,this.childNodes.length);
}
str += "</div>";
this.plusIcon = ((this.parentNode._last)?webFXTreeConfig.lPlusIcon:webFXTreeConfig.tPlusIcon);
this.minusIcon = ((this.parentNode._last)?webFXTreeConfig.lMinusIcon:webFXTreeConfig.tMinusIcon);
return str;
}
/tags/v0.3-aleaume/doc/HTMLframesConverter/media/banner.css
New file
0,0 → 1,32
body
{
background-color: #FFFFFF;
margin: 0px;
padding: 0px;
}
 
/* Banner (top bar) classes */
 
.banner { }
 
.banner-menu
{
clear: both;
padding: .5em;
border-top: 2px solid #999999;
}
 
.banner-title
{
text-align: right;
font-size: 20pt;
font-weight: bold;
margin: .2em;
}
 
.package-selector
{
background-color: #EEEEEE;
border: 1px solid black;
color: #0000C0;
}
/tags/v0.3-aleaume/doc/HTMLframesConverter/media/stylesheet.css
New file
0,0 → 1,184
a { color: #0000C0; text-decoration: underline; }
a:hover { text-decoration: underline; background-color: #FFFFFF }
a:active { text-decoration: underline; background-color: #FFFFFF }
 
body, table { background-color: #EEEEEE; font-family: Verdana, Arial, sans-serif; font-size: 10pt }
p, li { line-height: 140% }
a img { border: 0px; }
dd { margin-left: 0px; padding-left: 1em; }
 
/* Page layout/boxes */
 
.info-box {}
.info-box-title { margin: 1em 0em 0em 0em; padding: .25em; font-weight: normal; font-size: 14pt; border: 2px solid #999999; background-color: #FFFFFF }
.info-box-body { border: 1px solid #999999; padding: .5em; }
.nav-bar { font-size: 8pt; white-space: nowrap; text-align: right; padding: .2em; margin: 0em 0em 1em 0em; }
 
.oddrow { background-color: #F8F8F8; border: 1px solid #AAAAAA; padding: .5em; margin-bottom: 1em}
.evenrow { border: 1px solid #AAAAAA; padding: .5em; margin-bottom: 1em}
 
.page-body { max-width: 800px; margin: auto; }
.tree { }
 
/* Index formatting classes */
 
.index-item-body { margin-top: .5em; margin-bottom: .5em}
.index-item-description { margin-top: .25em }
.index-item-details { font-weight: normal; font-style: italic; font-size: 8pt }
.index-letter-section { background-color: #EEEEEE; border: 1px dotted #999999; padding: .5em; margin-bottom: 1em}
.index-letter-title { font-size: 12pt; font-weight: bold }
.index-letter-menu { text-align: center; margin: 1em }
.index-letter { font-size: 12pt }
 
/* Docbook classes */
 
.description {}
.short-description { font-weight: bold; color: #666666; }
.tags { padding-left: 0em; margin-left: 3em; color: #666666; list-style-type: square; }
.parameters { padding-left: 0em; margin-left: 3em; font-style: italic; list-style-type: square; }
.redefinitions { font-size: 8pt; padding-left: 0em; margin-left: 2em; }
.package { }
.package-title { font-weight: bold; font-size: 14pt; border-bottom: 1px solid black }
.package-details { font-size: 85%; }
.sub-package { font-weight: bold; font-size: 120% }
.tutorial { border-width: thin; border-color: #0066ff }
.tutorial-nav-box { width: 100%; border: 1px solid #AAAAAA; background-color: #DDDDFF; }
.nav-button-disabled { color: #AAAAAA; }
.nav-button:active,
.nav-button:focus,
.nav-button:hover { background-color: #CCCCCC; outline: 1px solid #999999; text-decoration: none }
.folder-title { font-style: italic }
 
/* Generic formatting */
 
.field { font-weight: bold; }
.detail { font-size: 8pt; }
.notes { font-style: italic; font-size: 8pt; }
.separator { background-color: #999999; height: 2px; }
.warning { color: #FF6600; }
.disabled { font-style: italic; color: #999999; }
 
/* Code elements */
 
.line-number { }
 
.class-table { width: 100%; }
.class-table-header { border-bottom: 1px dotted #666666; text-align: left; background-color: DDDDFF }
.class-name { color: #000000; font-weight: bold; }
 
.method-summary { padding-left: 1em; font-size: 8pt }
.method-header { background-color: #DDDDFF; padding: 1px; }
.method-definition { margin-bottom: .3em }
.method-title { font-weight: bold }
.method-name { font-weight: bold; }
.method-signature { font-size: 85%; color: #666666; margin: .5em 0em }
.method-result { font-style: italic; }
 
.var-summary { padding-left: 1em; font-size: 8pt; }
.var-header { background-color: #DDDDFF; padding: 1px; }
.var-title { margin-bottom: .3em }
.var-type { font-style: italic; }
.var-name { font-weight: bold; }
.var-default {}
.var-description { font-weight: normal; color: #000000; }
 
.include-title { }
.include-type { font-style: italic; }
.include-name { font-weight: bold; }
 
.const-title { }
.const-name { font-weight: bold; }
 
/* Syntax highlighting */
 
.src-code { border: 1px solid #999999; padding: 1em;
font-family: 'Courier New', Courier, monospace; font-weight: normal; }
.src-line { font-family: 'Courier New', Courier, monospace; font-weight: normal; }
 
.src-comm { color: green; }
.src-id { }
.src-inc { color: #0000FF; }
.src-key { color: #0000FF; }
.src-num { color: #CC0000; }
.src-str { color: #66cccc; }
.src-sym { font-weight: bold; }
.src-var { }
 
.src-php { font-weight: bold; }
 
.src-doc { color: #009999 }
.src-doc-close-template { color: #0000FF }
.src-doc-coretag { color: #0099FF; font-weight: bold }
.src-doc-inlinetag { color: #0099FF }
.src-doc-internal { color: #6699cc }
.src-doc-tag { color: #0080CC }
.src-doc-template { color: #0000FF }
.src-doc-type { font-style: italic }
.src-doc-var { font-style: italic }
 
.tute-tag { color: #009999 }
.tute-attribute-name { color: #0000FF }
.tute-attribute-value { color: #0099FF }
.tute-entity { font-weight: bold; }
.tute-comment { font-style: italic }
.tute-inline-tag { color: #636311; font-weight: bold }
 
/* tutorial */
 
.authors { }
.author { font-style: italic; font-weight: bold }
.author-blurb { margin: .5em 0em .5em 2em; font-size: 85%; font-weight: normal; font-style: normal }
.example { border: 1px dashed #999999; background-color: #EEEEEE; padding: .5em; }
.listing { border: 1px dashed #999999; background-color: #EEEEEE; padding: .5em; white-space: nowrap; }
.release-info { font-size: 85%; font-style: italic; margin: 1em 0em }
.ref-title-box { }
.ref-title { }
.ref-purpose { font-style: italic; color: #666666 }
.ref-synopsis { }
.title { font-weight: bold; border: 2px solid #999999; background-color: #FFFFFF; padding: 2px }
.cmd-synopsis { margin: 1em 0em }
.cmd-title { font-weight: bold }
.toc { margin-left: 2em; padding-left: 0em }
 
/*------------------------------------------------------------------------------
webfx-tree
------------------------------------------------------------------------------*/
 
.webfx-tree-container {
margin: 0px;
padding: 0px;
white-space: nowrap;
font: icon;
}
 
.webfx-tree-item {
padding: 0px;
margin: 0px;
color: black;
white-space: nowrap;
font: icon;
}
 
.webfx-tree-item a {
margin-left: 3px;
padding: 1px 2px 1px 2px;
color: black;
text-decoration: none;
}
 
.webfx-tree-item a:hover, .webfx-tree-item a:active {
color: #666666;
background: white;
text-decoration: none
}
 
.webfx-tree-item img {
vertical-align: middle;
border: 0px;
}
 
.webfx-tree-icon {
width: 16px;
height: 16px;
}
 
/tags/v0.3-aleaume/doc/HTMLframesConverter/media/images/Lminus.png
Cannot display: file marked as a binary type.
svn:mime-type = image/png
/tags/v0.3-aleaume/doc/HTMLframesConverter/media/images/Lminus.png
New file
Property changes:
Added: svn:mime-type
+image/png
\ No newline at end of property
/tags/v0.3-aleaume/doc/HTMLframesConverter/media/images/Tplus.png
Cannot display: file marked as a binary type.
svn:mime-type = image/png
/tags/v0.3-aleaume/doc/HTMLframesConverter/media/images/Tplus.png
New file
Property changes:
Added: svn:mime-type
+image/png
\ No newline at end of property
/tags/v0.3-aleaume/doc/HTMLframesConverter/media/images/blank.png
Cannot display: file marked as a binary type.
svn:mime-type = image/png
/tags/v0.3-aleaume/doc/HTMLframesConverter/media/images/blank.png
New file
Property changes:
Added: svn:mime-type
+image/png
\ No newline at end of property
/tags/v0.3-aleaume/doc/HTMLframesConverter/media/images/I.png
Cannot display: file marked as a binary type.
svn:mime-type = image/png
/tags/v0.3-aleaume/doc/HTMLframesConverter/media/images/I.png
New file
Property changes:
Added: svn:mime-type
+image/png
\ No newline at end of property
/tags/v0.3-aleaume/doc/HTMLframesConverter/media/images/L.png
Cannot display: file marked as a binary type.
svn:mime-type = image/png
/tags/v0.3-aleaume/doc/HTMLframesConverter/media/images/L.png
New file
Property changes:
Added: svn:mime-type
+image/png
\ No newline at end of property
/tags/v0.3-aleaume/doc/HTMLframesConverter/media/images/minus.gif
Cannot display: file marked as a binary type.
svn:mime-type = application/octet-stream
/tags/v0.3-aleaume/doc/HTMLframesConverter/media/images/minus.gif
New file
Property changes:
Added: svn:mime-type
+application/octet-stream
\ No newline at end of property
/tags/v0.3-aleaume/doc/HTMLframesConverter/media/images/empty.png
Cannot display: file marked as a binary type.
svn:mime-type = image/png
/tags/v0.3-aleaume/doc/HTMLframesConverter/media/images/empty.png
New file
Property changes:
Added: svn:mime-type
+image/png
\ No newline at end of property
/tags/v0.3-aleaume/doc/HTMLframesConverter/media/images/Lplus.png
Cannot display: file marked as a binary type.
svn:mime-type = image/png
/tags/v0.3-aleaume/doc/HTMLframesConverter/media/images/Lplus.png
New file
Property changes:
Added: svn:mime-type
+image/png
\ No newline at end of property
/tags/v0.3-aleaume/doc/HTMLframesConverter/media/images/Tminus.png
Cannot display: file marked as a binary type.
svn:mime-type = image/png
/tags/v0.3-aleaume/doc/HTMLframesConverter/media/images/Tminus.png
New file
Property changes:
Added: svn:mime-type
+image/png
\ No newline at end of property
/tags/v0.3-aleaume/doc/HTMLframesConverter/media/images/T.png
Cannot display: file marked as a binary type.
svn:mime-type = image/png
/tags/v0.3-aleaume/doc/HTMLframesConverter/media/images/T.png
New file
Property changes:
Added: svn:mime-type
+image/png
\ No newline at end of property
/tags/v0.3-aleaume/doc/HTMLframesConverter/media/images/plus.gif
Cannot display: file marked as a binary type.
svn:mime-type = application/octet-stream
/tags/v0.3-aleaume/doc/HTMLframesConverter/media/images/plus.gif
New file
Property changes:
Added: svn:mime-type
+application/octet-stream
\ No newline at end of property
/tags/v0.3-aleaume/doc/HTMLframesConverter/elementindex_Framework.html
New file
0,0 → 1,934
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<!-- template designed by Marco Von Ballmoos -->
<title></title>
<meta http-equiv='Content-Type' content='text/html; charset=UTF-8'/>
<link rel="stylesheet" href="media/stylesheet.css" />
</head>
<body>
<a name="top"></a>
<h2>[Framework] element index</h2>
<a href="elementindex.html">All elements</a>
<br />
<div class="index-letter-menu">
<a class="index-letter" href="elementindex_Framework.html#a">a</a>
<a class="index-letter" href="elementindex_Framework.html#c">c</a>
<a class="index-letter" href="elementindex_Framework.html#d">d</a>
<a class="index-letter" href="elementindex_Framework.html#e">e</a>
<a class="index-letter" href="elementindex_Framework.html#g">g</a>
<a class="index-letter" href="elementindex_Framework.html#i">i</a>
<a class="index-letter" href="elementindex_Framework.html#l">l</a>
<a class="index-letter" href="elementindex_Framework.html#m">m</a>
<a class="index-letter" href="elementindex_Framework.html#n">n</a>
<a class="index-letter" href="elementindex_Framework.html#o">o</a>
<a class="index-letter" href="elementindex_Framework.html#p">p</a>
<a class="index-letter" href="elementindex_Framework.html#r">r</a>
<a class="index-letter" href="elementindex_Framework.html#s">s</a>
<a class="index-letter" href="elementindex_Framework.html#u">u</a>
<a class="index-letter" href="elementindex_Framework.html#v">v</a>
<a class="index-letter" href="elementindex_Framework.html#_">_</a>
</div>
 
<a name="_"></a>
<div class="index-letter-section">
<div style="float: left" class="index-letter-title">_</div>
<div style="float: right"><a href="#top">top</a></div>
<div style="clear: both"></div>
</div>
<dl>
<dt class="field">
<span class="method-title">__construct</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="Framework/Chronometre.html#method__construct">Chronometre::__construct()</a> in Chronometre.php</div>
<div class="index-item-description">Constructeur : *</div>
</dd>
<dt class="field">
<span class="method-title">__construct</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="Framework/Modele.html#method__construct">Modele::__construct()</a> in Modele.php</div>
<div class="index-item-description">Constructeur par défaut, appelé à l'initialisation.</div>
</dd>
<dt class="field">
<span class="method-title">__construct</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="Framework/Url.html#method__construct">Url::__construct()</a> in Url.php</div>
</dd>
<dt class="field">
<span class="method-title">__construct</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="Framework/GestionnaireException.html#method__construct">GestionnaireException::__construct()</a> in GestionnaireException.php</div>
<div class="index-item-description">Constructeur avec paramètres optionnel</div>
</dd>
<dt class="field">
<span class="method-title">__construct</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="Framework/Controleur.html#method__construct">Controleur::__construct()</a> in Controleur.php</div>
<div class="index-item-description">Constructeur par défaut</div>
</dd>
<dt class="field">
<span class="method-title">__destruct</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="Framework/Modele.html#method__destruct">Modele::__destruct()</a> in Modele.php</div>
<div class="index-item-description">Destructeur de classe, se contente de fermer explicitement la connexion</div>
</dd>
<dt class="field">
<span class="method-title">__destruct</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="Framework/Log.html#method__destruct">Log::__destruct()</a> in Log.php</div>
<div class="index-item-description">destructeur de classe, ferme les descripteurs ouverts</div>
</dd>
<dt class="field">
<span class="method-title">__destruct</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="Framework/GestionnaireException.html#method__destruct">GestionnaireException::__destruct()</a> in GestionnaireException.php</div>
</dd>
<dt class="field">
<span class="method-title">__toString</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="Framework/Url.html#method__toString">Url::__toString()</a> in Url.php</div>
</dd>
</dl>
<a name="a"></a>
<div class="index-letter-section">
<div style="float: left" class="index-letter-title">a</div>
<div style="float: right"><a href="#top">top</a></div>
<div style="clear: both"></div>
</div>
<dl>
<dt class="field">
<span class="method-title">afficherChrono</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="Framework/Chronometre.html#methodafficherChrono">Chronometre::afficherChrono()</a> in Chronometre.php</div>
<div class="index-item-description">Méthode afficherChrono() - Permet d'afficher les temps d'éxécution de différentes parties d'un script.</div>
</dd>
<dt class="field">
<span class="method-title">ajouterEntree</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="Framework/Log.html#methodajouterEntree">Log::ajouterEntree()</a> in Log.php</div>
<div class="index-item-description">Ajoute une entrée au log spécifié par le paramètre $nomFichier</div>
</dd>
<dt class="field">
<span class="method-title">analyser</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="Framework/SquelettePhp.html#methodanalyser">SquelettePhp::analyser()</a> in SquelettePhp.php</div>
<div class="index-item-description">Fonction prenant en paramètre un chemin de fichier squelette et un tableau associatif de données, en extrait les variables, charge le squelette et retourne le résultat des deux combinés.</div>
</dd>
<dt class="field">
Application
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="Framework/Application.html">Application</a> in Application.php</div>
<div class="index-item-description">Classe fournissant des informations au Framework sur l'application.</div>
</dd>
<dt class="field">
<span class="include-title">Application.php</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="Framework/_Application.php.html">Application.php</a> in Application.php</div>
</dd>
<dt class="field">
<span class="include-title">autoload.inc.php</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="Framework/_autoload.inc.php.html">autoload.inc.php</a> in autoload.inc.php</div>
</dd>
<dt class="field">
<span class="method-title">autoloadAppliDefaut</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="Framework/_autoload.inc.php.html#functionautoloadAppliDefaut">autoloadAppliDefaut()</a> in autoload.inc.php</div>
</dd>
<dt class="field">
<span class="method-title">autoloadFw</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="Framework/_autoload.inc.php.html#functionautoloadFw">autoloadFw()</a> in autoload.inc.php</div>
</dd>
</dl>
<a name="c"></a>
<div class="index-letter-section">
<div style="float: left" class="index-letter-title">c</div>
<div style="float: right"><a href="#top">top</a></div>
<div style="clear: both"></div>
</div>
<dl>
<dt class="field">
<span class="method-title">charger</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="Framework/Config.html#methodcharger">Config::charger()</a> in Config.php</div>
<div class="index-item-description">Charge un fichier ini dans le tableau des paramètres de l'appli</div>
</dd>
<dt class="field">
<span class="method-title">chargerModele</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="Framework/Controleur.html#methodchargerModele">Controleur::chargerModele()</a> in Controleur.php</div>
<div class="index-item-description">Charge un modele donné et le rend disponible sous la forme $this-&gt;nom_modele</div>
</dd>
<dt class="field">
<span class="method-title">chargerVue</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="Framework/Controleur.html#methodchargerVue">Controleur::chargerVue()</a> in Controleur.php</div>
<div class="index-item-description">Fonction prenant en paramètre le nom d'un squelette et un tableau associatif de données, en extrait les variables, charge le squelette et crée une variable de classe portant le nom du squelette contenant les deux combinés.</div>
</dd>
<dt class="field">
Chronometre
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="Framework/Chronometre.html">Chronometre</a> in Chronometre.php</div>
<div class="index-item-description">Classe Chronometre() - Permet de stocker et d'afficher les temps d'éxécution de script.</div>
</dd>
<dt class="field">
<span class="include-title">Chronometre.php</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="Framework/_Chronometre.php.html">Chronometre.php</a> in Chronometre.php</div>
</dd>
<dt class="field">
Config
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="Framework/Config.html">Config</a> in Config.php</div>
<div class="index-item-description">Config permet de charger automatiquement les fichiers ini du Framework et de l'application.</div>
</dd>
<dt class="field">
<span class="include-title">Config.php</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="Framework/_Config.php.html">Config.php</a> in Config.php</div>
</dd>
<dt class="field">
Controleur
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="Framework/Controleur.html">Controleur</a> in Controleur.php</div>
<div class="index-item-description">Classe Controleur, coeur d'une application, c'est normalement la seule classe d'une application qui devrait être appelée de l'extérieur.</div>
</dd>
<dt class="field">
<span class="include-title">Controleur.php</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="Framework/_Controleur.php.html">Controleur.php</a> in Controleur.php</div>
</dd>
</dl>
<a name="d"></a>
<div class="index-letter-section">
<div style="float: left" class="index-letter-title">d</div>
<div style="float: right"><a href="#top">top</a></div>
<div style="clear: both"></div>
</div>
<dl>
<dt class="field">
Debug
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="Framework/Debug.html">Debug</a> in Debug.php</div>
<div class="index-item-description">Classe fournissant des fonctions de débogage équivalante à var_dump et print_r.</div>
</dd>
<dt class="field">
<span class="include-title">Debug.php</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="Framework/_Debug.php.html">Debug.php</a> in Debug.php</div>
</dd>
<dt class="field">
<span class="method-title">detruire</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="Framework/Registre.html#methoddetruire">Registre::detruire()</a> in Registre.php</div>
<div class="index-item-description">Détruit l'objet associé à l'intitulé, n'a pas d'effet si il n'y a pas d'objet associé</div>
</dd>
<dt class="field">
<span class="const-title">DS</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="Framework/_autoload.inc.php.html#defineDS">DS</a> in autoload.inc.php</div>
</dd>
<dt class="field">
<span class="method-title">dump</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="Framework/Debug.html#methoddump">Debug::dump()</a> in Debug.php</div>
<div class="index-item-description">Equivalent de var_dump</div>
</dd>
</dl>
<a name="e"></a>
<div class="index-letter-section">
<div style="float: left" class="index-letter-title">e</div>
<div style="float: right"><a href="#top">top</a></div>
<div style="clear: both"></div>
</div>
<dl>
<dt class="field">
<span class="method-title">etreAbsolue</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="Framework/Url.html#methodetreAbsolue">Url::etreAbsolue()</a> in Url.php</div>
<div class="index-item-description">Renvoie vrai ou faux suivant que l'instance en cours représente une URL relative ou absolue.</div>
</dd>
<dt class="field">
<span class="method-title">existe</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="Framework/Registre.html#methodexiste">Registre::existe()</a> in Registre.php</div>
<div class="index-item-description">Teste si un objet est présent sous un intitulé donné</div>
</dd>
<dt class="field">
<span class="method-title">existe</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="Framework/Config.html#methodexiste">Config::existe()</a> in Config.php</div>
<div class="index-item-description">Vérifie si la valeur d'un paramètre existe</div>
</dd>
</dl>
<a name="g"></a>
<div class="index-letter-section">
<div style="float: left" class="index-letter-title">g</div>
<div style="float: right"><a href="#top">top</a></div>
<div style="clear: both"></div>
</div>
<dl>
<dt class="field">
<span class="method-title">gererErreur</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="Framework/GestionnaireException.html#methodgererErreur">GestionnaireException::gererErreur()</a> in GestionnaireException.php</div>
<div class="index-item-description">Gère les erreurs en les convertissant en exceptions (remplace la fonction gestion d'erreurs native de php)</div>
</dd>
<dt class="field">
<span class="method-title">gererException</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="Framework/GestionnaireException.html#methodgererException">GestionnaireException::gererException()</a> in GestionnaireException.php</div>
<div class="index-item-description">Fonction de gestion des exceptions, remplace le handler par défaut</div>
</dd>
<dt class="field">
GestionnaireException
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="Framework/GestionnaireException.html">GestionnaireException</a> in GestionnaireException.php</div>
<div class="index-item-description">Classe de gestion des exceptions.</div>
</dd>
<dt class="field">
<span class="include-title">GestionnaireException.php</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="Framework/_GestionnaireException.php.html">GestionnaireException.php</a> in GestionnaireException.php</div>
</dd>
<dt class="field">
<span class="method-title">get</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="Framework/Registre.html#methodget">Registre::get()</a> in Registre.php</div>
<div class="index-item-description">Renvoie l'objet associé à l'intitulé donné en paramètre</div>
</dd>
<dt class="field">
<span class="method-title">get</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="Framework/Config.html#methodget">Config::get()</a> in Config.php</div>
<div class="index-item-description">Acesseur pour la valeur d'un paramètre</div>
</dd>
<dt class="field">
<span class="method-title">getAutorite</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="Framework/Url.html#methodgetAutorite">Url::getAutorite()</a> in Url.php</div>
<div class="index-item-description">Renvoie la partie autorité, i.e. [ infoUtilisateur &quot;@&quot; ] hote [ &quot;:&quot; port ], ou false si celle-ci est absente.</div>
</dd>
<dt class="field">
<span class="method-title">getCanonique</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="Framework/Url.html#methodgetCanonique">Url::getCanonique()</a> in Url.php</div>
<div class="index-item-description">Renvoie une instance de Url representant l'URL canonique du script PHP en cours d'éxécution</div>
</dd>
<dt class="field">
<span class="method-title">getChemin</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="Framework/Application.html#methodgetChemin">Application::getChemin()</a> in Application.php</div>
<div class="index-item-description">accesseur pour le chemin</div>
</dd>
<dt class="field">
<span class="method-title">getChemin</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="Framework/Url.html#methodgetChemin">Url::getChemin()</a> in Url.php</div>
<div class="index-item-description">Renvoie la partie chemin (chemin) (éventuellement vide).</div>
</dd>
<dt class="field">
<span class="method-title">getContexte</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="Framework/GestionnaireException.html#methodgetContexte">GestionnaireException::getContexte()</a> in GestionnaireException.php</div>
<div class="index-item-description">Renvoie le booleen définissant si l'on affiche le contexte ou non</div>
</dd>
<dt class="field">
<span class="method-title">getDemande</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="Framework/Url.html#methodgetDemande">Url::getDemande()</a> in Url.php</div>
<div class="index-item-description">Renvoie une instance de Url representant l'URL utilisée pour récupérer la requête en cours</div>
</dd>
<dt class="field">
<span class="method-title">getExceptions</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="Framework/GestionnaireException.html#methodgetExceptions">GestionnaireException::getExceptions()</a> in GestionnaireException.php</div>
<div class="index-item-description">Renvoie les exceptions au format (X)HTML</div>
</dd>
<dt class="field">
<span class="method-title">getFragment</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="Framework/Url.html#methodgetFragment">Url::getFragment()</a> in Url.php</div>
<div class="index-item-description">Renvoie le nom du fragment, ou false si &quot;#&quot; n'est pas present dans l'URL.</div>
</dd>
<dt class="field">
<span class="method-title">getHote</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="Framework/Url.html#methodgetHote">Url::getHote()</a> in Url.php</div>
<div class="index-item-description">Renvoie la partie hôte, ou false s'il n'y a pas de partie autorité, c.a.d.</div>
</dd>
<dt class="field">
<span class="method-title">getInfo</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="Framework/Application.html#methodgetInfo">Application::getInfo()</a> in Application.php</div>
<div class="index-item-description">accesseur pour le tableau d'infos</div>
</dd>
<dt class="field">
<span class="method-title">getInfoUtilisateur</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="Framework/Url.html#methodgetInfoUtilisateur">Url::getInfoUtilisateur()</a> in Url.php</div>
<div class="index-item-description">Renvoie la partie userinfio, ou false si celle-ci n'existe pas, i.e. si la partie autorité ne contient pas de &quot;@&quot;</div>
</dd>
<dt class="field">
<span class="method-title">getInstance</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="Framework/Registre.html#methodgetInstance">Registre::getInstance()</a> in Registre.php</div>
<div class="index-item-description">Fonction qui renvoie l'instance de classe en assurant son unicité, c'est l'unique méthode qui doit être</div>
</dd>
<dt class="field">
<span class="method-title">getInstance</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="Framework/GestionnaireException.html#methodgetInstance">GestionnaireException::getInstance()</a> in GestionnaireException.php</div>
<div class="index-item-description">Fonction d'accès au singleton</div>
</dd>
<dt class="field">
<span class="method-title">getInstance</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="Framework/Log.html#methodgetInstance">Log::getInstance()</a> in Log.php</div>
<div class="index-item-description">Fonction qui renvoie l'instance de classe en assurant son unicité, c'est l'unique méthode qui doit être</div>
</dd>
<dt class="field">
<span class="method-title">getMode</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="Framework/Debug.html#methodgetMode">Debug::getMode()</a> in Debug.php</div>
<div class="index-item-description">Accesseur pour le mode</div>
</dd>
<dt class="field">
<span class="method-title">getModele</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="Framework/Controleur.html#methodgetModele">Controleur::getModele()</a> in Controleur.php</div>
<div class="index-item-description">Retourne un modele donné</div>
</dd>
<dt class="field">
<span class="method-title">getMotDePasse</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="Framework/Url.html#methodgetMotDePasse">Url::getMotDePasse()</a> in Url.php</div>
<div class="index-item-description">renvoie la partie mot de passe de la partie infoUtilisateur (partie après le premier &quot;:&quot;), , ou false si aucune partie infoUtilisateur n'est définie (i.e. l'URL ne contient pas de &quot;@&quot; en face du nom d'hôte) ou si la partie infoUtilisateur ne contient pas de &quot;:&quot;.</div>
</dd>
<dt class="field">
<span class="method-title">getOption</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="Framework/Url.html#methodgetOption">Url::getOption()</a> in Url.php</div>
<div class="index-item-description">Renvoie la valeur de l'option specifiée.</div>
</dd>
<dt class="field">
<span class="method-title">getPort</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="Framework/Url.html#methodgetPort">Url::getPort()</a> in Url.php</div>
<div class="index-item-description">Renvoie le numéro de port, ou false si aucun numéro de port n'est spécifié, i.e. le port par défaut doit utilisé.</div>
</dd>
<dt class="field">
<span class="method-title">getRequete</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="Framework/Url.html#methodgetRequete">Url::getRequete()</a> in Url.php</div>
<div class="index-item-description">renvoie la chaine de requête (requete string) (sans le premier &quot;?&quot;), ou false si &quot;?&quot; n'est pas présent dans l'url.</div>
</dd>
<dt class="field">
<span class="method-title">getSchema</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="Framework/Url.html#methodgetSchema">Url::getSchema()</a> in Url.php</div>
<div class="index-item-description">Retourne le schéma, c.a.d. &quot;http&quot; ou &quot;urn&quot;, ou false si aucun schéma n'est spécifié, i.e. l'url est une url relative</div>
</dd>
<dt class="field">
<span class="method-title">getTemps</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="Framework/Chronometre.html#methodgetTemps">Chronometre::getTemps()</a> in Chronometre.php</div>
<div class="index-item-description">Accesseurs :</div>
</dd>
<dt class="field">
<span class="method-title">getURL</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="Framework/Url.html#methodgetURL">Url::getURL()</a> in Url.php</div>
<div class="index-item-description">Renvoie un représentation sous forme de chaine de l'URL</div>
</dd>
<dt class="field">
<span class="method-title">getURLDemande</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="Framework/Url.html#methodgetURLDemande">Url::getURLDemande()</a> in Url.php</div>
<div class="index-item-description">Renvoie l'URL utilisée pour récupérer la requête en cours</div>
</dd>
<dt class="field">
<span class="method-title">getURLNormalisee</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="Framework/Url.html#methodgetURLNormalisee">Url::getURLNormalisee()</a> in Url.php</div>
<div class="index-item-description">Renvoie une représentation de cette URL sous forme de chaine normalisée. Utile pour la comparaison d'URLs</div>
</dd>
<dt class="field">
<span class="method-title">getUtilisateur</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="Framework/Url.html#methodgetUtilisateur">Url::getUtilisateur()</a> in Url.php</div>
<div class="index-item-description">renvoie la partie user de la partie infoUtilisateur (partie précédant le premier &quot;:&quot;), ou false si aucune partie infoUtilisateur n'est définie.</div>
</dd>
<dt class="field">
<span class="method-title">getVariablesRequete</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="Framework/Url.html#methodgetVariablesRequete">Url::getVariablesRequete()</a> in Url.php</div>
<div class="index-item-description">Renvoie la requete string sous forme d'un tableau de variables telles qu'elles apparaitraient dans le $_GET d'un script PHP</div>
</dd>
<dt class="field">
<span class="method-title">getVue</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="Framework/Controleur.html#methodgetVue">Controleur::getVue()</a> in Controleur.php</div>
<div class="index-item-description">Fonction prenant en paramètre le nom d'un squelette et un tableau associatif de données, en extrait les variables, charge le squelette et retourne le résultat des deux combinés.</div>
</dd>
</dl>
<a name="i"></a>
<div class="index-letter-section">
<div style="float: left" class="index-letter-title">i</div>
<div style="float: right"><a href="#top">top</a></div>
<div style="clear: both"></div>
</div>
<dl>
<dt class="field">
<span class="method-title">initialiserProtocole</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="Framework/Modele.html#methodinitialiserProtocole">Modele::initialiserProtocole()</a> in Modele.php</div>
<div class="index-item-description">initialise les constantes de classe à leur bonne valeur</div>
</dd>
</dl>
<a name="l"></a>
<div class="index-letter-section">
<div style="float: left" class="index-letter-title">l</div>
<div style="float: right"><a href="#top">top</a></div>
<div style="clear: both"></div>
</div>
<dl>
<dt class="field">
Log
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="Framework/Log.html">Log</a> in Log.php</div>
<div class="index-item-description">Classe permettant de logger des messages dans les fichier situés dans le dossier de log</div>
</dd>
<dt class="field">
<span class="include-title">Log.php</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="Framework/_Log.php.html">Log.php</a> in Log.php</div>
</dd>
</dl>
<a name="m"></a>
<div class="index-letter-section">
<div style="float: left" class="index-letter-title">m</div>
<div style="float: right"><a href="#top">top</a></div>
<div style="clear: both"></div>
</div>
<dl>
<dt class="field">
<span class="var-title">$mode</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="Framework/Debug.html#var$mode">Debug::$mode</a> in Debug.php</div>
<div class="index-item-description">mode de php (cli ou sapi)</div>
</dd>
<dt class="field">
Modele
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="Framework/Modele.html">Modele</a> in Modele.php</div>
<div class="index-item-description">Classe modèle, donc d'accés au données, elle ne devrait pas être appelée de l'extérieur.</div>
</dd>
<dt class="field">
<span class="include-title">Modele.php</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="Framework/_Modele.php.html">Modele.php</a> in Modele.php</div>
</dd>
</dl>
<a name="n"></a>
<div class="index-letter-section">
<div style="float: left" class="index-letter-title">n</div>
<div style="float: right"><a href="#top">top</a></div>
<div style="clear: both"></div>
</div>
<dl>
<dt class="field">
<span class="method-title">normaliser</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="Framework/Url.html#methodnormaliser">Url::normaliser()</a> in Url.php</div>
<div class="index-item-description">Renvoie une instance normalisée de Url</div>
</dd>
</dl>
<a name="o"></a>
<div class="index-letter-section">
<div style="float: left" class="index-letter-title">o</div>
<div style="float: right"><a href="#top">top</a></div>
<div style="clear: both"></div>
</div>
<dl>
<dt class="field">
OPTION_ENCODER_CLES
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="Framework/Url.html#constOPTION_ENCODER_CLES">Url::OPTION_ENCODER_CLES</a> in Url.php</div>
<div class="index-item-description">URL-encoder les clés des variables dans les requêtes. Par défaut à true.</div>
</dd>
<dt class="field">
OPTION_SEPARATEUR_ENTREE
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="Framework/Url.html#constOPTION_SEPARATEUR_ENTREE">Url::OPTION_SEPARATEUR_ENTREE</a> in Url.php</div>
<div class="index-item-description">Séparateurs de variables lors du parsing de la requête. Chaque caractère est considéré comme un séparateur. Par défaut, spécifié par le paramêtre arg_separator.input dans php.ini (par défaut &quot;&amp;&quot;).</div>
</dd>
<dt class="field">
OPTION_SEPARATEUR_SORTIE
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="Framework/Url.html#constOPTION_SEPARATEUR_SORTIE">Url::OPTION_SEPARATEUR_SORTIE</a> in Url.php</div>
<div class="index-item-description">Séparateur de variables lors de la génération de la requête. Par défaut, spécifié par le paramètre arg_separator.output dans php.ini (par défaut &quot;&amp;&quot;).</div>
</dd>
<dt class="field">
OPTION_STRICTE
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="Framework/Url.html#constOPTION_STRICTE">Url::OPTION_STRICTE</a> in Url.php</div>
<div class="index-item-description">Parsing strict dans resoudre() (voir RFC 3986, section 5.2.2). Par défaut à true.</div>
</dd>
<dt class="field">
OPTION_UTILISER_CROCHETS
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="Framework/Url.html#constOPTION_UTILISER_CROCHETS">Url::OPTION_UTILISER_CROCHETS</a> in Url.php</div>
<div class="index-item-description">Répresenter les tableaux dans les requêtes en utilisant la notation php []. Par défaut à true.</div>
</dd>
</dl>
<a name="p"></a>
<div class="index-letter-section">
<div style="float: left" class="index-letter-title">p</div>
<div style="float: right"><a href="#top">top</a></div>
<div style="clear: both"></div>
</div>
<dl>
<dt class="field">
<span class="method-title">printr</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="Framework/Debug.html#methodprintr">Debug::printr()</a> in Debug.php</div>
<div class="index-item-description">Equivalent de print_r</div>
</dd>
<dt class="field">
<span class="method-title">proteger</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="Framework/Modele.html#methodproteger">Modele::proteger()</a> in Modele.php</div>
<div class="index-item-description">protège une chaine de caractères avant l'insertion dans la base de données</div>
</dd>
<dt class="field">
<span class="const-title">PS</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="Framework/_autoload.inc.php.html#definePS">PS</a> in autoload.inc.php</div>
</dd>
</dl>
<a name="r"></a>
<div class="index-letter-section">
<div style="float: left" class="index-letter-title">r</div>
<div style="float: right"><a href="#top">top</a></div>
<div style="clear: both"></div>
</div>
<dl>
<dt class="field">
Registre
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="Framework/Registre.html">Registre</a> in Registre.php</div>
<div class="index-item-description">Classe registre, qui permet un accès à différentes variables à travers les autres classes.</div>
</dd>
<dt class="field">
<span class="include-title">Registre.php</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="Framework/_Registre.php.html">Registre.php</a> in Registre.php</div>
</dd>
<dt class="field">
<span class="method-title">requete</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="Framework/Modele.html#methodrequete">Modele::requete()</a> in Modele.php</div>
<div class="index-item-description">Fonction qui appelle la bonne fonction pour executer une requête suivant le type de bdd.</div>
</dd>
<dt class="field">
<span class="method-title">requeteTous</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="Framework/Modele.html#methodrequeteTous">Modele::requeteTous()</a> in Modele.php</div>
</dd>
<dt class="field">
<span class="method-title">requeteUn</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="Framework/Modele.html#methodrequeteUn">Modele::requeteUn()</a> in Modele.php</div>
</dd>
<dt class="field">
<span class="method-title">resoudre</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="Framework/Url.html#methodresoudre">Url::resoudre()</a> in Url.php</div>
<div class="index-item-description">Renvoie une instance de Url représentant une URL absolue relative à cette URL.</div>
</dd>
</dl>
<a name="s"></a>
<div class="index-letter-section">
<div style="float: left" class="index-letter-title">s</div>
<div style="float: right"><a href="#top">top</a></div>
<div style="clear: both"></div>
</div>
<dl>
<dt class="field">
<span class="method-title">set</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="Framework/Registre.html#methodset">Registre::set()</a> in Registre.php</div>
<div class="index-item-description">Ajoute un objet au tableau selon un intitulé donné</div>
</dd>
<dt class="field">
<span class="method-title">setAutorite</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="Framework/Url.html#methodsetAutorite">Url::setAutorite()</a> in Url.php</div>
</dd>
<dt class="field">
<span class="method-title">setChemin</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="Framework/Application.html#methodsetChemin">Application::setChemin()</a> in Application.php</div>
<div class="index-item-description">Modificateur pour le chemin de base</div>
</dd>
<dt class="field">
<span class="method-title">setChemin</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="Framework/Url.html#methodsetChemin">Url::setChemin()</a> in Url.php</div>
</dd>
<dt class="field">
<span class="method-title">setContexte</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="Framework/GestionnaireException.html#methodsetContexte">GestionnaireException::setContexte()</a> in GestionnaireException.php</div>
<div class="index-item-description">Definit si l'on veut afficher le contexte ou non</div>
</dd>
<dt class="field">
<span class="method-title">setFragment</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="Framework/Url.html#methodsetFragment">Url::setFragment()</a> in Url.php</div>
</dd>
<dt class="field">
<span class="method-title">setHote</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="Framework/Url.html#methodsetHote">Url::setHote()</a> in Url.php</div>
</dd>
<dt class="field">
<span class="method-title">setInfo</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="Framework/Application.html#methodsetInfo">Application::setInfo()</a> in Application.php</div>
<div class="index-item-description">Le tableau des informations sur l'application possède les clés suivantes :</div>
</dd>
<dt class="field">
<span class="method-title">setInfoUtilisateur</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="Framework/Url.html#methodsetInfoUtilisateur">Url::setInfoUtilisateur()</a> in Url.php</div>
<div class="index-item-description">Setteur pour la partie infoUtilisateur. Si deux argument sont passé, ils sont combinés dans la partie infoUtilisateur de cette manière username &quot;:&quot; password.</div>
</dd>
<dt class="field">
<span class="method-title">setOption</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="Framework/Url.html#methodsetOption">Url::setOption()</a> in Url.php</div>
<div class="index-item-description">Met à jour la valeur de l'option spécifiée.</div>
</dd>
<dt class="field">
<span class="method-title">setPort</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="Framework/Url.html#methodsetPort">Url::setPort()</a> in Url.php</div>
</dd>
<dt class="field">
<span class="method-title">setRequete</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="Framework/Url.html#methodsetRequete">Url::setRequete()</a> in Url.php</div>
</dd>
<dt class="field">
<span class="method-title">setSchema</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="Framework/Url.html#methodsetSchema">Url::setSchema()</a> in Url.php</div>
</dd>
<dt class="field">
<span class="method-title">setTemps</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="Framework/Chronometre.html#methodsetTemps">Chronometre::setTemps()</a> in Chronometre.php</div>
<div class="index-item-description">Setteur pour la variable temps</div>
</dd>
<dt class="field">
<span class="method-title">setVariableRequete</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="Framework/Url.html#methodsetVariableRequete">Url::setVariableRequete()</a> in Url.php</div>
</dd>
<dt class="field">
<span class="method-title">setVariablesRequete</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="Framework/Url.html#methodsetVariablesRequete">Url::setVariablesRequete()</a> in Url.php</div>
</dd>
<dt class="field">
SquelettePhp
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="Framework/SquelettePhp.html">SquelettePhp</a> in SquelettePhp.php</div>
<div class="index-item-description">Classe SquelettePhp, traitant les squelette Php utilisant la syntaxe courte php ou pas.</div>
</dd>
<dt class="field">
<span class="include-title">SquelettePhp.php</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="Framework/_SquelettePhp.php.html">SquelettePhp.php</a> in SquelettePhp.php</div>
</dd>
</dl>
<a name="u"></a>
<div class="index-letter-section">
<div style="float: left" class="index-letter-title">u</div>
<div style="float: right"><a href="#top">top</a></div>
<div style="clear: both"></div>
</div>
<dl>
<dt class="field">
<span class="method-title">unsetVariableRequete</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="Framework/Url.html#methodunsetVariableRequete">Url::unsetVariableRequete()</a> in Url.php</div>
</dd>
<dt class="field">
Url
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="Framework/Url.html">Url</a> in Url.php</div>
<div class="index-item-description">classe Url, gérant le découpage des paramètres, leurs modification etc...</div>
</dd>
<dt class="field">
<span class="include-title">Url.php</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="Framework/_Url.php.html">Url.php</a> in Url.php</div>
</dd>
</dl>
<a name="v"></a>
<div class="index-letter-section">
<div style="float: left" class="index-letter-title">v</div>
<div style="float: right"><a href="#top">top</a></div>
<div style="clear: both"></div>
</div>
<dl>
<dt class="field">
<span class="method-title">verifierOuvrirFichier</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="Framework/Log.html#methodverifierOuvrirFichier">Log::verifierOuvrirFichier()</a> in Log.php</div>
<div class="index-item-description">Vérifie la présence d'un fichier dans le tableau, ses droits d'écriture,</div>
</dd>
<dt class="field">
<span class="method-title">viderLog</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="Framework/Log.html#methodviderLog">Log::viderLog()</a> in Log.php</div>
<div class="index-item-description">Vide un fichier log indiqué</div>
</dd>
</dl>
 
<div class="index-letter-menu">
<a class="index-letter" href="elementindex_Framework.html#a">a</a>
<a class="index-letter" href="elementindex_Framework.html#c">c</a>
<a class="index-letter" href="elementindex_Framework.html#d">d</a>
<a class="index-letter" href="elementindex_Framework.html#e">e</a>
<a class="index-letter" href="elementindex_Framework.html#g">g</a>
<a class="index-letter" href="elementindex_Framework.html#i">i</a>
<a class="index-letter" href="elementindex_Framework.html#l">l</a>
<a class="index-letter" href="elementindex_Framework.html#m">m</a>
<a class="index-letter" href="elementindex_Framework.html#n">n</a>
<a class="index-letter" href="elementindex_Framework.html#o">o</a>
<a class="index-letter" href="elementindex_Framework.html#p">p</a>
<a class="index-letter" href="elementindex_Framework.html#r">r</a>
<a class="index-letter" href="elementindex_Framework.html#s">s</a>
<a class="index-letter" href="elementindex_Framework.html#u">u</a>
<a class="index-letter" href="elementindex_Framework.html#v">v</a>
<a class="index-letter" href="elementindex_Framework.html#_">_</a>
</div> </body>
</html>
/tags/v0.3-aleaume/doc/HTMLframesConverter/packages.html
New file
0,0 → 1,29
<?xml version="1.0" encoding="iso-8859-1"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<!-- template designed by Marco Von Ballmoos -->
<title></title>
<link rel="stylesheet" href="media/stylesheet.css" />
<link rel="stylesheet" href="media/banner.css" />
<meta http-equiv='Content-Type' content='text/html; charset=iso-8859-1'/>
</head>
<body>
<div class="banner">
<div class="banner-title">Framework</div>
<div class="banner-menu">
<form>
<table cellpadding="0" cellspacing="0" style="width: 100%">
<tr>
<td>
</td>
<td style="width: 2em">&nbsp;</td>
<td style="text-align: right">
</td>
</tr>
</table>
</form>
</div>
</div>
</body>
</html>
/tags/v0.3-aleaume/doc/.htaccess
New file
0,0 → 1,0
AddDefaultCharset UTF-8
/tags/v0.3-aleaume/doc/HTMLSmartyConverter/elementindex.html
New file
0,0 → 1,414
<html>
<head>
<title>Element Index</title>
<meta http-equiv='Content-Type' content='text/html; charset=UTF-8'/>
<link rel="stylesheet" type="text/css" href="media/style.css">
</head>
<body>
 
<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%">
<tr>
<td class="header_top"></td>
</tr>
<tr><td class="header_line"><img src="media/empty.png" width="1" height="1" border="0" alt="" /></td></tr>
<tr>
<td class="header_menu">
[ <a href="elementindex.html" class="menu">all elements</a> ]
</td>
</tr>
<tr><td class="header_line"><img src="media/empty.png" width="1" height="1" border="0" alt="" /></td></tr>
</table>
 
<table width="100%" border="0" cellpadding="0" cellspacing="0">
<tr valign="top">
<td width="200" class="menu">
<b>Packages:</b><br />
<a href="li_Framework.html">Framework</a><br />
<br /><br />
</td>
<td>
<table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top">
 
<a name="top"></a>
<h1>Index of all elements</h1>
[ <a href="elementindex.html#a">a</a> ]
[ <a href="elementindex.html#c">c</a> ]
[ <a href="elementindex.html#d">d</a> ]
[ <a href="elementindex.html#e">e</a> ]
[ <a href="elementindex.html#g">g</a> ]
[ <a href="elementindex.html#i">i</a> ]
[ <a href="elementindex.html#l">l</a> ]
[ <a href="elementindex.html#m">m</a> ]
[ <a href="elementindex.html#n">n</a> ]
[ <a href="elementindex.html#o">o</a> ]
[ <a href="elementindex.html#p">p</a> ]
[ <a href="elementindex.html#r">r</a> ]
[ <a href="elementindex.html#s">s</a> ]
[ <a href="elementindex.html#u">u</a> ]
[ <a href="elementindex.html#v">v</a> ]
[ <a href="elementindex.html#_">_</a> ]
 
<hr />
<a name="a"></a>
<div>
<h2>a</h2>
<dl>
<dt><b>afficherChrono</b></dt>
<dd>in file Chronometre.php, method <a href="Framework/Chronometre.html#methodafficherChrono">Chronometre::afficherChrono()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Méthode afficherChrono() - Permet d'afficher les temps d'éxécution de différentes parties d'un script.</dd>
<dt><b>ajouterEntree</b></dt>
<dd>in file Log.php, method <a href="Framework/Log.html#methodajouterEntree">Log::ajouterEntree()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Ajoute une entrée au log spécifié par le paramètre $nomFichier</dd>
<dt><b>analyser</b></dt>
<dd>in file SquelettePhp.php, method <a href="Framework/SquelettePhp.html#methodanalyser">SquelettePhp::analyser()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Fonction prenant en paramètre un chemin de fichier squelette et un tableau associatif de données, en extrait les variables, charge le squelette et retourne le résultat des deux combinés.</dd>
<dt><b>Application</b></dt>
<dd>in file Application.php, class <a href="Framework/Application.html">Application</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Classe fournissant des informations au Framework sur l'application.</dd>
<dt><b>Application.php</b></dt>
<dd>procedural page <a href="Framework/_Application.php.html">Application.php</a></dd>
<dt><b>autoload.inc.php</b></dt>
<dd>procedural page <a href="Framework/_autoload.inc.php.html">autoload.inc.php</a></dd>
<dt><b>autoloadAppliDefaut</b></dt>
<dd>in file autoload.inc.php, function <a href="Framework/_autoload.inc.php.html#functionautoloadAppliDefaut">autoloadAppliDefaut()</a></dd>
<dt><b>autoloadFw</b></dt>
<dd>in file autoload.inc.php, function <a href="Framework/_autoload.inc.php.html#functionautoloadFw">autoloadFw()</a></dd>
</dl>
</div>
<a href="elementindex.html#top">top</a><br>
<hr />
<a name="c"></a>
<div>
<h2>c</h2>
<dl>
<dt><b>charger</b></dt>
<dd>in file Config.php, method <a href="Framework/Config.html#methodcharger">Config::charger()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Charge un fichier ini dans le tableau des paramètres de l'appli</dd>
<dt><b>chargerModele</b></dt>
<dd>in file Controleur.php, method <a href="Framework/Controleur.html#methodchargerModele">Controleur::chargerModele()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Charge un modele donné et le rend disponible sous la forme $this-&gt;nom_modele</dd>
<dt><b>chargerVue</b></dt>
<dd>in file Controleur.php, method <a href="Framework/Controleur.html#methodchargerVue">Controleur::chargerVue()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Fonction prenant en paramètre le nom d'un squelette et un tableau associatif de données, en extrait les variables, charge le squelette et crée une variable de classe portant le nom du squelette contenant les deux combinés.</dd>
<dt><b>Chronometre</b></dt>
<dd>in file Chronometre.php, class <a href="Framework/Chronometre.html">Chronometre</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Classe Chronometre() - Permet de stocker et d'afficher les temps d'éxécution de script.</dd>
<dt><b>Chronometre.php</b></dt>
<dd>procedural page <a href="Framework/_Chronometre.php.html">Chronometre.php</a></dd>
<dt><b>Config</b></dt>
<dd>in file Config.php, class <a href="Framework/Config.html">Config</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Config permet de charger automatiquement les fichiers ini du Framework et de l'application.</dd>
<dt><b>Config.php</b></dt>
<dd>procedural page <a href="Framework/_Config.php.html">Config.php</a></dd>
<dt><b>Controleur</b></dt>
<dd>in file Controleur.php, class <a href="Framework/Controleur.html">Controleur</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Classe Controleur, coeur d'une application, c'est normalement la seule classe d'une application qui devrait être appelée de l'extérieur.</dd>
<dt><b>Controleur.php</b></dt>
<dd>procedural page <a href="Framework/_Controleur.php.html">Controleur.php</a></dd>
</dl>
</div>
<a href="elementindex.html#top">top</a><br>
<hr />
<a name="d"></a>
<div>
<h2>d</h2>
<dl>
<dt><b>Debug</b></dt>
<dd>in file Debug.php, class <a href="Framework/Debug.html">Debug</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Classe fournissant des fonctions de débogage équivalante à var_dump et print_r.</dd>
<dt><b>Debug.php</b></dt>
<dd>procedural page <a href="Framework/_Debug.php.html">Debug.php</a></dd>
<dt><b>detruire</b></dt>
<dd>in file Registre.php, method <a href="Framework/Registre.html#methoddetruire">Registre::detruire()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Détruit l'objet associé à l'intitulé, n'a pas d'effet si il n'y a pas d'objet associé</dd>
<dt><b>DS</b></dt>
<dd>in file autoload.inc.php, constant <a href="Framework/_autoload.inc.php.html#defineDS">DS</a></dd>
<dt><b>dump</b></dt>
<dd>in file Debug.php, method <a href="Framework/Debug.html#methoddump">Debug::dump()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Equivalent de var_dump</dd>
</dl>
</div>
<a href="elementindex.html#top">top</a><br>
<hr />
<a name="e"></a>
<div>
<h2>e</h2>
<dl>
<dt><b>etreAbsolue</b></dt>
<dd>in file Url.php, method <a href="Framework/Url.html#methodetreAbsolue">Url::etreAbsolue()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Renvoie vrai ou faux suivant que l'instance en cours représente une URL relative ou absolue.</dd>
<dt><b>existe</b></dt>
<dd>in file Registre.php, method <a href="Framework/Registre.html#methodexiste">Registre::existe()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Teste si un objet est présent sous un intitulé donné</dd>
<dt><b>existe</b></dt>
<dd>in file Config.php, method <a href="Framework/Config.html#methodexiste">Config::existe()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Vérifie si la valeur d'un paramètre existe</dd>
</dl>
</div>
<a href="elementindex.html#top">top</a><br>
<hr />
<a name="g"></a>
<div>
<h2>g</h2>
<dl>
<dt><b>gererErreur</b></dt>
<dd>in file GestionnaireException.php, method <a href="Framework/GestionnaireException.html#methodgererErreur">GestionnaireException::gererErreur()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Gère les erreurs en les convertissant en exceptions (remplace la fonction gestion d'erreurs native de php)</dd>
<dt><b>gererException</b></dt>
<dd>in file GestionnaireException.php, method <a href="Framework/GestionnaireException.html#methodgererException">GestionnaireException::gererException()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Fonction de gestion des exceptions, remplace le handler par défaut</dd>
<dt><b>GestionnaireException</b></dt>
<dd>in file GestionnaireException.php, class <a href="Framework/GestionnaireException.html">GestionnaireException</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Classe de gestion des exceptions.</dd>
<dt><b>GestionnaireException.php</b></dt>
<dd>procedural page <a href="Framework/_GestionnaireException.php.html">GestionnaireException.php</a></dd>
<dt><b>get</b></dt>
<dd>in file Registre.php, method <a href="Framework/Registre.html#methodget">Registre::get()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Renvoie l'objet associé à l'intitulé donné en paramètre</dd>
<dt><b>get</b></dt>
<dd>in file Config.php, method <a href="Framework/Config.html#methodget">Config::get()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Acesseur pour la valeur d'un paramètre</dd>
<dt><b>getAutorite</b></dt>
<dd>in file Url.php, method <a href="Framework/Url.html#methodgetAutorite">Url::getAutorite()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Renvoie la partie autorité, i.e. [ infoUtilisateur &quot;@&quot; ] hote [ &quot;:&quot; port ], ou false si celle-ci est absente.</dd>
<dt><b>getCanonique</b></dt>
<dd>in file Url.php, method <a href="Framework/Url.html#methodgetCanonique">Url::getCanonique()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Renvoie une instance de Url representant l'URL canonique du script PHP en cours d'éxécution</dd>
<dt><b>getChemin</b></dt>
<dd>in file Application.php, method <a href="Framework/Application.html#methodgetChemin">Application::getChemin()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;accesseur pour le chemin</dd>
<dt><b>getChemin</b></dt>
<dd>in file Url.php, method <a href="Framework/Url.html#methodgetChemin">Url::getChemin()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Renvoie la partie chemin (chemin) (éventuellement vide).</dd>
<dt><b>getContexte</b></dt>
<dd>in file GestionnaireException.php, method <a href="Framework/GestionnaireException.html#methodgetContexte">GestionnaireException::getContexte()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Renvoie le booleen définissant si l'on affiche le contexte ou non</dd>
<dt><b>getDemande</b></dt>
<dd>in file Url.php, method <a href="Framework/Url.html#methodgetDemande">Url::getDemande()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Renvoie une instance de Url representant l'URL utilisée pour récupérer la requête en cours</dd>
<dt><b>getExceptions</b></dt>
<dd>in file GestionnaireException.php, method <a href="Framework/GestionnaireException.html#methodgetExceptions">GestionnaireException::getExceptions()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Renvoie les exceptions au format (X)HTML</dd>
<dt><b>getFragment</b></dt>
<dd>in file Url.php, method <a href="Framework/Url.html#methodgetFragment">Url::getFragment()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Renvoie le nom du fragment, ou false si &quot;#&quot; n'est pas present dans l'URL.</dd>
<dt><b>getHote</b></dt>
<dd>in file Url.php, method <a href="Framework/Url.html#methodgetHote">Url::getHote()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Renvoie la partie hôte, ou false s'il n'y a pas de partie autorité, c.a.d.</dd>
<dt><b>getInfo</b></dt>
<dd>in file Application.php, method <a href="Framework/Application.html#methodgetInfo">Application::getInfo()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;accesseur pour le tableau d'infos</dd>
<dt><b>getInfoUtilisateur</b></dt>
<dd>in file Url.php, method <a href="Framework/Url.html#methodgetInfoUtilisateur">Url::getInfoUtilisateur()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Renvoie la partie userinfio, ou false si celle-ci n'existe pas, i.e. si la partie autorité ne contient pas de &quot;@&quot;</dd>
<dt><b>getInstance</b></dt>
<dd>in file Registre.php, method <a href="Framework/Registre.html#methodgetInstance">Registre::getInstance()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Fonction qui renvoie l'instance de classe en assurant son unicité, c'est l'unique méthode qui doit être</dd>
<dt><b>getInstance</b></dt>
<dd>in file GestionnaireException.php, method <a href="Framework/GestionnaireException.html#methodgetInstance">GestionnaireException::getInstance()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Fonction d'accès au singleton</dd>
<dt><b>getInstance</b></dt>
<dd>in file Log.php, method <a href="Framework/Log.html#methodgetInstance">Log::getInstance()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Fonction qui renvoie l'instance de classe en assurant son unicité, c'est l'unique méthode qui doit être</dd>
<dt><b>getMode</b></dt>
<dd>in file Debug.php, method <a href="Framework/Debug.html#methodgetMode">Debug::getMode()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Accesseur pour le mode</dd>
<dt><b>getModele</b></dt>
<dd>in file Controleur.php, method <a href="Framework/Controleur.html#methodgetModele">Controleur::getModele()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Retourne un modele donné</dd>
<dt><b>getMotDePasse</b></dt>
<dd>in file Url.php, method <a href="Framework/Url.html#methodgetMotDePasse">Url::getMotDePasse()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;renvoie la partie mot de passe de la partie infoUtilisateur (partie après le premier &quot;:&quot;), , ou false si aucune partie infoUtilisateur n'est définie (i.e. l'URL ne contient pas de &quot;@&quot; en face du nom d'hôte) ou si la partie infoUtilisateur ne contient pas de &quot;:&quot;.</dd>
<dt><b>getOption</b></dt>
<dd>in file Url.php, method <a href="Framework/Url.html#methodgetOption">Url::getOption()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Renvoie la valeur de l'option specifiée.</dd>
<dt><b>getPort</b></dt>
<dd>in file Url.php, method <a href="Framework/Url.html#methodgetPort">Url::getPort()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Renvoie le numéro de port, ou false si aucun numéro de port n'est spécifié, i.e. le port par défaut doit utilisé.</dd>
<dt><b>getRequete</b></dt>
<dd>in file Url.php, method <a href="Framework/Url.html#methodgetRequete">Url::getRequete()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;renvoie la chaine de requête (requete string) (sans le premier &quot;?&quot;), ou false si &quot;?&quot; n'est pas présent dans l'url.</dd>
<dt><b>getSchema</b></dt>
<dd>in file Url.php, method <a href="Framework/Url.html#methodgetSchema">Url::getSchema()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Retourne le schéma, c.a.d. &quot;http&quot; ou &quot;urn&quot;, ou false si aucun schéma n'est spécifié, i.e. l'url est une url relative</dd>
<dt><b>getTemps</b></dt>
<dd>in file Chronometre.php, method <a href="Framework/Chronometre.html#methodgetTemps">Chronometre::getTemps()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Accesseurs :</dd>
<dt><b>getURL</b></dt>
<dd>in file Url.php, method <a href="Framework/Url.html#methodgetURL">Url::getURL()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Renvoie un représentation sous forme de chaine de l'URL</dd>
<dt><b>getURLDemande</b></dt>
<dd>in file Url.php, method <a href="Framework/Url.html#methodgetURLDemande">Url::getURLDemande()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Renvoie l'URL utilisée pour récupérer la requête en cours</dd>
<dt><b>getURLNormalisee</b></dt>
<dd>in file Url.php, method <a href="Framework/Url.html#methodgetURLNormalisee">Url::getURLNormalisee()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Renvoie une représentation de cette URL sous forme de chaine normalisée. Utile pour la comparaison d'URLs</dd>
<dt><b>getUtilisateur</b></dt>
<dd>in file Url.php, method <a href="Framework/Url.html#methodgetUtilisateur">Url::getUtilisateur()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;renvoie la partie user de la partie infoUtilisateur (partie précédant le premier &quot;:&quot;), ou false si aucune partie infoUtilisateur n'est définie.</dd>
<dt><b>getVariablesRequete</b></dt>
<dd>in file Url.php, method <a href="Framework/Url.html#methodgetVariablesRequete">Url::getVariablesRequete()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Renvoie la requete string sous forme d'un tableau de variables telles qu'elles apparaitraient dans le $_GET d'un script PHP</dd>
<dt><b>getVue</b></dt>
<dd>in file Controleur.php, method <a href="Framework/Controleur.html#methodgetVue">Controleur::getVue()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Fonction prenant en paramètre le nom d'un squelette et un tableau associatif de données, en extrait les variables, charge le squelette et retourne le résultat des deux combinés.</dd>
</dl>
</div>
<a href="elementindex.html#top">top</a><br>
<hr />
<a name="i"></a>
<div>
<h2>i</h2>
<dl>
<dt><b>initialiserProtocole</b></dt>
<dd>in file Modele.php, method <a href="Framework/Modele.html#methodinitialiserProtocole">Modele::initialiserProtocole()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;initialise les constantes de classe à leur bonne valeur</dd>
</dl>
</div>
<a href="elementindex.html#top">top</a><br>
<hr />
<a name="l"></a>
<div>
<h2>l</h2>
<dl>
<dt><b>Log</b></dt>
<dd>in file Log.php, class <a href="Framework/Log.html">Log</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Classe permettant de logger des messages dans les fichier situés dans le dossier de log</dd>
<dt><b>Log.php</b></dt>
<dd>procedural page <a href="Framework/_Log.php.html">Log.php</a></dd>
</dl>
</div>
<a href="elementindex.html#top">top</a><br>
<hr />
<a name="m"></a>
<div>
<h2>m</h2>
<dl>
<dt><b>$mode</b></dt>
<dd>in file Debug.php, variable <a href="Framework/Debug.html#var$mode">Debug::$mode</a><br>&nbsp;&nbsp;&nbsp;&nbsp;mode de php (cli ou sapi)</dd>
<dt><b>Modele</b></dt>
<dd>in file Modele.php, class <a href="Framework/Modele.html">Modele</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Classe modèle, donc d'accés au données, elle ne devrait pas être appelée de l'extérieur.</dd>
<dt><b>Modele.php</b></dt>
<dd>procedural page <a href="Framework/_Modele.php.html">Modele.php</a></dd>
</dl>
</div>
<a href="elementindex.html#top">top</a><br>
<hr />
<a name="n"></a>
<div>
<h2>n</h2>
<dl>
<dt><b>normaliser</b></dt>
<dd>in file Url.php, method <a href="Framework/Url.html#methodnormaliser">Url::normaliser()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Renvoie une instance normalisée de Url</dd>
</dl>
</div>
<a href="elementindex.html#top">top</a><br>
<hr />
<a name="o"></a>
<div>
<h2>o</h2>
<dl>
<dt><b>OPTION_ENCODER_CLES</b></dt>
<dd>in file Url.php, class constant <a href="Framework/Url.html#constOPTION_ENCODER_CLES">Url::OPTION_ENCODER_CLES</a><br>&nbsp;&nbsp;&nbsp;&nbsp;URL-encoder les clés des variables dans les requêtes. Par défaut à true.</dd>
<dt><b>OPTION_SEPARATEUR_ENTREE</b></dt>
<dd>in file Url.php, class constant <a href="Framework/Url.html#constOPTION_SEPARATEUR_ENTREE">Url::OPTION_SEPARATEUR_ENTREE</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Séparateurs de variables lors du parsing de la requête. Chaque caractère est considéré comme un séparateur. Par défaut, spécifié par le paramêtre arg_separator.input dans php.ini (par défaut &quot;&amp;&quot;).</dd>
<dt><b>OPTION_SEPARATEUR_SORTIE</b></dt>
<dd>in file Url.php, class constant <a href="Framework/Url.html#constOPTION_SEPARATEUR_SORTIE">Url::OPTION_SEPARATEUR_SORTIE</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Séparateur de variables lors de la génération de la requête. Par défaut, spécifié par le paramètre arg_separator.output dans php.ini (par défaut &quot;&amp;&quot;).</dd>
<dt><b>OPTION_STRICTE</b></dt>
<dd>in file Url.php, class constant <a href="Framework/Url.html#constOPTION_STRICTE">Url::OPTION_STRICTE</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Parsing strict dans resoudre() (voir RFC 3986, section 5.2.2). Par défaut à true.</dd>
<dt><b>OPTION_UTILISER_CROCHETS</b></dt>
<dd>in file Url.php, class constant <a href="Framework/Url.html#constOPTION_UTILISER_CROCHETS">Url::OPTION_UTILISER_CROCHETS</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Répresenter les tableaux dans les requêtes en utilisant la notation php []. Par défaut à true.</dd>
</dl>
</div>
<a href="elementindex.html#top">top</a><br>
<hr />
<a name="p"></a>
<div>
<h2>p</h2>
<dl>
<dt><b>printr</b></dt>
<dd>in file Debug.php, method <a href="Framework/Debug.html#methodprintr">Debug::printr()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Equivalent de print_r</dd>
<dt><b>proteger</b></dt>
<dd>in file Modele.php, method <a href="Framework/Modele.html#methodproteger">Modele::proteger()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;protège une chaine de caractères avant l'insertion dans la base de données</dd>
<dt><b>PS</b></dt>
<dd>in file autoload.inc.php, constant <a href="Framework/_autoload.inc.php.html#definePS">PS</a></dd>
</dl>
</div>
<a href="elementindex.html#top">top</a><br>
<hr />
<a name="r"></a>
<div>
<h2>r</h2>
<dl>
<dt><b>Registre</b></dt>
<dd>in file Registre.php, class <a href="Framework/Registre.html">Registre</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Classe registre, qui permet un accès à différentes variables à travers les autres classes.</dd>
<dt><b>Registre.php</b></dt>
<dd>procedural page <a href="Framework/_Registre.php.html">Registre.php</a></dd>
<dt><b>requete</b></dt>
<dd>in file Modele.php, method <a href="Framework/Modele.html#methodrequete">Modele::requete()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Fonction qui appelle la bonne fonction pour executer une requête suivant le type de bdd.</dd>
<dt><b>requeteTous</b></dt>
<dd>in file Modele.php, method <a href="Framework/Modele.html#methodrequeteTous">Modele::requeteTous()</a></dd>
<dt><b>requeteUn</b></dt>
<dd>in file Modele.php, method <a href="Framework/Modele.html#methodrequeteUn">Modele::requeteUn()</a></dd>
<dt><b>resoudre</b></dt>
<dd>in file Url.php, method <a href="Framework/Url.html#methodresoudre">Url::resoudre()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Renvoie une instance de Url représentant une URL absolue relative à cette URL.</dd>
</dl>
</div>
<a href="elementindex.html#top">top</a><br>
<hr />
<a name="s"></a>
<div>
<h2>s</h2>
<dl>
<dt><b>set</b></dt>
<dd>in file Registre.php, method <a href="Framework/Registre.html#methodset">Registre::set()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Ajoute un objet au tableau selon un intitulé donné</dd>
<dt><b>setAutorite</b></dt>
<dd>in file Url.php, method <a href="Framework/Url.html#methodsetAutorite">Url::setAutorite()</a></dd>
<dt><b>setChemin</b></dt>
<dd>in file Application.php, method <a href="Framework/Application.html#methodsetChemin">Application::setChemin()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Modificateur pour le chemin de base</dd>
<dt><b>setChemin</b></dt>
<dd>in file Url.php, method <a href="Framework/Url.html#methodsetChemin">Url::setChemin()</a></dd>
<dt><b>setContexte</b></dt>
<dd>in file GestionnaireException.php, method <a href="Framework/GestionnaireException.html#methodsetContexte">GestionnaireException::setContexte()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Definit si l'on veut afficher le contexte ou non</dd>
<dt><b>setFragment</b></dt>
<dd>in file Url.php, method <a href="Framework/Url.html#methodsetFragment">Url::setFragment()</a></dd>
<dt><b>setHote</b></dt>
<dd>in file Url.php, method <a href="Framework/Url.html#methodsetHote">Url::setHote()</a></dd>
<dt><b>setInfo</b></dt>
<dd>in file Application.php, method <a href="Framework/Application.html#methodsetInfo">Application::setInfo()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Le tableau des informations sur l'application possède les clés suivantes :</dd>
<dt><b>setInfoUtilisateur</b></dt>
<dd>in file Url.php, method <a href="Framework/Url.html#methodsetInfoUtilisateur">Url::setInfoUtilisateur()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Setteur pour la partie infoUtilisateur. Si deux argument sont passé, ils sont combinés dans la partie infoUtilisateur de cette manière username &quot;:&quot; password.</dd>
<dt><b>setOption</b></dt>
<dd>in file Url.php, method <a href="Framework/Url.html#methodsetOption">Url::setOption()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Met à jour la valeur de l'option spécifiée.</dd>
<dt><b>setPort</b></dt>
<dd>in file Url.php, method <a href="Framework/Url.html#methodsetPort">Url::setPort()</a></dd>
<dt><b>setRequete</b></dt>
<dd>in file Url.php, method <a href="Framework/Url.html#methodsetRequete">Url::setRequete()</a></dd>
<dt><b>setSchema</b></dt>
<dd>in file Url.php, method <a href="Framework/Url.html#methodsetSchema">Url::setSchema()</a></dd>
<dt><b>setTemps</b></dt>
<dd>in file Chronometre.php, method <a href="Framework/Chronometre.html#methodsetTemps">Chronometre::setTemps()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Setteur pour la variable temps</dd>
<dt><b>setVariableRequete</b></dt>
<dd>in file Url.php, method <a href="Framework/Url.html#methodsetVariableRequete">Url::setVariableRequete()</a></dd>
<dt><b>setVariablesRequete</b></dt>
<dd>in file Url.php, method <a href="Framework/Url.html#methodsetVariablesRequete">Url::setVariablesRequete()</a></dd>
<dt><b>SquelettePhp</b></dt>
<dd>in file SquelettePhp.php, class <a href="Framework/SquelettePhp.html">SquelettePhp</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Classe SquelettePhp, traitant les squelette Php utilisant la syntaxe courte php ou pas.</dd>
<dt><b>SquelettePhp.php</b></dt>
<dd>procedural page <a href="Framework/_SquelettePhp.php.html">SquelettePhp.php</a></dd>
</dl>
</div>
<a href="elementindex.html#top">top</a><br>
<hr />
<a name="u"></a>
<div>
<h2>u</h2>
<dl>
<dt><b>unsetVariableRequete</b></dt>
<dd>in file Url.php, method <a href="Framework/Url.html#methodunsetVariableRequete">Url::unsetVariableRequete()</a></dd>
<dt><b>Url</b></dt>
<dd>in file Url.php, class <a href="Framework/Url.html">Url</a><br>&nbsp;&nbsp;&nbsp;&nbsp;classe Url, gérant le découpage des paramètres, leurs modification etc...</dd>
<dt><b>Url.php</b></dt>
<dd>procedural page <a href="Framework/_Url.php.html">Url.php</a></dd>
</dl>
</div>
<a href="elementindex.html#top">top</a><br>
<hr />
<a name="v"></a>
<div>
<h2>v</h2>
<dl>
<dt><b>verifierOuvrirFichier</b></dt>
<dd>in file Log.php, method <a href="Framework/Log.html#methodverifierOuvrirFichier">Log::verifierOuvrirFichier()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Vérifie la présence d'un fichier dans le tableau, ses droits d'écriture,</dd>
<dt><b>viderLog</b></dt>
<dd>in file Log.php, method <a href="Framework/Log.html#methodviderLog">Log::viderLog()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Vide un fichier log indiqué</dd>
</dl>
</div>
<a href="elementindex.html#top">top</a><br>
<hr />
<a name="_"></a>
<div>
<h2>_</h2>
<dl>
<dt><b>__construct</b></dt>
<dd>in file Chronometre.php, method <a href="Framework/Chronometre.html#method__construct">Chronometre::__construct()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Constructeur : *</dd>
<dt><b>__construct</b></dt>
<dd>in file Modele.php, method <a href="Framework/Modele.html#method__construct">Modele::__construct()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Constructeur par défaut, appelé à l'initialisation.</dd>
<dt><b>__construct</b></dt>
<dd>in file Url.php, method <a href="Framework/Url.html#method__construct">Url::__construct()</a></dd>
<dt><b>__construct</b></dt>
<dd>in file GestionnaireException.php, method <a href="Framework/GestionnaireException.html#method__construct">GestionnaireException::__construct()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Constructeur avec paramètres optionnel</dd>
<dt><b>__construct</b></dt>
<dd>in file Controleur.php, method <a href="Framework/Controleur.html#method__construct">Controleur::__construct()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Constructeur par défaut</dd>
<dt><b>__destruct</b></dt>
<dd>in file Modele.php, method <a href="Framework/Modele.html#method__destruct">Modele::__destruct()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Destructeur de classe, se contente de fermer explicitement la connexion</dd>
<dt><b>__destruct</b></dt>
<dd>in file Log.php, method <a href="Framework/Log.html#method__destruct">Log::__destruct()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;destructeur de classe, ferme les descripteurs ouverts</dd>
<dt><b>__destruct</b></dt>
<dd>in file GestionnaireException.php, method <a href="Framework/GestionnaireException.html#method__destruct">GestionnaireException::__destruct()</a></dd>
<dt><b>__toString</b></dt>
<dd>in file Url.php, method <a href="Framework/Url.html#method__toString">Url::__toString()</a></dd>
</dl>
</div>
<a href="elementindex.html#top">top</a><br>
<div class="credit">
<hr />
Documentation generated on Thu, 04 Mar 2010 19:27:28 +0100 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.3</a>
</div>
</td></tr></table>
</td>
</tr>
</table>
 
</body>
</html>
/tags/v0.3-aleaume/doc/HTMLSmartyConverter/li_Framework.html
New file
0,0 → 1,93
<html>
<head>
<title>Documentation</title>
<meta http-equiv='Content-Type' content='text/html; charset=UTF-8'/>
<link rel="stylesheet" type="text/css" href="media/style.css">
</head>
<body>
 
<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%">
<tr>
<td class="header_top">Framework</td>
</tr>
<tr><td class="header_line"><img src="media/empty.png" width="1" height="1" border="0" alt="" /></td></tr>
<tr>
<td class="header_menu">
[ <a href="classtrees_Framework.html" class="menu">class tree: Framework</a> ]
[ <a href="elementindex_Framework.html" class="menu">index: Framework</a> ]
[ <a href="elementindex.html" class="menu">all elements</a> ]
</td>
</tr>
<tr><td class="header_line"><img src="media/empty.png" width="1" height="1" border="0" alt="" /></td></tr>
</table>
 
<table width="100%" border="0" cellpadding="0" cellspacing="0">
<tr valign="top">
<td width="200" class="menu">
<b>Packages:</b><br />
<a href="li_Framework.html">Framework</a><br />
<br /><br />
<b>Files:</b><br />
<div class="package">
<a href="Framework/_Application.php.html"> Application.php
</a><br>
<a href="Framework/_autoload.inc.php.html"> autoload.inc.php
</a><br>
<a href="Framework/_Chronometre.php.html"> Chronometre.php
</a><br>
<a href="Framework/_Config.php.html"> Config.php
</a><br>
<a href="Framework/_Controleur.php.html"> Controleur.php
</a><br>
<a href="Framework/_Debug.php.html"> Debug.php
</a><br>
<a href="Framework/_GestionnaireException.php.html"> GestionnaireException.php
</a><br>
<a href="Framework/_Log.php.html"> Log.php
</a><br>
<a href="Framework/_Modele.php.html"> Modele.php
</a><br>
<a href="Framework/_Registre.php.html"> Registre.php
</a><br>
<a href="Framework/_SquelettePhp.php.html"> SquelettePhp.php
</a><br>
<a href="Framework/_Url.php.html"> Url.php
</a><br>
</div><br />
<b>Classes:</b><br />
<div class="package">
<a href="Framework/Application.html">Application</a><br />
<a href="Framework/Chronometre.html">Chronometre</a><br />
<a href="Framework/Config.html">Config</a><br />
<a href="Framework/Controleur.html">Controleur</a><br />
<a href="Framework/Debug.html">Debug</a><br />
<a href="Framework/GestionnaireException.html">GestionnaireException</a><br />
<a href="Framework/Log.html">Log</a><br />
<a href="Framework/Modele.html">Modele</a><br />
<a href="Framework/Registre.html">Registre</a><br />
<a href="Framework/SquelettePhp.html">SquelettePhp</a><br />
<a href="Framework/Url.html">Url</a><br />
</div>
</td>
<td>
<table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top">
 
<div align="center"><h1>Documentation</h1></div>
<b>Welcome to Framework!</b><br />
<br />
This documentation was generated by <a href="http://www.phpdoc.org">phpDocumentor v1.4.3</a><br />
<div class="credit">
<hr />
Documentation generated on Thu, 04 Mar 2010 19:27:28 +0100 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.3</a>
</div>
</td></tr></table>
</td>
</tr>
</table>
 
</body>
</html>
/tags/v0.3-aleaume/doc/HTMLSmartyConverter/classtrees_Framework.html
New file
0,0 → 1,102
<html>
<head>
<title>Class Trees for Package Framework</title>
<meta http-equiv='Content-Type' content='text/html; charset=UTF-8'/>
<link rel="stylesheet" type="text/css" href="media/style.css">
</head>
<body>
 
<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%">
<tr>
<td class="header_top">Framework</td>
</tr>
<tr><td class="header_line"><img src="media/empty.png" width="1" height="1" border="0" alt="" /></td></tr>
<tr>
<td class="header_menu">
[ <a href="classtrees_Framework.html" class="menu">class tree: Framework</a> ]
[ <a href="elementindex_Framework.html" class="menu">index: Framework</a> ]
[ <a href="elementindex.html" class="menu">all elements</a> ]
</td>
</tr>
<tr><td class="header_line"><img src="media/empty.png" width="1" height="1" border="0" alt="" /></td></tr>
</table>
 
<table width="100%" border="0" cellpadding="0" cellspacing="0">
<tr valign="top">
<td width="200" class="menu">
<b>Packages:</b><br />
<a href="li_Framework.html">Framework</a><br />
<br /><br />
</td>
<td>
<table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top">
 
<h1>Class Trees for Package Framework</h1>
<hr />
<div class="classtree">Root class Application</div><br />
<ul>
<li><a href="Framework/Application.html">Application</a></li></ul>
 
<hr />
<div class="classtree">Root class Chronometre</div><br />
<ul>
<li><a href="Framework/Chronometre.html">Chronometre</a></li></ul>
 
<hr />
<div class="classtree">Root class Config</div><br />
<ul>
<li><a href="Framework/Config.html">Config</a></li></ul>
 
<hr />
<div class="classtree">Root class Controleur</div><br />
<ul>
<li><a href="Framework/Controleur.html">Controleur</a></li></ul>
 
<hr />
<div class="classtree">Root class Debug</div><br />
<ul>
<li><a href="Framework/Debug.html">Debug</a></li></ul>
 
<hr />
<div class="classtree">Root class GestionnaireException</div><br />
<ul>
<li><a href="Framework/GestionnaireException.html">GestionnaireException</a></li></ul>
 
<hr />
<div class="classtree">Root class Log</div><br />
<ul>
<li><a href="Framework/Log.html">Log</a></li></ul>
 
<hr />
<div class="classtree">Root class Modele</div><br />
<ul>
<li><a href="Framework/Modele.html">Modele</a></li></ul>
 
<hr />
<div class="classtree">Root class Registre</div><br />
<ul>
<li><a href="Framework/Registre.html">Registre</a></li></ul>
 
<hr />
<div class="classtree">Root class SquelettePhp</div><br />
<ul>
<li><a href="Framework/SquelettePhp.html">SquelettePhp</a></li></ul>
 
<hr />
<div class="classtree">Root class Url</div><br />
<ul>
<li><a href="Framework/Url.html">Url</a></li></ul>
 
<div class="credit">
<hr />
Documentation generated on Thu, 04 Mar 2010 19:27:28 +0100 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.3</a>
</div>
</td></tr></table>
</td>
</tr>
</table>
 
</body>
</html>
/tags/v0.3-aleaume/doc/HTMLSmartyConverter/index.html
New file
0,0 → 1,93
<html>
<head>
<title>Documentation</title>
<meta http-equiv='Content-Type' content='text/html; charset=UTF-8'/>
<link rel="stylesheet" type="text/css" href="media/style.css">
</head>
<body>
 
<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%">
<tr>
<td class="header_top">Framework</td>
</tr>
<tr><td class="header_line"><img src="media/empty.png" width="1" height="1" border="0" alt="" /></td></tr>
<tr>
<td class="header_menu">
[ <a href="classtrees_Framework.html" class="menu">class tree: Framework</a> ]
[ <a href="elementindex_Framework.html" class="menu">index: Framework</a> ]
[ <a href="elementindex.html" class="menu">all elements</a> ]
</td>
</tr>
<tr><td class="header_line"><img src="media/empty.png" width="1" height="1" border="0" alt="" /></td></tr>
</table>
 
<table width="100%" border="0" cellpadding="0" cellspacing="0">
<tr valign="top">
<td width="200" class="menu">
<b>Packages:</b><br />
<a href="li_Framework.html">Framework</a><br />
<br /><br />
<b>Files:</b><br />
<div class="package">
<a href="Framework/_Application.php.html"> Application.php
</a><br>
<a href="Framework/_autoload.inc.php.html"> autoload.inc.php
</a><br>
<a href="Framework/_Chronometre.php.html"> Chronometre.php
</a><br>
<a href="Framework/_Config.php.html"> Config.php
</a><br>
<a href="Framework/_Controleur.php.html"> Controleur.php
</a><br>
<a href="Framework/_Debug.php.html"> Debug.php
</a><br>
<a href="Framework/_GestionnaireException.php.html"> GestionnaireException.php
</a><br>
<a href="Framework/_Log.php.html"> Log.php
</a><br>
<a href="Framework/_Modele.php.html"> Modele.php
</a><br>
<a href="Framework/_Registre.php.html"> Registre.php
</a><br>
<a href="Framework/_SquelettePhp.php.html"> SquelettePhp.php
</a><br>
<a href="Framework/_Url.php.html"> Url.php
</a><br>
</div><br />
<b>Classes:</b><br />
<div class="package">
<a href="Framework/Application.html">Application</a><br />
<a href="Framework/Chronometre.html">Chronometre</a><br />
<a href="Framework/Config.html">Config</a><br />
<a href="Framework/Controleur.html">Controleur</a><br />
<a href="Framework/Debug.html">Debug</a><br />
<a href="Framework/GestionnaireException.html">GestionnaireException</a><br />
<a href="Framework/Log.html">Log</a><br />
<a href="Framework/Modele.html">Modele</a><br />
<a href="Framework/Registre.html">Registre</a><br />
<a href="Framework/SquelettePhp.html">SquelettePhp</a><br />
<a href="Framework/Url.html">Url</a><br />
</div>
</td>
<td>
<table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top">
 
<div align="center"><h1>Documentation</h1></div>
<b>Welcome to Framework!</b><br />
<br />
This documentation was generated by <a href="http://www.phpdoc.org">phpDocumentor v1.4.3</a><br />
<div class="credit">
<hr />
Documentation generated on Thu, 04 Mar 2010 19:27:28 +0100 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.3</a>
</div>
</td></tr></table>
</td>
</tr>
</table>
 
</body>
</html>
/tags/v0.3-aleaume/doc/HTMLSmartyConverter/Framework/Log.html
New file
0,0 → 1,367
<html>
<head>
<title>Docs For Class Log</title>
<meta http-equiv='Content-Type' content='text/html; charset=UTF-8'/>
<link rel="stylesheet" type="text/css" href="../media/style.css">
</head>
<body>
 
<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%">
<tr>
<td class="header_top">Framework</td>
</tr>
<tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr>
<tr>
<td class="header_menu">
[ <a href="../classtrees_Framework.html" class="menu">class tree: Framework</a> ]
[ <a href="../elementindex_Framework.html" class="menu">index: Framework</a> ]
[ <a href="../elementindex.html" class="menu">all elements</a> ]
</td>
</tr>
<tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr>
</table>
 
<table width="100%" border="0" cellpadding="0" cellspacing="0">
<tr valign="top">
<td width="200" class="menu">
<b>Packages:</b><br />
<a href="../li_Framework.html">Framework</a><br />
<br /><br />
<b>Files:</b><br />
<div class="package">
<a href="../Framework/_Application.php.html"> Application.php
</a><br>
<a href="../Framework/_autoload.inc.php.html"> autoload.inc.php
</a><br>
<a href="../Framework/_Chronometre.php.html"> Chronometre.php
</a><br>
<a href="../Framework/_Config.php.html"> Config.php
</a><br>
<a href="../Framework/_Controleur.php.html"> Controleur.php
</a><br>
<a href="../Framework/_Debug.php.html"> Debug.php
</a><br>
<a href="../Framework/_GestionnaireException.php.html"> GestionnaireException.php
</a><br>
<a href="../Framework/_Log.php.html"> Log.php
</a><br>
<a href="../Framework/_Modele.php.html"> Modele.php
</a><br>
<a href="../Framework/_Registre.php.html"> Registre.php
</a><br>
<a href="../Framework/_SquelettePhp.php.html"> SquelettePhp.php
</a><br>
<a href="../Framework/_Url.php.html"> Url.php
</a><br>
</div><br />
<b>Classes:</b><br />
<div class="package">
<a href="../Framework/Application.html">Application</a><br />
<a href="../Framework/Chronometre.html">Chronometre</a><br />
<a href="../Framework/Config.html">Config</a><br />
<a href="../Framework/Controleur.html">Controleur</a><br />
<a href="../Framework/Debug.html">Debug</a><br />
<a href="../Framework/GestionnaireException.html">GestionnaireException</a><br />
<a href="../Framework/Log.html">Log</a><br />
<a href="../Framework/Modele.html">Modele</a><br />
<a href="../Framework/Registre.html">Registre</a><br />
<a href="../Framework/SquelettePhp.html">SquelettePhp</a><br />
<a href="../Framework/Url.html">Url</a><br />
</div>
</td>
<td>
<table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top">
 
<h1>Class: Log</h1>
Source Location: /Log.php<br /><br />
 
 
<table width="100%" border="0">
<tr><td valign="top">
 
<h3><a href="#class_details">Class Overview</a></h3>
<pre></pre><br />
<div class="description">Classe permettant de logger des messages dans les fichier situés dans le dossier de log</div><br /><br />
<h4>Author(s):</h4>
<ul>
<li>aurelien &lt;<a href="mailto:aurelien@tela-botanica.org">aurelien@tela-botanica.org</a>&gt;</li>
</ul>
 
 
 
 
<h4>Version:</h4>
<ul>
<li>SVN: &lt;svn_id&gt;</li>
</ul>
 
<h4>Copyright:</h4>
<ul>
<li>2009 Tela-Botanica</li>
</ul>
</td>
 
 
 
<td valign="top">
<h3><a href="#class_methods">Methods</a></h3>
<ul>
<li><a href="../Framework/Log.html#method__destruct">__destruct</a></li>
<li><a href="../Framework/Log.html#methodajouterEntree">ajouterEntree</a></li>
<li><a href="../Framework/Log.html#methodgetInstance">getInstance</a></li>
<li><a href="../Framework/Log.html#methodverifierOuvrirFichier">verifierOuvrirFichier</a></li>
<li><a href="../Framework/Log.html#methodviderLog">viderLog</a></li>
</ul>
</td>
 
</tr></table>
<hr />
 
<table width="100%" border="0"><tr>
 
 
 
 
 
 
</tr></table>
<hr />
 
<a name="class_details"></a>
<h3>Class Details</h3>
<div class="tags">
[line <a href="../__filesource/fsource_Framework__Log.php.html#a17">17</a>]<br />
Classe permettant de logger des messages dans les fichier situés dans le dossier de log<br /><br /><p>PHP Version 5</p><br /><br /><br />
<h4>Tags:</h4>
<div class="tags">
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td><b>author:</b>&nbsp;&nbsp;</td><td>aurelien &lt;<a href="mailto:aurelien@tela-botanica.org">aurelien@tela-botanica.org</a>&gt;</td>
</tr>
<tr>
<td><b>version:</b>&nbsp;&nbsp;</td><td>SVN: &lt;svn_id&gt;</td>
</tr>
<tr>
<td><b>copyright:</b>&nbsp;&nbsp;</td><td>2009 Tela-Botanica</td>
</tr>
<tr>
<td><b>link:</b>&nbsp;&nbsp;</td><td>/doc/framework/</td>
</tr>
<tr>
<td><b>license:</b>&nbsp;&nbsp;</td><td><a href="http://www.cecill.info/licences/Licence_CeCILL_V2-fr.txt">Licence CECILL</a></td>
</tr>
</table>
</div>
</div><br /><br />
<div class="top">[ <a href="#top">Top</a> ]</div><br />
 
 
<hr />
<a name="class_methods"></a>
<h3>Class Methods</h3>
<div class="tags">
<hr />
<a name="methodajouterEntree"></a>
<h3>static method ajouterEntree <span class="smalllinenumber">[line <a href="../__filesource/fsource_Framework__Log.php.html#a95">95</a>]</span></h3>
<div class="function">
<table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border">
<table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code">
<code>static void ajouterEntree(
string
$nomFichier,
$entree, [
$mode = 'a+'])</code>
</td></tr></table>
</td></tr></table><br />
Ajoute une entrée au log spécifié par le paramètre $nomFichier<br /><br /><br /><br />
<h4>Tags:</h4>
<div class="tags">
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td><b>access:</b>&nbsp;&nbsp;</td><td>public</td>
</tr>
</table>
</div>
<br /><br />
 
<h4>Parameters:</h4>
<div class="tags">
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td class="type">string&nbsp;&nbsp;</td>
<td><b>$nomFichier</b>&nbsp;&nbsp;</td>
<td>le nom du fichier dans lequel écrire</td>
</tr>
<tr>
<td class="type">&nbsp;&nbsp;</td>
<td><b>$entree</b>&nbsp;&nbsp;</td>
<td></td>
</tr>
<tr>
<td class="type">&nbsp;&nbsp;</td>
<td><b>$mode</b>&nbsp;&nbsp;</td>
<td></td>
</tr>
</table>
</div><br />
<div class="top">[ <a href="#top">Top</a> ]</div>
</div>
<hr />
<a name="methodgetInstance"></a>
<h3>static method getInstance <span class="smalllinenumber">[line <a href="../__filesource/fsource_Framework__Log.php.html#a83">83</a>]</span></h3>
<div class="function">
<table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border">
<table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code">
<code>static <a href="../Framework/Log.html">Log</a> getInstance(
)</code>
</td></tr></table>
</td></tr></table><br />
Fonction qui renvoie l'instance de classe en assurant son unicité, c'est l'unique méthode qui doit être<br /><br /><p>utilisée pour récupérer l'objet Registre</p><br /><br /><br />
<h4>Tags:</h4>
<div class="tags">
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td><b>return:</b>&nbsp;&nbsp;</td><td>le gestionnaire de log en cours</td>
</tr>
<tr>
<td><b>access:</b>&nbsp;&nbsp;</td><td>public</td>
</tr>
</table>
</div>
<br /><br />
 
<div class="top">[ <a href="#top">Top</a> ]</div>
</div>
<hr />
<a name="methodverifierOuvrirFichier"></a>
<h3>static method verifierOuvrirFichier <span class="smalllinenumber">[line <a href="../__filesource/fsource_Framework__Log.php.html#a126">126</a>]</span></h3>
<div class="function">
<table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border">
<table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code">
<code>static boolean verifierOuvrirFichier(
string
$nomFichier,
$mode)</code>
</td></tr></table>
</td></tr></table><br />
Vérifie la présence d'un fichier dans le tableau, ses droits d'écriture,<br /><br /><p>l'ouvre si nécessaire</p><br /><br /><br />
<h4>Tags:</h4>
<div class="tags">
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td><b>return:</b>&nbsp;&nbsp;</td><td>true si le fichier est ouvert ou maintenant accessible, false sinon</td>
</tr>
<tr>
<td><b>access:</b>&nbsp;&nbsp;</td><td>public</td>
</tr>
</table>
</div>
<br /><br />
 
<h4>Parameters:</h4>
<div class="tags">
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td class="type">string&nbsp;&nbsp;</td>
<td><b>$nomFichier</b>&nbsp;&nbsp;</td>
<td>le nom du fichier dont on doit vérifier la présence</td>
</tr>
<tr>
<td class="type">&nbsp;&nbsp;</td>
<td><b>$mode</b>&nbsp;&nbsp;</td>
<td></td>
</tr>
</table>
</div><br />
<div class="top">[ <a href="#top">Top</a> ]</div>
</div>
<hr />
<a name="methodviderLog"></a>
<h3>static method viderLog <span class="smalllinenumber">[line <a href="../__filesource/fsource_Framework__Log.php.html#a116">116</a>]</span></h3>
<div class="function">
<table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border">
<table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code">
<code>static void viderLog(
string
$nomFichier)</code>
</td></tr></table>
</td></tr></table><br />
Vide un fichier log indiqué<br /><br /><br /><br />
<h4>Tags:</h4>
<div class="tags">
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td><b>access:</b>&nbsp;&nbsp;</td><td>public</td>
</tr>
</table>
</div>
<br /><br />
 
<h4>Parameters:</h4>
<div class="tags">
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td class="type">string&nbsp;&nbsp;</td>
<td><b>$nomFichier</b>&nbsp;&nbsp;</td>
<td>le nom du fichier à vider</td>
</tr>
</table>
</div><br />
<div class="top">[ <a href="#top">Top</a> ]</div>
</div>
 
<hr />
<a name="method__destruct"></a>
<h3>destructor __destruct <span class="smalllinenumber">[line <a href="../__filesource/fsource_Framework__Log.php.html#a179">179</a>]</span></h3>
<div class="function">
<table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border">
<table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code">
<code>void __destruct(
)</code>
</td></tr></table>
</td></tr></table><br />
destructeur de classe, ferme les descripteurs ouverts<br /><br /><br /><br />
<h4>Tags:</h4>
<div class="tags">
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td><b>access:</b>&nbsp;&nbsp;</td><td>public</td>
</tr>
</table>
</div>
<br /><br />
 
<div class="top">[ <a href="#top">Top</a> ]</div>
</div>
</div><br />
 
 
<div class="credit">
<hr />
Documentation generated on Thu, 04 Mar 2010 19:27:33 +0100 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.3</a>
</div>
</td></tr></table>
</td>
</tr>
</table>
 
</body>
</html>
/tags/v0.3-aleaume/doc/HTMLSmartyConverter/Framework/_Controleur.php.html
New file
0,0 → 1,116
<html>
<head>
<title>Docs for page Controleur.php</title>
<meta http-equiv='Content-Type' content='text/html; charset=UTF-8'/>
<link rel="stylesheet" type="text/css" href="../media/style.css">
</head>
<body>
 
<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%">
<tr>
<td class="header_top">Framework</td>
</tr>
<tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr>
<tr>
<td class="header_menu">
[ <a href="../classtrees_Framework.html" class="menu">class tree: Framework</a> ]
[ <a href="../elementindex_Framework.html" class="menu">index: Framework</a> ]
[ <a href="../elementindex.html" class="menu">all elements</a> ]
</td>
</tr>
<tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr>
</table>
 
<table width="100%" border="0" cellpadding="0" cellspacing="0">
<tr valign="top">
<td width="200" class="menu">
<b>Packages:</b><br />
<a href="../li_Framework.html">Framework</a><br />
<br /><br />
<b>Files:</b><br />
<div class="package">
<a href="../Framework/_Application.php.html"> Application.php
</a><br>
<a href="../Framework/_autoload.inc.php.html"> autoload.inc.php
</a><br>
<a href="../Framework/_Chronometre.php.html"> Chronometre.php
</a><br>
<a href="../Framework/_Config.php.html"> Config.php
</a><br>
<a href="../Framework/_Controleur.php.html"> Controleur.php
</a><br>
<a href="../Framework/_Debug.php.html"> Debug.php
</a><br>
<a href="../Framework/_GestionnaireException.php.html"> GestionnaireException.php
</a><br>
<a href="../Framework/_Log.php.html"> Log.php
</a><br>
<a href="../Framework/_Modele.php.html"> Modele.php
</a><br>
<a href="../Framework/_Registre.php.html"> Registre.php
</a><br>
<a href="../Framework/_SquelettePhp.php.html"> SquelettePhp.php
</a><br>
<a href="../Framework/_Url.php.html"> Url.php
</a><br>
</div><br />
<b>Classes:</b><br />
<div class="package">
<a href="../Framework/Application.html">Application</a><br />
<a href="../Framework/Chronometre.html">Chronometre</a><br />
<a href="../Framework/Config.html">Config</a><br />
<a href="../Framework/Controleur.html">Controleur</a><br />
<a href="../Framework/Debug.html">Debug</a><br />
<a href="../Framework/GestionnaireException.html">GestionnaireException</a><br />
<a href="../Framework/Log.html">Log</a><br />
<a href="../Framework/Modele.html">Modele</a><br />
<a href="../Framework/Registre.html">Registre</a><br />
<a href="../Framework/SquelettePhp.html">SquelettePhp</a><br />
<a href="../Framework/Url.html">Url</a><br />
</div>
</td>
<td>
<table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top">
 
<h1>Procedural File: Controleur.php</h1>
Source Location: /Controleur.php<br /><br />
 
<br>
<br>
 
<div class="contents">
<h2>Classes:</h2>
<dt><a href="../Framework/Controleur.html">Controleur</a></dt>
<dd>Classe Controleur, coeur d'une application, c'est normalement la seule classe d'une application qui devrait être appelée de l'extérieur.</dd>
</div><br /><br />
 
<h2>Page Details:</h2>
<br /><br />
<h4>Tags:</h4>
<div class="tags">
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td><b>filesource:</b>&nbsp;&nbsp;</td><td><a href="../__filesource/fsource_Framework__Controleur.php.html">Source Code for this file</a></td>
</tr>
</table>
</div>
<br /><br />
<br /><br />
<br /><br />
<br />
 
<div class="credit">
<hr />
Documentation generated on Thu, 04 Mar 2010 19:27:30 +0100 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.3</a>
</div>
</td></tr></table>
</td>
</tr>
</table>
 
</body>
</html>
/tags/v0.3-aleaume/doc/HTMLSmartyConverter/Framework/SquelettePhp.html
New file
0,0 → 1,229
<html>
<head>
<title>Docs For Class SquelettePhp</title>
<meta http-equiv='Content-Type' content='text/html; charset=UTF-8'/>
<link rel="stylesheet" type="text/css" href="../media/style.css">
</head>
<body>
 
<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%">
<tr>
<td class="header_top">Framework</td>
</tr>
<tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr>
<tr>
<td class="header_menu">
[ <a href="../classtrees_Framework.html" class="menu">class tree: Framework</a> ]
[ <a href="../elementindex_Framework.html" class="menu">index: Framework</a> ]
[ <a href="../elementindex.html" class="menu">all elements</a> ]
</td>
</tr>
<tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr>
</table>
 
<table width="100%" border="0" cellpadding="0" cellspacing="0">
<tr valign="top">
<td width="200" class="menu">
<b>Packages:</b><br />
<a href="../li_Framework.html">Framework</a><br />
<br /><br />
<b>Files:</b><br />
<div class="package">
<a href="../Framework/_Application.php.html"> Application.php
</a><br>
<a href="../Framework/_autoload.inc.php.html"> autoload.inc.php
</a><br>
<a href="../Framework/_Chronometre.php.html"> Chronometre.php
</a><br>
<a href="../Framework/_Config.php.html"> Config.php
</a><br>
<a href="../Framework/_Controleur.php.html"> Controleur.php
</a><br>
<a href="../Framework/_Debug.php.html"> Debug.php
</a><br>
<a href="../Framework/_GestionnaireException.php.html"> GestionnaireException.php
</a><br>
<a href="../Framework/_Log.php.html"> Log.php
</a><br>
<a href="../Framework/_Modele.php.html"> Modele.php
</a><br>
<a href="../Framework/_Registre.php.html"> Registre.php
</a><br>
<a href="../Framework/_SquelettePhp.php.html"> SquelettePhp.php
</a><br>
<a href="../Framework/_Url.php.html"> Url.php
</a><br>
</div><br />
<b>Classes:</b><br />
<div class="package">
<a href="../Framework/Application.html">Application</a><br />
<a href="../Framework/Chronometre.html">Chronometre</a><br />
<a href="../Framework/Config.html">Config</a><br />
<a href="../Framework/Controleur.html">Controleur</a><br />
<a href="../Framework/Debug.html">Debug</a><br />
<a href="../Framework/GestionnaireException.html">GestionnaireException</a><br />
<a href="../Framework/Log.html">Log</a><br />
<a href="../Framework/Modele.html">Modele</a><br />
<a href="../Framework/Registre.html">Registre</a><br />
<a href="../Framework/SquelettePhp.html">SquelettePhp</a><br />
<a href="../Framework/Url.html">Url</a><br />
</div>
</td>
<td>
<table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top">
 
<h1>Class: SquelettePhp</h1>
Source Location: /SquelettePhp.php<br /><br />
 
 
<table width="100%" border="0">
<tr><td valign="top">
 
<h3><a href="#class_details">Class Overview</a></h3>
<pre></pre><br />
<div class="description">Classe SquelettePhp, traitant les squelette Php utilisant la syntaxe courte php ou pas.</div><br /><br />
<h4>Author(s):</h4>
<ul>
<li>Jean-Pascal MILCENT &lt;<a href="mailto:jpm@tela-botanica.org">jpm@tela-botanica.org</a>&gt;</li>
</ul>
 
 
 
 
<h4>Version:</h4>
<ul>
<li>SVN: $$Id: SquelettePhp.php 153 2010-03-04 10:48:32Z jpm $$</li>
</ul>
 
<h4>Copyright:</h4>
<ul>
<li>2010 Tela-Botanica</li>
</ul>
</td>
 
 
 
<td valign="top">
<h3><a href="#class_methods">Methods</a></h3>
<ul>
<li><a href="../Framework/SquelettePhp.html#methodanalyser">analyser</a></li>
</ul>
</td>
 
</tr></table>
<hr />
 
<table width="100%" border="0"><tr>
 
 
 
 
 
 
</tr></table>
<hr />
 
<a name="class_details"></a>
<h3>Class Details</h3>
<div class="tags">
[line <a href="../__filesource/fsource_Framework__SquelettePhp.php.html#a16">16</a>]<br />
Classe SquelettePhp, traitant les squelette Php utilisant la syntaxe courte php ou pas.<br /><br /><p>Ces méthodes sont statiques.</p><br /><br /><br />
<h4>Tags:</h4>
<div class="tags">
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td><b>author:</b>&nbsp;&nbsp;</td><td>Jean-Pascal MILCENT &lt;<a href="mailto:jpm@tela-botanica.org">jpm@tela-botanica.org</a>&gt;</td>
</tr>
<tr>
<td><b>version:</b>&nbsp;&nbsp;</td><td>SVN: $$Id: SquelettePhp.php 153 2010-03-04 10:48:32Z jpm $$</td>
</tr>
<tr>
<td><b>copyright:</b>&nbsp;&nbsp;</td><td>2010 Tela-Botanica</td>
</tr>
<tr>
<td><b>link:</b>&nbsp;&nbsp;</td><td>/doc/framework/</td>
</tr>
<tr>
<td><b>license:</b>&nbsp;&nbsp;</td><td><a href="http://www.gnu.org/licenses/gpl.html">Licence GNU-GPL</a></td>
</tr>
<tr>
<td><b>license:</b>&nbsp;&nbsp;</td><td><a href="http://www.cecill.info/licences/Licence_CeCILL_V2-fr.txt">Licence CECILL</a></td>
</tr>
</table>
</div>
</div><br /><br />
<div class="top">[ <a href="#top">Top</a> ]</div><br />
 
 
<hr />
<a name="class_methods"></a>
<h3>Class Methods</h3>
<div class="tags">
<hr />
<a name="methodanalyser"></a>
<h3>static method analyser <span class="smalllinenumber">[line <a href="../__filesource/fsource_Framework__SquelettePhp.php.html#a27">27</a>]</span></h3>
<div class="function">
<table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border">
<table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code">
<code>static boolean analyser(
String
$fichier, [
$donnees = array()])</code>
</td></tr></table>
</td></tr></table><br />
Fonction prenant en paramètre un chemin de fichier squelette et un tableau associatif de données, en extrait les variables, charge le squelette et retourne le résultat des deux combinés.<br /><br /><br /><br />
<h4>Tags:</h4>
<div class="tags">
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td><b>return:</b>&nbsp;&nbsp;</td><td>false si la vue n'existe pas, sinon la chaine résultat.</td>
</tr>
<tr>
<td><b>access:</b>&nbsp;&nbsp;</td><td>public</td>
</tr>
</table>
</div>
<br /><br />
 
<h4>Parameters:</h4>
<div class="tags">
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td class="type">String&nbsp;&nbsp;</td>
<td><b>$fichier</b>&nbsp;&nbsp;</td>
<td>le chemin du fichier du squelette</td>
</tr>
<tr>
<td class="type">Array&nbsp;&nbsp;</td>
<td><b>$donnees</b>&nbsp;&nbsp;</td>
<td>un tableau associatif contenant les variables a injecter dans le squelette.</td>
</tr>
</table>
</div><br />
<div class="top">[ <a href="#top">Top</a> ]</div>
</div>
 
</div><br />
 
 
<div class="credit">
<hr />
Documentation generated on Thu, 04 Mar 2010 19:27:36 +0100 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.3</a>
</div>
</td></tr></table>
</td>
</tr>
</table>
 
</body>
</html>
/tags/v0.3-aleaume/doc/HTMLSmartyConverter/Framework/Registre.html
New file
0,0 → 1,369
<html>
<head>
<title>Docs For Class Registre</title>
<meta http-equiv='Content-Type' content='text/html; charset=UTF-8'/>
<link rel="stylesheet" type="text/css" href="../media/style.css">
</head>
<body>
 
<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%">
<tr>
<td class="header_top">Framework</td>
</tr>
<tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr>
<tr>
<td class="header_menu">
[ <a href="../classtrees_Framework.html" class="menu">class tree: Framework</a> ]
[ <a href="../elementindex_Framework.html" class="menu">index: Framework</a> ]
[ <a href="../elementindex.html" class="menu">all elements</a> ]
</td>
</tr>
<tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr>
</table>
 
<table width="100%" border="0" cellpadding="0" cellspacing="0">
<tr valign="top">
<td width="200" class="menu">
<b>Packages:</b><br />
<a href="../li_Framework.html">Framework</a><br />
<br /><br />
<b>Files:</b><br />
<div class="package">
<a href="../Framework/_Application.php.html"> Application.php
</a><br>
<a href="../Framework/_autoload.inc.php.html"> autoload.inc.php
</a><br>
<a href="../Framework/_Chronometre.php.html"> Chronometre.php
</a><br>
<a href="../Framework/_Config.php.html"> Config.php
</a><br>
<a href="../Framework/_Controleur.php.html"> Controleur.php
</a><br>
<a href="../Framework/_Debug.php.html"> Debug.php
</a><br>
<a href="../Framework/_GestionnaireException.php.html"> GestionnaireException.php
</a><br>
<a href="../Framework/_Log.php.html"> Log.php
</a><br>
<a href="../Framework/_Modele.php.html"> Modele.php
</a><br>
<a href="../Framework/_Registre.php.html"> Registre.php
</a><br>
<a href="../Framework/_SquelettePhp.php.html"> SquelettePhp.php
</a><br>
<a href="../Framework/_Url.php.html"> Url.php
</a><br>
</div><br />
<b>Classes:</b><br />
<div class="package">
<a href="../Framework/Application.html">Application</a><br />
<a href="../Framework/Chronometre.html">Chronometre</a><br />
<a href="../Framework/Config.html">Config</a><br />
<a href="../Framework/Controleur.html">Controleur</a><br />
<a href="../Framework/Debug.html">Debug</a><br />
<a href="../Framework/GestionnaireException.html">GestionnaireException</a><br />
<a href="../Framework/Log.html">Log</a><br />
<a href="../Framework/Modele.html">Modele</a><br />
<a href="../Framework/Registre.html">Registre</a><br />
<a href="../Framework/SquelettePhp.html">SquelettePhp</a><br />
<a href="../Framework/Url.html">Url</a><br />
</div>
</td>
<td>
<table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top">
 
<h1>Class: Registre</h1>
Source Location: /Registre.php<br /><br />
 
 
<table width="100%" border="0">
<tr><td valign="top">
 
<h3><a href="#class_details">Class Overview</a></h3>
<pre></pre><br />
<div class="description">Classe registre, qui permet un accès à différentes variables à travers les autres classes.</div><br /><br />
<h4>Author(s):</h4>
<ul>
<li>Jean-Pascal Milcent &lt;<a href="mailto:jmp@tela-botanica.org">jmp@tela-botanica.org</a>&gt;</li>
</ul>
 
 
 
 
<h4>Version:</h4>
<ul>
<li>SVN: $$Id: Registre.php 120 2009-09-01 12:21:14Z aurelien $$</li>
</ul>
 
<h4>Copyright:</h4>
<ul>
<li>2009 Tela-Botanica</li>
</ul>
</td>
 
 
 
<td valign="top">
<h3><a href="#class_methods">Methods</a></h3>
<ul>
<li><a href="../Framework/Registre.html#methoddetruire">detruire</a></li>
<li><a href="../Framework/Registre.html#methodexiste">existe</a></li>
<li><a href="../Framework/Registre.html#methodget">get</a></li>
<li><a href="../Framework/Registre.html#methodgetInstance">getInstance</a></li>
<li><a href="../Framework/Registre.html#methodset">set</a></li>
</ul>
</td>
 
</tr></table>
<hr />
 
<table width="100%" border="0"><tr>
 
 
 
 
 
 
</tr></table>
<hr />
 
<a name="class_details"></a>
<h3>Class Details</h3>
<div class="tags">
[line <a href="../__filesource/fsource_Framework__Registre.php.html#a19">19</a>]<br />
Classe registre, qui permet un accès à différentes variables à travers les autres classes.<br /><br /><p>C'est un singleton</p><p>PHP Version 5</p><br /><br /><br />
<h4>Tags:</h4>
<div class="tags">
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td><b>author:</b>&nbsp;&nbsp;</td><td>Jean-Pascal Milcent &lt;<a href="mailto:jmp@tela-botanica.org">jmp@tela-botanica.org</a>&gt;</td>
</tr>
<tr>
<td><b>version:</b>&nbsp;&nbsp;</td><td>SVN: $$Id: Registre.php 120 2009-09-01 12:21:14Z aurelien $$</td>
</tr>
<tr>
<td><b>copyright:</b>&nbsp;&nbsp;</td><td>2009 Tela-Botanica</td>
</tr>
<tr>
<td><b>link:</b>&nbsp;&nbsp;</td><td>/doc/framework/</td>
</tr>
<tr>
<td><b>license:</b>&nbsp;&nbsp;</td><td><a href="http://www.gnu.org/licenses/gpl.html">Licence GNU-GPL</a></td>
</tr>
<tr>
<td><b>license:</b>&nbsp;&nbsp;</td><td><a href="http://www.cecill.info/licences/Licence_CeCILL_V2-fr.txt">Licence CECILL</a></td>
</tr>
</table>
</div>
</div><br /><br />
<div class="top">[ <a href="#top">Top</a> ]</div><br />
 
 
<hr />
<a name="class_methods"></a>
<h3>Class Methods</h3>
<div class="tags">
<hr />
<a name="methodgetInstance"></a>
<h3>static method getInstance <span class="smalllinenumber">[line <a href="../__filesource/fsource_Framework__Registre.php.html#a40">40</a>]</span></h3>
<div class="function">
<table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border">
<table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code">
<code>static void getInstance(
)</code>
</td></tr></table>
</td></tr></table><br />
Fonction qui renvoie l'instance de classe en assurant son unicité, c'est l'unique méthode qui doit être<br /><br /><p>utilisée pour récupérer l'objet Registre</p><br /><br /><br />
<h4>Tags:</h4>
<div class="tags">
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td><b>access:</b>&nbsp;&nbsp;</td><td>public</td>
</tr>
</table>
</div>
<br /><br />
 
<div class="top">[ <a href="#top">Top</a> ]</div>
</div>
 
<hr />
<a name="methoddetruire"></a>
<h3>method detruire <span class="smalllinenumber">[line <a href="../__filesource/fsource_Framework__Registre.php.html#a77">77</a>]</span></h3>
<div class="function">
<table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border">
<table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code">
<code>void detruire(
 
$intitule)</code>
</td></tr></table>
</td></tr></table><br />
Détruit l'objet associé à l'intitulé, n'a pas d'effet si il n'y a pas d'objet associé<br /><br /><br /><br />
<h4>Tags:</h4>
<div class="tags">
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td><b>access:</b>&nbsp;&nbsp;</td><td>public</td>
</tr>
</table>
</div>
<br /><br />
 
<h4>Parameters:</h4>
<div class="tags">
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td class="type">&nbsp;&nbsp;</td>
<td><b>$intitule</b>&nbsp;&nbsp;</td>
<td></td>
</tr>
</table>
</div><br />
<div class="top">[ <a href="#top">Top</a> ]</div>
</div>
<hr />
<a name="methodexiste"></a>
<h3>method existe <span class="smalllinenumber">[line <a href="../__filesource/fsource_Framework__Registre.php.html#a87">87</a>]</span></h3>
<div class="function">
<table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border">
<table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code">
<code>boolean existe(
 
$intitule)</code>
</td></tr></table>
</td></tr></table><br />
Teste si un objet est présent sous un intitulé donné<br /><br /><br /><br />
<h4>Tags:</h4>
<div class="tags">
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td><b>return:</b>&nbsp;&nbsp;</td><td>true si un objet associé à cet intitulé est présent, false sinon</td>
</tr>
<tr>
<td><b>access:</b>&nbsp;&nbsp;</td><td>public</td>
</tr>
</table>
</div>
<br /><br />
 
<h4>Parameters:</h4>
<div class="tags">
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td class="type">&nbsp;&nbsp;</td>
<td><b>$intitule</b>&nbsp;&nbsp;</td>
<td></td>
</tr>
</table>
</div><br />
<div class="top">[ <a href="#top">Top</a> ]</div>
</div>
<hr />
<a name="methodget"></a>
<h3>method get <span class="smalllinenumber">[line <a href="../__filesource/fsource_Framework__Registre.php.html#a67">67</a>]</span></h3>
<div class="function">
<table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border">
<table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code">
<code>mixed get(
 
$intitule)</code>
</td></tr></table>
</td></tr></table><br />
Renvoie l'objet associé à l'intitulé donné en paramètre<br /><br /><br /><br />
<h4>Tags:</h4>
<div class="tags">
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td><b>return:</b>&nbsp;&nbsp;</td><td>l'objet associé à l'intitulé ou null s'il n'est pas présent</td>
</tr>
<tr>
<td><b>access:</b>&nbsp;&nbsp;</td><td>public</td>
</tr>
</table>
</div>
<br /><br />
 
<h4>Parameters:</h4>
<div class="tags">
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td class="type">&nbsp;&nbsp;</td>
<td><b>$intitule</b>&nbsp;&nbsp;</td>
<td></td>
</tr>
</table>
</div><br />
<div class="top">[ <a href="#top">Top</a> ]</div>
</div>
<hr />
<a name="methodset"></a>
<h3>method set <span class="smalllinenumber">[line <a href="../__filesource/fsource_Framework__Registre.php.html#a53">53</a>]</span></h3>
<div class="function">
<table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border">
<table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code">
<code>void set(
string
$intitule, mixed
$objet)</code>
</td></tr></table>
</td></tr></table><br />
Ajoute un objet au tableau selon un intitulé donné<br /><br /><br /><br />
<h4>Tags:</h4>
<div class="tags">
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td><b>access:</b>&nbsp;&nbsp;</td><td>public</td>
</tr>
</table>
</div>
<br /><br />
 
<h4>Parameters:</h4>
<div class="tags">
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td class="type">string&nbsp;&nbsp;</td>
<td><b>$intitule</b>&nbsp;&nbsp;</td>
<td>l'intitulé sous lequel l'objet sera conservé</td>
</tr>
<tr>
<td class="type">mixed&nbsp;&nbsp;</td>
<td><b>$objet</b>&nbsp;&nbsp;</td>
<td>l'objet à conserver</td>
</tr>
</table>
</div><br />
<div class="top">[ <a href="#top">Top</a> ]</div>
</div>
</div><br />
 
 
<div class="credit">
<hr />
Documentation generated on Thu, 04 Mar 2010 19:27:35 +0100 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.3</a>
</div>
</td></tr></table>
</td>
</tr>
</table>
 
</body>
</html>
/tags/v0.3-aleaume/doc/HTMLSmartyConverter/Framework/Chronometre.html
New file
0,0 → 1,335
<html>
<head>
<title>Docs For Class Chronometre</title>
<meta http-equiv='Content-Type' content='text/html; charset=UTF-8'/>
<link rel="stylesheet" type="text/css" href="../media/style.css">
</head>
<body>
 
<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%">
<tr>
<td class="header_top">Framework</td>
</tr>
<tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr>
<tr>
<td class="header_menu">
[ <a href="../classtrees_Framework.html" class="menu">class tree: Framework</a> ]
[ <a href="../elementindex_Framework.html" class="menu">index: Framework</a> ]
[ <a href="../elementindex.html" class="menu">all elements</a> ]
</td>
</tr>
<tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr>
</table>
 
<table width="100%" border="0" cellpadding="0" cellspacing="0">
<tr valign="top">
<td width="200" class="menu">
<b>Packages:</b><br />
<a href="../li_Framework.html">Framework</a><br />
<br /><br />
<b>Files:</b><br />
<div class="package">
<a href="../Framework/_Application.php.html"> Application.php
</a><br>
<a href="../Framework/_autoload.inc.php.html"> autoload.inc.php
</a><br>
<a href="../Framework/_Chronometre.php.html"> Chronometre.php
</a><br>
<a href="../Framework/_Config.php.html"> Config.php
</a><br>
<a href="../Framework/_Controleur.php.html"> Controleur.php
</a><br>
<a href="../Framework/_Debug.php.html"> Debug.php
</a><br>
<a href="../Framework/_GestionnaireException.php.html"> GestionnaireException.php
</a><br>
<a href="../Framework/_Log.php.html"> Log.php
</a><br>
<a href="../Framework/_Modele.php.html"> Modele.php
</a><br>
<a href="../Framework/_Registre.php.html"> Registre.php
</a><br>
<a href="../Framework/_SquelettePhp.php.html"> SquelettePhp.php
</a><br>
<a href="../Framework/_Url.php.html"> Url.php
</a><br>
</div><br />
<b>Classes:</b><br />
<div class="package">
<a href="../Framework/Application.html">Application</a><br />
<a href="../Framework/Chronometre.html">Chronometre</a><br />
<a href="../Framework/Config.html">Config</a><br />
<a href="../Framework/Controleur.html">Controleur</a><br />
<a href="../Framework/Debug.html">Debug</a><br />
<a href="../Framework/GestionnaireException.html">GestionnaireException</a><br />
<a href="../Framework/Log.html">Log</a><br />
<a href="../Framework/Modele.html">Modele</a><br />
<a href="../Framework/Registre.html">Registre</a><br />
<a href="../Framework/SquelettePhp.html">SquelettePhp</a><br />
<a href="../Framework/Url.html">Url</a><br />
</div>
</td>
<td>
<table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top">
 
<h1>Class: Chronometre</h1>
Source Location: /Chronometre.php<br /><br />
 
 
<table width="100%" border="0">
<tr><td valign="top">
 
<h3><a href="#class_details">Class Overview</a></h3>
<pre></pre><br />
<div class="description">Classe Chronometre() - Permet de stocker et d'afficher les temps d'éxécution de script.</div><br /><br />
<h4>Author(s):</h4>
<ul>
<li>Jean-Pascal MILCENT &lt;<a href="mailto:jpm@tela-botanica.org">jpm@tela-botanica.org</a>&gt;</li>
</ul>
 
 
 
 
<h4>Version:</h4>
<ul>
<li>Release: &lt;package_version&gt;</li>
</ul>
 
<h4>Copyright:</h4>
<ul>
<li>2009 Tela-Botanica</li>
</ul>
</td>
 
 
 
<td valign="top">
<h3><a href="#class_methods">Methods</a></h3>
<ul>
<li><a href="../Framework/Chronometre.html#method__construct">__construct</a></li>
<li><a href="../Framework/Chronometre.html#methodafficherChrono">afficherChrono</a></li>
<li><a href="../Framework/Chronometre.html#methodgetTemps">getTemps</a></li>
<li><a href="../Framework/Chronometre.html#methodsetTemps">setTemps</a></li>
</ul>
</td>
 
</tr></table>
<hr />
 
<table width="100%" border="0"><tr>
 
 
 
 
 
 
</tr></table>
<hr />
 
<a name="class_details"></a>
<h3>Class Details</h3>
<div class="tags">
[line <a href="../__filesource/fsource_Framework__Chronometre.php.html#a23">23</a>]<br />
Classe Chronometre() - Permet de stocker et d'afficher les temps d'éxécution de script.<br /><br /><p>Cette classe permet de réaliser un ensemble de mesure de temps prises à différents endroits d'un script. Ces mesures peuvent ensuite être affichées au sein d'un tableau XHTML.</p><p>PHP Version 5</p><br /><br /><br />
<h4>Tags:</h4>
<div class="tags">
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td><b>author:</b>&nbsp;&nbsp;</td><td>Jean-Pascal MILCENT &lt;<a href="mailto:jpm@tela-botanica.org">jpm@tela-botanica.org</a>&gt;</td>
</tr>
<tr>
<td><b>version:</b>&nbsp;&nbsp;</td><td>Release: &lt;package_version&gt;</td>
</tr>
<tr>
<td><b>copyright:</b>&nbsp;&nbsp;</td><td>2009 Tela-Botanica</td>
</tr>
<tr>
<td><b>link:</b>&nbsp;&nbsp;</td><td>/doc/framework/</td>
</tr>
<tr>
<td><b>license:</b>&nbsp;&nbsp;</td><td><a href="http://www.cecill.info/licences/Licence_CeCILL_V2-fr.txt">Licence CECILL</a></td>
</tr>
</table>
</div>
</div><br /><br />
<div class="top">[ <a href="#top">Top</a> ]</div><br />
 
 
<hr />
<a name="class_methods"></a>
<h3>Class Methods</h3>
<div class="tags">
 
<hr />
<a name="method__construct"></a>
<h3>constructor __construct <span class="smalllinenumber">[line <a href="../__filesource/fsource_Framework__Chronometre.php.html#a28">28</a>]</span></h3>
<div class="function">
<table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border">
<table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code">
<code>Chronometre __construct(
)</code>
</td></tr></table>
</td></tr></table><br />
Constructeur : *<br /><br /><br /><br />
<h4>Tags:</h4>
<div class="tags">
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td><b>access:</b>&nbsp;&nbsp;</td><td>public</td>
</tr>
</table>
</div>
<br /><br />
 
<div class="top">[ <a href="#top">Top</a> ]</div>
</div>
<hr />
<a name="methodafficherChrono"></a>
<h3>method afficherChrono <span class="smalllinenumber">[line <a href="../__filesource/fsource_Framework__Chronometre.php.html#a82">82</a>]</span></h3>
<div class="function">
<table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border">
<table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code">
<code>string afficherChrono(
[int
$indentation_origine = 8], [int
$indentation = 4])</code>
</td></tr></table>
</td></tr></table><br />
Méthode afficherChrono() - Permet d'afficher les temps d'éxécution de différentes parties d'un script.<br /><br /><p>Cette fonction permet d'afficher un ensemble de mesure de temps prises à différents endroits d'un script. Ces mesures sont affichées au sein d'un tableau XHTML dont on peut controler l'indentation des balises. Pour un site en production, il suffit d'ajouter un style #chrono {display:none;} dans la css. De cette façon, le tableau ne s'affichera pas. Le webmaster lui pourra rajouter sa propre feuille de style affichant le tableau. Le développeur initial de cette fonction est Loic d'Anterroches. Elle a été modifiée par Jean-Pascal Milcent. Elle utilise une variable gobale : $_CHRONO_</p><br /><br /><br />
<h4>Tags:</h4>
<div class="tags">
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td><b>return:</b>&nbsp;&nbsp;</td><td>la chaine XHTML de mesure des temps.</td>
</tr>
<tr>
<td><b>author:</b>&nbsp;&nbsp;</td><td>Jean-Pascal MILCENT &lt;<a href="mailto:jpm@tela-botanica.org">jpm@tela-botanica.org</a>&gt;</td>
</tr>
<tr>
<td><b>author:</b>&nbsp;&nbsp;</td><td>Loic d'Anterroches</td>
</tr>
<tr>
<td><b>access:</b>&nbsp;&nbsp;</td><td>public</td>
</tr>
</table>
</div>
<br /><br />
 
<h4>Parameters:</h4>
<div class="tags">
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td class="type">int&nbsp;&nbsp;</td>
<td><b>$indentation_origine</b>&nbsp;&nbsp;</td>
<td>l'indentation de base.</td>
</tr>
<tr>
<td class="type">int&nbsp;&nbsp;</td>
<td><b>$indentation</b>&nbsp;&nbsp;</td>
<td>le pas d'indentation.</td>
</tr>
</table>
</div><br />
<div class="top">[ <a href="#top">Top</a> ]</div>
</div>
<hr />
<a name="methodgetTemps"></a>
<h3>method getTemps <span class="smalllinenumber">[line <a href="../__filesource/fsource_Framework__Chronometre.php.html#a38">38</a>]</span></h3>
<div class="function">
<table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border">
<table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code">
<code>int getTemps(
[string
$cle = null])</code>
</td></tr></table>
</td></tr></table><br />
Accesseurs :<br /><br /><br /><br />
<h4>Tags:</h4>
<div class="tags">
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td><b>return:</b>&nbsp;&nbsp;</td><td>le temps écoulé</td>
</tr>
<tr>
<td><b>access:</b>&nbsp;&nbsp;</td><td>public</td>
</tr>
</table>
</div>
<br /><br />
 
<h4>Parameters:</h4>
<div class="tags">
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td class="type">string&nbsp;&nbsp;</td>
<td><b>$cle</b>&nbsp;&nbsp;</td>
<td>la cle associée à un chronomètre particulier</td>
</tr>
</table>
</div><br />
<div class="top">[ <a href="#top">Top</a> ]</div>
</div>
<hr />
<a name="methodsetTemps"></a>
<h3>method setTemps <span class="smalllinenumber">[line <a href="../__filesource/fsource_Framework__Chronometre.php.html#a54">54</a>]</span></h3>
<div class="function">
<table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border">
<table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code">
<code>null setTemps(
[array()
$moment = array ()])</code>
</td></tr></table>
</td></tr></table><br />
Setteur pour la variable temps<br /><br /><br /><br />
<h4>Tags:</h4>
<div class="tags">
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td><b>access:</b>&nbsp;&nbsp;</td><td>public</td>
</tr>
</table>
</div>
<br /><br />
 
<h4>Parameters:</h4>
<div class="tags">
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td class="type">array()&nbsp;&nbsp;</td>
<td><b>$moment</b>&nbsp;&nbsp;</td>
<td>ajoute des points de chronométrage au tableau _temps</td>
</tr>
</table>
</div><br />
<div class="top">[ <a href="#top">Top</a> ]</div>
</div>
</div><br />
 
 
<div class="credit">
<hr />
Documentation generated on Thu, 04 Mar 2010 19:27:29 +0100 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.3</a>
</div>
</td></tr></table>
</td>
</tr>
</table>
 
</body>
</html>
/tags/v0.3-aleaume/doc/HTMLSmartyConverter/Framework/Debug.html
New file
0,0 → 1,348
<html>
<head>
<title>Docs For Class Debug</title>
<meta http-equiv='Content-Type' content='text/html; charset=UTF-8'/>
<link rel="stylesheet" type="text/css" href="../media/style.css">
</head>
<body>
 
<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%">
<tr>
<td class="header_top">Framework</td>
</tr>
<tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr>
<tr>
<td class="header_menu">
[ <a href="../classtrees_Framework.html" class="menu">class tree: Framework</a> ]
[ <a href="../elementindex_Framework.html" class="menu">index: Framework</a> ]
[ <a href="../elementindex.html" class="menu">all elements</a> ]
</td>
</tr>
<tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr>
</table>
 
<table width="100%" border="0" cellpadding="0" cellspacing="0">
<tr valign="top">
<td width="200" class="menu">
<b>Packages:</b><br />
<a href="../li_Framework.html">Framework</a><br />
<br /><br />
<b>Files:</b><br />
<div class="package">
<a href="../Framework/_Application.php.html"> Application.php
</a><br>
<a href="../Framework/_autoload.inc.php.html"> autoload.inc.php
</a><br>
<a href="../Framework/_Chronometre.php.html"> Chronometre.php
</a><br>
<a href="../Framework/_Config.php.html"> Config.php
</a><br>
<a href="../Framework/_Controleur.php.html"> Controleur.php
</a><br>
<a href="../Framework/_Debug.php.html"> Debug.php
</a><br>
<a href="../Framework/_GestionnaireException.php.html"> GestionnaireException.php
</a><br>
<a href="../Framework/_Log.php.html"> Log.php
</a><br>
<a href="../Framework/_Modele.php.html"> Modele.php
</a><br>
<a href="../Framework/_Registre.php.html"> Registre.php
</a><br>
<a href="../Framework/_SquelettePhp.php.html"> SquelettePhp.php
</a><br>
<a href="../Framework/_Url.php.html"> Url.php
</a><br>
</div><br />
<b>Classes:</b><br />
<div class="package">
<a href="../Framework/Application.html">Application</a><br />
<a href="../Framework/Chronometre.html">Chronometre</a><br />
<a href="../Framework/Config.html">Config</a><br />
<a href="../Framework/Controleur.html">Controleur</a><br />
<a href="../Framework/Debug.html">Debug</a><br />
<a href="../Framework/GestionnaireException.html">GestionnaireException</a><br />
<a href="../Framework/Log.html">Log</a><br />
<a href="../Framework/Modele.html">Modele</a><br />
<a href="../Framework/Registre.html">Registre</a><br />
<a href="../Framework/SquelettePhp.html">SquelettePhp</a><br />
<a href="../Framework/Url.html">Url</a><br />
</div>
</td>
<td>
<table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top">
 
<h1>Class: Debug</h1>
Source Location: /Debug.php<br /><br />
 
 
<table width="100%" border="0">
<tr><td valign="top">
 
<h3><a href="#class_details">Class Overview</a></h3>
<pre></pre><br />
<div class="description">Classe fournissant des fonctions de débogage équivalante à var_dump et print_r.</div><br /><br />
<h4>Author(s):</h4>
<ul>
<li>Jean-Pascal MILCENT &lt;<a href="mailto:jpm@tela-botanica.org">jpm@tela-botanica.org</a>&gt;</li>
</ul>
 
 
 
 
<h4>Version:</h4>
<ul>
<li>$$Id: Debug.php 153 2010-03-04 10:48:32Z jpm $$</li>
</ul>
 
<h4>Copyright:</h4>
<ul>
<li>1999-2009 Tela Botanica (accueil@tela-botanica.org)</li>
</ul>
</td>
 
<td valign="top">
<h3><a href="#class_vars">Variables</a></h3>
<ul>
<li><a href="../Framework/Debug.html#var$mode">$mode</a></li>
</ul>
</td>
 
 
<td valign="top">
<h3><a href="#class_methods">Methods</a></h3>
<ul>
<li><a href="../Framework/Debug.html#methoddump">dump</a></li>
<li><a href="../Framework/Debug.html#methodgetMode">getMode</a></li>
<li><a href="../Framework/Debug.html#methodprintr">printr</a></li>
</ul>
</td>
 
</tr></table>
<hr />
 
<table width="100%" border="0"><tr>
 
 
 
 
 
 
</tr></table>
<hr />
 
<a name="class_details"></a>
<h3>Class Details</h3>
<div class="tags">
[line <a href="../__filesource/fsource_Framework__Debug.php.html#a20">20</a>]<br />
Classe fournissant des fonctions de débogage équivalante à var_dump et print_r.<br /><br /><p>L'affichage et l'utilisation de ces fonctions sont améliorés via cette classe. Cette classe est inspirée de la classe Zend_Debug.</p><p>PHP version 5</p><br /><br /><br />
<h4>Tags:</h4>
<div class="tags">
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td><b>author:</b>&nbsp;&nbsp;</td><td>Jean-Pascal MILCENT &lt;<a href="mailto:jpm@tela-botanica.org">jpm@tela-botanica.org</a>&gt;</td>
</tr>
<tr>
<td><b>version:</b>&nbsp;&nbsp;</td><td>$$Id: Debug.php 153 2010-03-04 10:48:32Z jpm $$</td>
</tr>
<tr>
<td><b>copyright:</b>&nbsp;&nbsp;</td><td>1999-2009 Tela Botanica (accueil@tela-botanica.org)</td>
</tr>
<tr>
<td><b>license:</b>&nbsp;&nbsp;</td><td>GPL</td>
</tr>
<tr>
<td><b>license:</b>&nbsp;&nbsp;</td><td>CECILL</td>
</tr>
</table>
</div>
</div><br /><br />
<div class="top">[ <a href="#top">Top</a> ]</div><br />
 
<hr />
<a name="class_vars"></a>
<h3>Class Variables</h3>
<div class="tags">
<a name="var$mode"></a>
<p></p>
<h4>static $mode = <span class="value">&nbsp;null</span></h4>
<p>[line <a href="../__filesource/fsource_Framework__Debug.php.html#a25">25</a>]</p>
mode de php (cli ou sapi)<br /><br /><br /><br />
<h4>Tags:</h4>
<div class="tags">
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td><b>access:</b>&nbsp;&nbsp;</td><td>protected</td>
</tr>
</table>
</div>
 
<br />
<div class="tags">
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td><b>Type:</b>&nbsp;&nbsp;</td>
<td>mixed</td>
</tr>
</table>
</div><br /><br />
<div class="top">[ <a href="#top">Top</a> ]</div><br />
</div><br />
 
<hr />
<a name="class_methods"></a>
<h3>Class Methods</h3>
<div class="tags">
<hr />
<a name="methoddump"></a>
<h3>static method dump <span class="smalllinenumber">[line <a href="../__filesource/fsource_Framework__Debug.php.html#a45">45</a>]</span></h3>
<div class="function">
<table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border">
<table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code">
<code>static string dump(
mixed
$variable, [string
$mot_cle = null], [boolean
$echo = true])</code>
</td></tr></table>
</td></tr></table><br />
Equivalent de var_dump<br /><br /><br /><br />
<h4>Tags:</h4>
<div class="tags">
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td><b>return:</b>&nbsp;&nbsp;</td><td>la chaine à afficher representant le dump ou null si echo</td>
</tr>
<tr>
<td><b>access:</b>&nbsp;&nbsp;</td><td>public</td>
</tr>
</table>
</div>
<br /><br />
 
<h4>Parameters:</h4>
<div class="tags">
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td class="type">mixed&nbsp;&nbsp;</td>
<td><b>$variable</b>&nbsp;&nbsp;</td>
<td>la variable à dumper</td>
</tr>
<tr>
<td class="type">string&nbsp;&nbsp;</td>
<td><b>$mot_cle</b>&nbsp;&nbsp;</td>
<td>le mot cle à associer à la variable</td>
</tr>
<tr>
<td class="type">boolean&nbsp;&nbsp;</td>
<td><b>$echo</b>&nbsp;&nbsp;</td>
<td>si true on affiche le résultat, si false on ne renvoie que la chaine sans l'afficher</td>
</tr>
</table>
</div><br />
<div class="top">[ <a href="#top">Top</a> ]</div>
</div>
<hr />
<a name="methodgetMode"></a>
<h3>static method getMode <span class="smalllinenumber">[line <a href="../__filesource/fsource_Framework__Debug.php.html#a31">31</a>]</span></h3>
<div class="function">
<table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border">
<table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code">
<code>static string getMode(
)</code>
</td></tr></table>
</td></tr></table><br />
Accesseur pour le mode<br /><br /><br /><br />
<h4>Tags:</h4>
<div class="tags">
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td><b>return:</b>&nbsp;&nbsp;</td><td>le mode de php</td>
</tr>
<tr>
<td><b>access:</b>&nbsp;&nbsp;</td><td>public</td>
</tr>
</table>
</div>
<br /><br />
 
<div class="top">[ <a href="#top">Top</a> ]</div>
</div>
<hr />
<a name="methodprintr"></a>
<h3>static method printr <span class="smalllinenumber">[line <a href="../__filesource/fsource_Framework__Debug.php.html#a65">65</a>]</span></h3>
<div class="function">
<table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border">
<table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code">
<code>static string printr(
mixed
$variable, [string
$mot_cle = null], [boolean
$echo = true])</code>
</td></tr></table>
</td></tr></table><br />
Equivalent de print_r<br /><br /><br /><br />
<h4>Tags:</h4>
<div class="tags">
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td><b>return:</b>&nbsp;&nbsp;</td><td>la chaine contenant la variable printée ou null si echo</td>
</tr>
<tr>
<td><b>access:</b>&nbsp;&nbsp;</td><td>public</td>
</tr>
</table>
</div>
<br /><br />
 
<h4>Parameters:</h4>
<div class="tags">
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td class="type">mixed&nbsp;&nbsp;</td>
<td><b>$variable</b>&nbsp;&nbsp;</td>
<td>la variable à afficher</td>
</tr>
<tr>
<td class="type">string&nbsp;&nbsp;</td>
<td><b>$mot_cle</b>&nbsp;&nbsp;</td>
<td>le mot cle à associer</td>
</tr>
<tr>
<td class="type">boolean&nbsp;&nbsp;</td>
<td><b>$echo</b>&nbsp;&nbsp;</td>
<td>faire un echo ou non</td>
</tr>
</table>
</div><br />
<div class="top">[ <a href="#top">Top</a> ]</div>
</div>
 
</div><br />
 
 
<div class="credit">
<hr />
Documentation generated on Thu, 04 Mar 2010 19:27:32 +0100 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.3</a>
</div>
</td></tr></table>
</td>
</tr>
</table>
 
</body>
</html>
/tags/v0.3-aleaume/doc/HTMLSmartyConverter/Framework/_Url.php.html
New file
0,0 → 1,116
<html>
<head>
<title>Docs for page Url.php</title>
<meta http-equiv='Content-Type' content='text/html; charset=UTF-8'/>
<link rel="stylesheet" type="text/css" href="../media/style.css">
</head>
<body>
 
<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%">
<tr>
<td class="header_top">Framework</td>
</tr>
<tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr>
<tr>
<td class="header_menu">
[ <a href="../classtrees_Framework.html" class="menu">class tree: Framework</a> ]
[ <a href="../elementindex_Framework.html" class="menu">index: Framework</a> ]
[ <a href="../elementindex.html" class="menu">all elements</a> ]
</td>
</tr>
<tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr>
</table>
 
<table width="100%" border="0" cellpadding="0" cellspacing="0">
<tr valign="top">
<td width="200" class="menu">
<b>Packages:</b><br />
<a href="../li_Framework.html">Framework</a><br />
<br /><br />
<b>Files:</b><br />
<div class="package">
<a href="../Framework/_Application.php.html"> Application.php
</a><br>
<a href="../Framework/_autoload.inc.php.html"> autoload.inc.php
</a><br>
<a href="../Framework/_Chronometre.php.html"> Chronometre.php
</a><br>
<a href="../Framework/_Config.php.html"> Config.php
</a><br>
<a href="../Framework/_Controleur.php.html"> Controleur.php
</a><br>
<a href="../Framework/_Debug.php.html"> Debug.php
</a><br>
<a href="../Framework/_GestionnaireException.php.html"> GestionnaireException.php
</a><br>
<a href="../Framework/_Log.php.html"> Log.php
</a><br>
<a href="../Framework/_Modele.php.html"> Modele.php
</a><br>
<a href="../Framework/_Registre.php.html"> Registre.php
</a><br>
<a href="../Framework/_SquelettePhp.php.html"> SquelettePhp.php
</a><br>
<a href="../Framework/_Url.php.html"> Url.php
</a><br>
</div><br />
<b>Classes:</b><br />
<div class="package">
<a href="../Framework/Application.html">Application</a><br />
<a href="../Framework/Chronometre.html">Chronometre</a><br />
<a href="../Framework/Config.html">Config</a><br />
<a href="../Framework/Controleur.html">Controleur</a><br />
<a href="../Framework/Debug.html">Debug</a><br />
<a href="../Framework/GestionnaireException.html">GestionnaireException</a><br />
<a href="../Framework/Log.html">Log</a><br />
<a href="../Framework/Modele.html">Modele</a><br />
<a href="../Framework/Registre.html">Registre</a><br />
<a href="../Framework/SquelettePhp.html">SquelettePhp</a><br />
<a href="../Framework/Url.html">Url</a><br />
</div>
</td>
<td>
<table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top">
 
<h1>Procedural File: Url.php</h1>
Source Location: /Url.php<br /><br />
 
<br>
<br>
 
<div class="contents">
<h2>Classes:</h2>
<dt><a href="../Framework/Url.html">Url</a></dt>
<dd>classe Url, gérant le découpage des paramètres, leurs modification etc...</dd>
</div><br /><br />
 
<h2>Page Details:</h2>
<br /><br />
<h4>Tags:</h4>
<div class="tags">
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td><b>filesource:</b>&nbsp;&nbsp;</td><td><a href="../__filesource/fsource_Framework__Url.php.html">Source Code for this file</a></td>
</tr>
</table>
</div>
<br /><br />
<br /><br />
<br /><br />
<br />
 
<div class="credit">
<hr />
Documentation generated on Thu, 04 Mar 2010 19:27:36 +0100 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.3</a>
</div>
</td></tr></table>
</td>
</tr>
</table>
 
</body>
</html>
/tags/v0.3-aleaume/doc/HTMLSmartyConverter/Framework/_Application.php.html
New file
0,0 → 1,116
<html>
<head>
<title>Docs for page Application.php</title>
<meta http-equiv='Content-Type' content='text/html; charset=UTF-8'/>
<link rel="stylesheet" type="text/css" href="../media/style.css">
</head>
<body>
 
<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%">
<tr>
<td class="header_top">Framework</td>
</tr>
<tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr>
<tr>
<td class="header_menu">
[ <a href="../classtrees_Framework.html" class="menu">class tree: Framework</a> ]
[ <a href="../elementindex_Framework.html" class="menu">index: Framework</a> ]
[ <a href="../elementindex.html" class="menu">all elements</a> ]
</td>
</tr>
<tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr>
</table>
 
<table width="100%" border="0" cellpadding="0" cellspacing="0">
<tr valign="top">
<td width="200" class="menu">
<b>Packages:</b><br />
<a href="../li_Framework.html">Framework</a><br />
<br /><br />
<b>Files:</b><br />
<div class="package">
<a href="../Framework/_Application.php.html"> Application.php
</a><br>
<a href="../Framework/_autoload.inc.php.html"> autoload.inc.php
</a><br>
<a href="../Framework/_Chronometre.php.html"> Chronometre.php
</a><br>
<a href="../Framework/_Config.php.html"> Config.php
</a><br>
<a href="../Framework/_Controleur.php.html"> Controleur.php
</a><br>
<a href="../Framework/_Debug.php.html"> Debug.php
</a><br>
<a href="../Framework/_GestionnaireException.php.html"> GestionnaireException.php
</a><br>
<a href="../Framework/_Log.php.html"> Log.php
</a><br>
<a href="../Framework/_Modele.php.html"> Modele.php
</a><br>
<a href="../Framework/_Registre.php.html"> Registre.php
</a><br>
<a href="../Framework/_SquelettePhp.php.html"> SquelettePhp.php
</a><br>
<a href="../Framework/_Url.php.html"> Url.php
</a><br>
</div><br />
<b>Classes:</b><br />
<div class="package">
<a href="../Framework/Application.html">Application</a><br />
<a href="../Framework/Chronometre.html">Chronometre</a><br />
<a href="../Framework/Config.html">Config</a><br />
<a href="../Framework/Controleur.html">Controleur</a><br />
<a href="../Framework/Debug.html">Debug</a><br />
<a href="../Framework/GestionnaireException.html">GestionnaireException</a><br />
<a href="../Framework/Log.html">Log</a><br />
<a href="../Framework/Modele.html">Modele</a><br />
<a href="../Framework/Registre.html">Registre</a><br />
<a href="../Framework/SquelettePhp.html">SquelettePhp</a><br />
<a href="../Framework/Url.html">Url</a><br />
</div>
</td>
<td>
<table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top">
 
<h1>Procedural File: Application.php</h1>
Source Location: /Application.php<br /><br />
 
<br>
<br>
 
<div class="contents">
<h2>Classes:</h2>
<dt><a href="../Framework/Application.html">Application</a></dt>
<dd>Classe fournissant des informations au Framework sur l'application.</dd>
</div><br /><br />
 
<h2>Page Details:</h2>
<br /><br />
<h4>Tags:</h4>
<div class="tags">
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td><b>filesource:</b>&nbsp;&nbsp;</td><td><a href="../__filesource/fsource_Framework__Application.php.html">Source Code for this file</a></td>
</tr>
</table>
</div>
<br /><br />
<br /><br />
<br /><br />
<br />
 
<div class="credit">
<hr />
Documentation generated on Thu, 04 Mar 2010 19:27:28 +0100 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.3</a>
</div>
</td></tr></table>
</td>
</tr>
</table>
 
</body>
</html>
/tags/v0.3-aleaume/doc/HTMLSmartyConverter/Framework/_Config.php.html
New file
0,0 → 1,116
<html>
<head>
<title>Docs for page Config.php</title>
<meta http-equiv='Content-Type' content='text/html; charset=UTF-8'/>
<link rel="stylesheet" type="text/css" href="../media/style.css">
</head>
<body>
 
<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%">
<tr>
<td class="header_top">Framework</td>
</tr>
<tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr>
<tr>
<td class="header_menu">
[ <a href="../classtrees_Framework.html" class="menu">class tree: Framework</a> ]
[ <a href="../elementindex_Framework.html" class="menu">index: Framework</a> ]
[ <a href="../elementindex.html" class="menu">all elements</a> ]
</td>
</tr>
<tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr>
</table>
 
<table width="100%" border="0" cellpadding="0" cellspacing="0">
<tr valign="top">
<td width="200" class="menu">
<b>Packages:</b><br />
<a href="../li_Framework.html">Framework</a><br />
<br /><br />
<b>Files:</b><br />
<div class="package">
<a href="../Framework/_Application.php.html"> Application.php
</a><br>
<a href="../Framework/_autoload.inc.php.html"> autoload.inc.php
</a><br>
<a href="../Framework/_Chronometre.php.html"> Chronometre.php
</a><br>
<a href="../Framework/_Config.php.html"> Config.php
</a><br>
<a href="../Framework/_Controleur.php.html"> Controleur.php
</a><br>
<a href="../Framework/_Debug.php.html"> Debug.php
</a><br>
<a href="../Framework/_GestionnaireException.php.html"> GestionnaireException.php
</a><br>
<a href="../Framework/_Log.php.html"> Log.php
</a><br>
<a href="../Framework/_Modele.php.html"> Modele.php
</a><br>
<a href="../Framework/_Registre.php.html"> Registre.php
</a><br>
<a href="../Framework/_SquelettePhp.php.html"> SquelettePhp.php
</a><br>
<a href="../Framework/_Url.php.html"> Url.php
</a><br>
</div><br />
<b>Classes:</b><br />
<div class="package">
<a href="../Framework/Application.html">Application</a><br />
<a href="../Framework/Chronometre.html">Chronometre</a><br />
<a href="../Framework/Config.html">Config</a><br />
<a href="../Framework/Controleur.html">Controleur</a><br />
<a href="../Framework/Debug.html">Debug</a><br />
<a href="../Framework/GestionnaireException.html">GestionnaireException</a><br />
<a href="../Framework/Log.html">Log</a><br />
<a href="../Framework/Modele.html">Modele</a><br />
<a href="../Framework/Registre.html">Registre</a><br />
<a href="../Framework/SquelettePhp.html">SquelettePhp</a><br />
<a href="../Framework/Url.html">Url</a><br />
</div>
</td>
<td>
<table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top">
 
<h1>Procedural File: Config.php</h1>
Source Location: /Config.php<br /><br />
 
<br>
<br>
 
<div class="contents">
<h2>Classes:</h2>
<dt><a href="../Framework/Config.html">Config</a></dt>
<dd>Config permet de charger automatiquement les fichiers ini du Framework et de l'application.</dd>
</div><br /><br />
 
<h2>Page Details:</h2>
<br /><br />
<h4>Tags:</h4>
<div class="tags">
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td><b>filesource:</b>&nbsp;&nbsp;</td><td><a href="../__filesource/fsource_Framework__Config.php.html">Source Code for this file</a></td>
</tr>
</table>
</div>
<br /><br />
<br /><br />
<br /><br />
<br />
 
<div class="credit">
<hr />
Documentation generated on Thu, 04 Mar 2010 19:27:29 +0100 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.3</a>
</div>
</td></tr></table>
</td>
</tr>
</table>
 
</body>
</html>
/tags/v0.3-aleaume/doc/HTMLSmartyConverter/Framework/_Modele.php.html
New file
0,0 → 1,116
<html>
<head>
<title>Docs for page Modele.php</title>
<meta http-equiv='Content-Type' content='text/html; charset=UTF-8'/>
<link rel="stylesheet" type="text/css" href="../media/style.css">
</head>
<body>
 
<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%">
<tr>
<td class="header_top">Framework</td>
</tr>
<tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr>
<tr>
<td class="header_menu">
[ <a href="../classtrees_Framework.html" class="menu">class tree: Framework</a> ]
[ <a href="../elementindex_Framework.html" class="menu">index: Framework</a> ]
[ <a href="../elementindex.html" class="menu">all elements</a> ]
</td>
</tr>
<tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr>
</table>
 
<table width="100%" border="0" cellpadding="0" cellspacing="0">
<tr valign="top">
<td width="200" class="menu">
<b>Packages:</b><br />
<a href="../li_Framework.html">Framework</a><br />
<br /><br />
<b>Files:</b><br />
<div class="package">
<a href="../Framework/_Application.php.html"> Application.php
</a><br>
<a href="../Framework/_autoload.inc.php.html"> autoload.inc.php
</a><br>
<a href="../Framework/_Chronometre.php.html"> Chronometre.php
</a><br>
<a href="../Framework/_Config.php.html"> Config.php
</a><br>
<a href="../Framework/_Controleur.php.html"> Controleur.php
</a><br>
<a href="../Framework/_Debug.php.html"> Debug.php
</a><br>
<a href="../Framework/_GestionnaireException.php.html"> GestionnaireException.php
</a><br>
<a href="../Framework/_Log.php.html"> Log.php
</a><br>
<a href="../Framework/_Modele.php.html"> Modele.php
</a><br>
<a href="../Framework/_Registre.php.html"> Registre.php
</a><br>
<a href="../Framework/_SquelettePhp.php.html"> SquelettePhp.php
</a><br>
<a href="../Framework/_Url.php.html"> Url.php
</a><br>
</div><br />
<b>Classes:</b><br />
<div class="package">
<a href="../Framework/Application.html">Application</a><br />
<a href="../Framework/Chronometre.html">Chronometre</a><br />
<a href="../Framework/Config.html">Config</a><br />
<a href="../Framework/Controleur.html">Controleur</a><br />
<a href="../Framework/Debug.html">Debug</a><br />
<a href="../Framework/GestionnaireException.html">GestionnaireException</a><br />
<a href="../Framework/Log.html">Log</a><br />
<a href="../Framework/Modele.html">Modele</a><br />
<a href="../Framework/Registre.html">Registre</a><br />
<a href="../Framework/SquelettePhp.html">SquelettePhp</a><br />
<a href="../Framework/Url.html">Url</a><br />
</div>
</td>
<td>
<table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top">
 
<h1>Procedural File: Modele.php</h1>
Source Location: /Modele.php<br /><br />
 
<br>
<br>
 
<div class="contents">
<h2>Classes:</h2>
<dt><a href="../Framework/Modele.html">Modele</a></dt>
<dd>Classe modèle, donc d'accés au données, elle ne devrait pas être appelée de l'extérieur.</dd>
</div><br /><br />
 
<h2>Page Details:</h2>
<br /><br />
<h4>Tags:</h4>
<div class="tags">
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td><b>filesource:</b>&nbsp;&nbsp;</td><td><a href="../__filesource/fsource_Framework__Modele.php.html">Source Code for this file</a></td>
</tr>
</table>
</div>
<br /><br />
<br /><br />
<br /><br />
<br />
 
<div class="credit">
<hr />
Documentation generated on Thu, 04 Mar 2010 19:27:33 +0100 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.3</a>
</div>
</td></tr></table>
</td>
</tr>
</table>
 
</body>
</html>
/tags/v0.3-aleaume/doc/HTMLSmartyConverter/Framework/_GestionnaireException.php.html
New file
0,0 → 1,116
<html>
<head>
<title>Docs for page GestionnaireException.php</title>
<meta http-equiv='Content-Type' content='text/html; charset=UTF-8'/>
<link rel="stylesheet" type="text/css" href="../media/style.css">
</head>
<body>
 
<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%">
<tr>
<td class="header_top">Framework</td>
</tr>
<tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr>
<tr>
<td class="header_menu">
[ <a href="../classtrees_Framework.html" class="menu">class tree: Framework</a> ]
[ <a href="../elementindex_Framework.html" class="menu">index: Framework</a> ]
[ <a href="../elementindex.html" class="menu">all elements</a> ]
</td>
</tr>
<tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr>
</table>
 
<table width="100%" border="0" cellpadding="0" cellspacing="0">
<tr valign="top">
<td width="200" class="menu">
<b>Packages:</b><br />
<a href="../li_Framework.html">Framework</a><br />
<br /><br />
<b>Files:</b><br />
<div class="package">
<a href="../Framework/_Application.php.html"> Application.php
</a><br>
<a href="../Framework/_autoload.inc.php.html"> autoload.inc.php
</a><br>
<a href="../Framework/_Chronometre.php.html"> Chronometre.php
</a><br>
<a href="../Framework/_Config.php.html"> Config.php
</a><br>
<a href="../Framework/_Controleur.php.html"> Controleur.php
</a><br>
<a href="../Framework/_Debug.php.html"> Debug.php
</a><br>
<a href="../Framework/_GestionnaireException.php.html"> GestionnaireException.php
</a><br>
<a href="../Framework/_Log.php.html"> Log.php
</a><br>
<a href="../Framework/_Modele.php.html"> Modele.php
</a><br>
<a href="../Framework/_Registre.php.html"> Registre.php
</a><br>
<a href="../Framework/_SquelettePhp.php.html"> SquelettePhp.php
</a><br>
<a href="../Framework/_Url.php.html"> Url.php
</a><br>
</div><br />
<b>Classes:</b><br />
<div class="package">
<a href="../Framework/Application.html">Application</a><br />
<a href="../Framework/Chronometre.html">Chronometre</a><br />
<a href="../Framework/Config.html">Config</a><br />
<a href="../Framework/Controleur.html">Controleur</a><br />
<a href="../Framework/Debug.html">Debug</a><br />
<a href="../Framework/GestionnaireException.html">GestionnaireException</a><br />
<a href="../Framework/Log.html">Log</a><br />
<a href="../Framework/Modele.html">Modele</a><br />
<a href="../Framework/Registre.html">Registre</a><br />
<a href="../Framework/SquelettePhp.html">SquelettePhp</a><br />
<a href="../Framework/Url.html">Url</a><br />
</div>
</td>
<td>
<table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top">
 
<h1>Procedural File: GestionnaireException.php</h1>
Source Location: /GestionnaireException.php<br /><br />
 
<br>
<br>
 
<div class="contents">
<h2>Classes:</h2>
<dt><a href="../Framework/GestionnaireException.html">GestionnaireException</a></dt>
<dd>Classe de gestion des exceptions.</dd>
</div><br /><br />
 
<h2>Page Details:</h2>
<br /><br />
<h4>Tags:</h4>
<div class="tags">
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td><b>filesource:</b>&nbsp;&nbsp;</td><td><a href="../__filesource/fsource_Framework__GestionnaireException.php.html">Source Code for this file</a></td>
</tr>
</table>
</div>
<br /><br />
<br /><br />
<br /><br />
<br />
 
<div class="credit">
<hr />
Documentation generated on Thu, 04 Mar 2010 19:27:32 +0100 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.3</a>
</div>
</td></tr></table>
</td>
</tr>
</table>
 
</body>
</html>
/tags/v0.3-aleaume/doc/HTMLSmartyConverter/Framework/Controleur.html
New file
0,0 → 1,388
<html>
<head>
<title>Docs For Class Controleur</title>
<meta http-equiv='Content-Type' content='text/html; charset=UTF-8'/>
<link rel="stylesheet" type="text/css" href="../media/style.css">
</head>
<body>
 
<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%">
<tr>
<td class="header_top">Framework</td>
</tr>
<tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr>
<tr>
<td class="header_menu">
[ <a href="../classtrees_Framework.html" class="menu">class tree: Framework</a> ]
[ <a href="../elementindex_Framework.html" class="menu">index: Framework</a> ]
[ <a href="../elementindex.html" class="menu">all elements</a> ]
</td>
</tr>
<tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr>
</table>
 
<table width="100%" border="0" cellpadding="0" cellspacing="0">
<tr valign="top">
<td width="200" class="menu">
<b>Packages:</b><br />
<a href="../li_Framework.html">Framework</a><br />
<br /><br />
<b>Files:</b><br />
<div class="package">
<a href="../Framework/_Application.php.html"> Application.php
</a><br>
<a href="../Framework/_autoload.inc.php.html"> autoload.inc.php
</a><br>
<a href="../Framework/_Chronometre.php.html"> Chronometre.php
</a><br>
<a href="../Framework/_Config.php.html"> Config.php
</a><br>
<a href="../Framework/_Controleur.php.html"> Controleur.php
</a><br>
<a href="../Framework/_Debug.php.html"> Debug.php
</a><br>
<a href="../Framework/_GestionnaireException.php.html"> GestionnaireException.php
</a><br>
<a href="../Framework/_Log.php.html"> Log.php
</a><br>
<a href="../Framework/_Modele.php.html"> Modele.php
</a><br>
<a href="../Framework/_Registre.php.html"> Registre.php
</a><br>
<a href="../Framework/_SquelettePhp.php.html"> SquelettePhp.php
</a><br>
<a href="../Framework/_Url.php.html"> Url.php
</a><br>
</div><br />
<b>Classes:</b><br />
<div class="package">
<a href="../Framework/Application.html">Application</a><br />
<a href="../Framework/Chronometre.html">Chronometre</a><br />
<a href="../Framework/Config.html">Config</a><br />
<a href="../Framework/Controleur.html">Controleur</a><br />
<a href="../Framework/Debug.html">Debug</a><br />
<a href="../Framework/GestionnaireException.html">GestionnaireException</a><br />
<a href="../Framework/Log.html">Log</a><br />
<a href="../Framework/Modele.html">Modele</a><br />
<a href="../Framework/Registre.html">Registre</a><br />
<a href="../Framework/SquelettePhp.html">SquelettePhp</a><br />
<a href="../Framework/Url.html">Url</a><br />
</div>
</td>
<td>
<table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top">
 
<h1>Class: Controleur</h1>
Source Location: /Controleur.php<br /><br />
 
 
<table width="100%" border="0">
<tr><td valign="top">
 
<h3><a href="#class_details">Class Overview</a></h3>
<pre></pre><br />
<div class="description">Classe Controleur, coeur d'une application, c'est normalement la seule classe d'une application qui devrait être appelée de l'extérieur.</div><br /><br />
<h4>Author(s):</h4>
<ul>
<li>Jean-Pascal MILCENT &lt;<a href="mailto:jpm@tela-botanica.org">jpm@tela-botanica.org</a>&gt;</li>
<li>Aurélien PERONNET &lt;<a href="mailto:aurelien@tela-botanica.org">aurelien@tela-botanica.org</a>&gt;</li>
</ul>
 
 
 
 
<h4>Version:</h4>
<ul>
<li>SVN: $$Id: Controleur.php 158 2010-03-04 17:14:36Z jpm $$</li>
</ul>
 
<h4>Copyright:</h4>
<ul>
<li>2009 Tela-Botanica</li>
</ul>
</td>
 
 
 
<td valign="top">
<h3><a href="#class_methods">Methods</a></h3>
<ul>
<li><a href="../Framework/Controleur.html#method__construct">__construct</a></li>
<li><a href="../Framework/Controleur.html#methodchargerModele">chargerModele</a></li>
<li><a href="../Framework/Controleur.html#methodchargerVue">chargerVue</a></li>
<li><a href="../Framework/Controleur.html#methodgetModele">getModele</a></li>
<li><a href="../Framework/Controleur.html#methodgetVue">getVue</a></li>
</ul>
</td>
 
</tr></table>
<hr />
 
<table width="100%" border="0"><tr>
 
 
 
 
 
 
</tr></table>
<hr />
 
<a name="class_details"></a>
<h3>Class Details</h3>
<div class="tags">
[line <a href="../__filesource/fsource_Framework__Controleur.php.html#a19">19</a>]<br />
Classe Controleur, coeur d'une application, c'est normalement la seule classe d'une application qui devrait être appelée de l'extérieur.<br /><br /><p>Elle est abstraite donc doit obligatoirement être étendue.</p><br /><br /><br />
<h4>Tags:</h4>
<div class="tags">
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td><b>author:</b>&nbsp;&nbsp;</td><td>Jean-Pascal MILCENT &lt;<a href="mailto:jpm@tela-botanica.org">jpm@tela-botanica.org</a>&gt;</td>
</tr>
<tr>
<td><b>author:</b>&nbsp;&nbsp;</td><td>Aurélien PERONNET &lt;<a href="mailto:aurelien@tela-botanica.org">aurelien@tela-botanica.org</a>&gt;</td>
</tr>
<tr>
<td><b>version:</b>&nbsp;&nbsp;</td><td>SVN: $$Id: Controleur.php 158 2010-03-04 17:14:36Z jpm $$</td>
</tr>
<tr>
<td><b>copyright:</b>&nbsp;&nbsp;</td><td>2009 Tela-Botanica</td>
</tr>
<tr>
<td><b>link:</b>&nbsp;&nbsp;</td><td>/doc/framework/</td>
</tr>
<tr>
<td><b>abstract:</b>&nbsp;&nbsp;</td><td></td>
</tr>
<tr>
<td><b>license:</b>&nbsp;&nbsp;</td><td><a href="http://www.gnu.org/licenses/gpl.html">Licence GNU-GPL</a></td>
</tr>
<tr>
<td><b>license:</b>&nbsp;&nbsp;</td><td><a href="http://www.cecill.info/licences/Licence_CeCILL_V2-fr.txt">Licence CECILL</a></td>
</tr>
</table>
</div>
</div><br /><br />
<div class="top">[ <a href="#top">Top</a> ]</div><br />
 
 
<hr />
<a name="class_methods"></a>
<h3>Class Methods</h3>
<div class="tags">
 
<hr />
<a name="method__construct"></a>
<h3>constructor __construct <span class="smalllinenumber">[line <a href="../__filesource/fsource_Framework__Controleur.php.html#a28">28</a>]</span></h3>
<div class="function">
<table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border">
<table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code">
<code>Controleur __construct(
)</code>
</td></tr></table>
</td></tr></table><br />
Constructeur par défaut<br /><br /><br /><br />
<h4>Tags:</h4>
<div class="tags">
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td><b>access:</b>&nbsp;&nbsp;</td><td>public</td>
</tr>
</table>
</div>
<br /><br />
 
<div class="top">[ <a href="#top">Top</a> ]</div>
</div>
<hr />
<a name="methodchargerModele"></a>
<h3>method chargerModele <span class="smalllinenumber">[line <a href="../__filesource/fsource_Framework__Controleur.php.html#a47">47</a>]</span></h3>
<div class="function">
<table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border">
<table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code">
<code>boolean chargerModele(
string
$nom_modele)</code>
</td></tr></table>
</td></tr></table><br />
Charge un modele donné et le rend disponible sous la forme $this-&gt;nom_modele<br /><br /><br /><br />
<h4>Tags:</h4>
<div class="tags">
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td><b>return:</b>&nbsp;&nbsp;</td><td>false si le chargement a échoué, sinon true.</td>
</tr>
<tr>
<td><b>access:</b>&nbsp;&nbsp;</td><td>protected</td>
</tr>
</table>
</div>
<br /><br />
 
<h4>Parameters:</h4>
<div class="tags">
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td class="type">string&nbsp;&nbsp;</td>
<td><b>$nom_modele</b>&nbsp;&nbsp;</td>
<td>le nom du modèle à charger</td>
</tr>
</table>
</div><br />
<div class="top">[ <a href="#top">Top</a> ]</div>
</div>
<hr />
<a name="methodchargerVue"></a>
<h3>method chargerVue <span class="smalllinenumber">[line <a href="../__filesource/fsource_Framework__Controleur.php.html#a102">102</a>]</span></h3>
<div class="function">
<table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border">
<table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code">
<code>boolean chargerVue(
String
$nom_squelette, [Array
$donnees = array()])</code>
</td></tr></table>
</td></tr></table><br />
Fonction prenant en paramètre le nom d'un squelette et un tableau associatif de données, en extrait les variables, charge le squelette et crée une variable de classe portant le nom du squelette contenant les deux combinés.<br /><br /><br /><br />
<h4>Tags:</h4>
<div class="tags">
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td><b>return:</b>&nbsp;&nbsp;</td><td>false si la vue n'existe pas, sinon true.</td>
</tr>
<tr>
<td><b>access:</b>&nbsp;&nbsp;</td><td>protected</td>
</tr>
</table>
</div>
<br /><br />
 
<h4>Parameters:</h4>
<div class="tags">
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td class="type">String&nbsp;&nbsp;</td>
<td><b>$nom_squelette</b>&nbsp;&nbsp;</td>
<td>le nom du squelette</td>
</tr>
<tr>
<td class="type">Array&nbsp;&nbsp;</td>
<td><b>$donnees</b>&nbsp;&nbsp;</td>
<td>un tableau associatif contenant les variables a injecter dans la vue</td>
</tr>
</table>
</div><br />
<div class="top">[ <a href="#top">Top</a> ]</div>
</div>
<hr />
<a name="methodgetModele"></a>
<h3>method getModele <span class="smalllinenumber">[line <a href="../__filesource/fsource_Framework__Controleur.php.html#a65">65</a>]</span></h3>
<div class="function">
<table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border">
<table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code">
<code>mixed getModele(
string
$nom_modele)</code>
</td></tr></table>
</td></tr></table><br />
Retourne un modele donné<br /><br /><br /><br />
<h4>Tags:</h4>
<div class="tags">
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td><b>return:</b>&nbsp;&nbsp;</td><td>false si le chargement a échoué, sinon l'objet du modèle demandé.</td>
</tr>
<tr>
<td><b>access:</b>&nbsp;&nbsp;</td><td>protected</td>
</tr>
</table>
</div>
<br /><br />
 
<h4>Parameters:</h4>
<div class="tags">
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td class="type">string&nbsp;&nbsp;</td>
<td><b>$nom_modele</b>&nbsp;&nbsp;</td>
<td>le nom du modèle à charger</td>
</tr>
</table>
</div><br />
<div class="top">[ <a href="#top">Top</a> ]</div>
</div>
<hr />
<a name="methodgetVue"></a>
<h3>method getVue <span class="smalllinenumber">[line <a href="../__filesource/fsource_Framework__Controleur.php.html#a86">86</a>]</span></h3>
<div class="function">
<table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border">
<table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code">
<code>boolean getVue(
String
$nom_squelette, [Array
$donnees = array()])</code>
</td></tr></table>
</td></tr></table><br />
Fonction prenant en paramètre le nom d'un squelette et un tableau associatif de données, en extrait les variables, charge le squelette et retourne le résultat des deux combinés.<br /><br /><br /><br />
<h4>Tags:</h4>
<div class="tags">
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td><b>return:</b>&nbsp;&nbsp;</td><td>false si la vue n'existe pas, sinon la chaine résultat.</td>
</tr>
<tr>
<td><b>access:</b>&nbsp;&nbsp;</td><td>protected</td>
</tr>
</table>
</div>
<br /><br />
 
<h4>Parameters:</h4>
<div class="tags">
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td class="type">String&nbsp;&nbsp;</td>
<td><b>$nom_squelette</b>&nbsp;&nbsp;</td>
<td>le nom du squelette</td>
</tr>
<tr>
<td class="type">Array&nbsp;&nbsp;</td>
<td><b>$donnees</b>&nbsp;&nbsp;</td>
<td>un tableau associatif contenant les variables a injecter dans la vue</td>
</tr>
</table>
</div><br />
<div class="top">[ <a href="#top">Top</a> ]</div>
</div>
</div><br />
 
 
<div class="credit">
<hr />
Documentation generated on Thu, 04 Mar 2010 19:27:31 +0100 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.3</a>
</div>
</td></tr></table>
</td>
</tr>
</table>
 
</body>
</html>
/tags/v0.3-aleaume/doc/HTMLSmartyConverter/Framework/Url.html
New file
0,0 → 1,1320
<html>
<head>
<title>Docs For Class Url</title>
<meta http-equiv='Content-Type' content='text/html; charset=UTF-8'/>
<link rel="stylesheet" type="text/css" href="../media/style.css">
</head>
<body>
 
<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%">
<tr>
<td class="header_top">Framework</td>
</tr>
<tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr>
<tr>
<td class="header_menu">
[ <a href="../classtrees_Framework.html" class="menu">class tree: Framework</a> ]
[ <a href="../elementindex_Framework.html" class="menu">index: Framework</a> ]
[ <a href="../elementindex.html" class="menu">all elements</a> ]
</td>
</tr>
<tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr>
</table>
 
<table width="100%" border="0" cellpadding="0" cellspacing="0">
<tr valign="top">
<td width="200" class="menu">
<b>Packages:</b><br />
<a href="../li_Framework.html">Framework</a><br />
<br /><br />
<b>Files:</b><br />
<div class="package">
<a href="../Framework/_Application.php.html"> Application.php
</a><br>
<a href="../Framework/_autoload.inc.php.html"> autoload.inc.php
</a><br>
<a href="../Framework/_Chronometre.php.html"> Chronometre.php
</a><br>
<a href="../Framework/_Config.php.html"> Config.php
</a><br>
<a href="../Framework/_Controleur.php.html"> Controleur.php
</a><br>
<a href="../Framework/_Debug.php.html"> Debug.php
</a><br>
<a href="../Framework/_GestionnaireException.php.html"> GestionnaireException.php
</a><br>
<a href="../Framework/_Log.php.html"> Log.php
</a><br>
<a href="../Framework/_Modele.php.html"> Modele.php
</a><br>
<a href="../Framework/_Registre.php.html"> Registre.php
</a><br>
<a href="../Framework/_SquelettePhp.php.html"> SquelettePhp.php
</a><br>
<a href="../Framework/_Url.php.html"> Url.php
</a><br>
</div><br />
<b>Classes:</b><br />
<div class="package">
<a href="../Framework/Application.html">Application</a><br />
<a href="../Framework/Chronometre.html">Chronometre</a><br />
<a href="../Framework/Config.html">Config</a><br />
<a href="../Framework/Controleur.html">Controleur</a><br />
<a href="../Framework/Debug.html">Debug</a><br />
<a href="../Framework/GestionnaireException.html">GestionnaireException</a><br />
<a href="../Framework/Log.html">Log</a><br />
<a href="../Framework/Modele.html">Modele</a><br />
<a href="../Framework/Registre.html">Registre</a><br />
<a href="../Framework/SquelettePhp.html">SquelettePhp</a><br />
<a href="../Framework/Url.html">Url</a><br />
</div>
</td>
<td>
<table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top">
 
<h1>Class: Url</h1>
Source Location: /Url.php<br /><br />
 
 
<table width="100%" border="0">
<tr><td valign="top">
 
<h3><a href="#class_details">Class Overview</a></h3>
<pre></pre><br />
<div class="description">classe Url, gérant le découpage des paramètres, leurs modification etc...</div><br /><br />
<h4>Author(s):</h4>
<ul>
<li>Jean-Pascal MILCENT &lt;<a href="mailto:jpm@tela-botanica.org">jpm@tela-botanica.org</a>&gt;</li>
<li>Christian Schmidt &lt;<a href="mailto:schmidt@php.net">schmidt@php.net</a>&gt;</li>
<li>Aurélien PERONNET &lt;<a href="mailto:aurelien@tela-botanica.org">aurelien@tela-botanica.org</a>&gt;</li>
</ul>
 
 
 
 
<h4>Version:</h4>
<ul>
<li>SVN: $Id: Url.php 150 2010-03-03 15:49:06Z jpm $</li>
</ul>
 
<h4>Copyright:</h4>
<ul>
<li>2009 Tela-Botanica</li>
</ul>
</td>
 
 
<td valign="top">
<h3><a href="#class_consts">Constants</a></h3>
<ul>
<li><a href="../Framework/Url.html#constOPTION_ENCODER_CLES">OPTION_ENCODER_CLES</a></li>
<li><a href="../Framework/Url.html#constOPTION_SEPARATEUR_ENTREE">OPTION_SEPARATEUR_ENTREE</a></li>
<li><a href="../Framework/Url.html#constOPTION_SEPARATEUR_SORTIE">OPTION_SEPARATEUR_SORTIE</a></li>
<li><a href="../Framework/Url.html#constOPTION_STRICTE">OPTION_STRICTE</a></li>
<li><a href="../Framework/Url.html#constOPTION_UTILISER_CROCHETS">OPTION_UTILISER_CROCHETS</a></li>
</ul>
</td>
 
<td valign="top">
<h3><a href="#class_methods">Methods</a></h3>
<ul>
<li><a href="../Framework/Url.html#method__construct">__construct</a></li>
<li><a href="../Framework/Url.html#methodetreAbsolue">etreAbsolue</a></li>
<li><a href="../Framework/Url.html#methodgetAutorite">getAutorite</a></li>
<li><a href="../Framework/Url.html#methodgetCanonique">getCanonique</a></li>
<li><a href="../Framework/Url.html#methodgetChemin">getChemin</a></li>
<li><a href="../Framework/Url.html#methodgetDemande">getDemande</a></li>
<li><a href="../Framework/Url.html#methodgetFragment">getFragment</a></li>
<li><a href="../Framework/Url.html#methodgetHote">getHote</a></li>
<li><a href="../Framework/Url.html#methodgetInfoUtilisateur">getInfoUtilisateur</a></li>
<li><a href="../Framework/Url.html#methodgetMotDePasse">getMotDePasse</a></li>
<li><a href="../Framework/Url.html#methodgetOption">getOption</a></li>
<li><a href="../Framework/Url.html#methodgetPort">getPort</a></li>
<li><a href="../Framework/Url.html#methodgetRequete">getRequete</a></li>
<li><a href="../Framework/Url.html#methodgetSchema">getSchema</a></li>
<li><a href="../Framework/Url.html#methodgetURL">getURL</a></li>
<li><a href="../Framework/Url.html#methodgetURLDemande">getURLDemande</a></li>
<li><a href="../Framework/Url.html#methodgetURLNormalisee">getURLNormalisee</a></li>
<li><a href="../Framework/Url.html#methodgetUtilisateur">getUtilisateur</a></li>
<li><a href="../Framework/Url.html#methodgetVariablesRequete">getVariablesRequete</a></li>
<li><a href="../Framework/Url.html#methodnormaliser">normaliser</a></li>
<li><a href="../Framework/Url.html#methodresoudre">resoudre</a></li>
<li><a href="../Framework/Url.html#methodsetAutorite">setAutorite</a></li>
<li><a href="../Framework/Url.html#methodsetChemin">setChemin</a></li>
<li><a href="../Framework/Url.html#methodsetFragment">setFragment</a></li>
<li><a href="../Framework/Url.html#methodsetHote">setHote</a></li>
<li><a href="../Framework/Url.html#methodsetInfoUtilisateur">setInfoUtilisateur</a></li>
<li><a href="../Framework/Url.html#methodsetOption">setOption</a></li>
<li><a href="../Framework/Url.html#methodsetPort">setPort</a></li>
<li><a href="../Framework/Url.html#methodsetRequete">setRequete</a></li>
<li><a href="../Framework/Url.html#methodsetSchema">setSchema</a></li>
<li><a href="../Framework/Url.html#methodsetVariableRequete">setVariableRequete</a></li>
<li><a href="../Framework/Url.html#methodsetVariablesRequete">setVariablesRequete</a></li>
<li><a href="../Framework/Url.html#methodunsetVariableRequete">unsetVariableRequete</a></li>
<li><a href="../Framework/Url.html#method__toString">__toString</a></li>
</ul>
</td>
 
</tr></table>
<hr />
 
<table width="100%" border="0"><tr>
 
 
 
 
 
 
</tr></table>
<hr />
 
<a name="class_details"></a>
<h3>Class Details</h3>
<div class="tags">
[line <a href="../__filesource/fsource_Framework__Url.php.html#a21">21</a>]<br />
classe Url, gérant le découpage des paramètres, leurs modification etc...<br /><br /><p>Traduction et conversion d'une classe (NET_Url2) issue de Pear</p><br /><br /><br />
<h4>Tags:</h4>
<div class="tags">
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td><b>author:</b>&nbsp;&nbsp;</td><td>Jean-Pascal MILCENT &lt;<a href="mailto:jpm@tela-botanica.org">jpm@tela-botanica.org</a>&gt;</td>
</tr>
<tr>
<td><b>author:</b>&nbsp;&nbsp;</td><td>Christian Schmidt &lt;<a href="mailto:schmidt@php.net">schmidt@php.net</a>&gt;</td>
</tr>
<tr>
<td><b>author:</b>&nbsp;&nbsp;</td><td>Aurélien PERONNET &lt;<a href="mailto:aurelien@tela-botanica.org">aurelien@tela-botanica.org</a>&gt;</td>
</tr>
<tr>
<td><b>version:</b>&nbsp;&nbsp;</td><td>SVN: $Id: Url.php 150 2010-03-03 15:49:06Z jpm $</td>
</tr>
<tr>
<td><b>copyright:</b>&nbsp;&nbsp;</td><td>2009 Tela-Botanica</td>
</tr>
<tr>
<td><b>link:</b>&nbsp;&nbsp;</td><td>/doc/framework/</td>
</tr>
<tr>
<td><b>license:</b>&nbsp;&nbsp;</td><td><a href="http://www.gnu.org/licenses/gpl.html">Licence GNU-GPL</a></td>
</tr>
<tr>
<td><b>license:</b>&nbsp;&nbsp;</td><td><a href="http://www.cecill.info/licences/Licence_CeCILL_V2-fr.txt">Licence CECILL</a></td>
</tr>
</table>
</div>
</div><br /><br />
<div class="top">[ <a href="#top">Top</a> ]</div><br />
 
 
<hr />
<a name="class_methods"></a>
<h3>Class Methods</h3>
<div class="tags">
<hr />
<a name="methodgetCanonique"></a>
<h3>static method getCanonique <span class="smalllinenumber">[line <a href="../__filesource/fsource_Framework__Url.php.html#a678">678</a>]</span></h3>
<div class="function">
<table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border">
<table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code">
<code>static string getCanonique(
)</code>
</td></tr></table>
</td></tr></table><br />
Renvoie une instance de Url representant l'URL canonique du script PHP en cours d'éxécution<br /><br /><br /><br />
<h4>Tags:</h4>
<div class="tags">
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td><b>access:</b>&nbsp;&nbsp;</td><td>public</td>
</tr>
</table>
</div>
<br /><br />
 
<div class="top">[ <a href="#top">Top</a> ]</div>
</div>
<hr />
<a name="methodgetDemande"></a>
<h3>static method getDemande <span class="smalllinenumber">[line <a href="../__filesource/fsource_Framework__Url.php.html#a712">712</a>]</span></h3>
<div class="function">
<table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border">
<table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code">
<code>static <a href="../Framework/Url.html">Url</a> getDemande(
)</code>
</td></tr></table>
</td></tr></table><br />
Renvoie une instance de Url representant l'URL utilisée pour récupérer la requête en cours<br /><br /><br /><br />
<h4>Tags:</h4>
<div class="tags">
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td><b>access:</b>&nbsp;&nbsp;</td><td>public</td>
</tr>
</table>
</div>
<br /><br />
 
<div class="top">[ <a href="#top">Top</a> ]</div>
</div>
<hr />
<a name="methodgetURLDemande"></a>
<h3>static method getURLDemande <span class="smalllinenumber">[line <a href="../__filesource/fsource_Framework__Url.php.html#a702">702</a>]</span></h3>
<div class="function">
<table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border">
<table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code">
<code>static string getURLDemande(
)</code>
</td></tr></table>
</td></tr></table><br />
Renvoie l'URL utilisée pour récupérer la requête en cours<br /><br /><br /><br />
<h4>Tags:</h4>
<div class="tags">
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td><b>access:</b>&nbsp;&nbsp;</td><td>public</td>
</tr>
</table>
</div>
<br /><br />
 
<div class="top">[ <a href="#top">Top</a> ]</div>
</div>
 
<hr />
<a name="method__construct"></a>
<h3>constructor __construct <span class="smalllinenumber">[line <a href="../__filesource/fsource_Framework__Url.php.html#a102">102</a>]</span></h3>
<div class="function">
<table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border">
<table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code">
<code>Url __construct(
string
$url, [array
$options = null])</code>
</td></tr></table>
</td></tr></table><br />
<br /><br />
<h4>Tags:</h4>
<div class="tags">
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td><b>access:</b>&nbsp;&nbsp;</td><td>public</td>
</tr>
</table>
</div>
<br /><br />
 
<h4>Parameters:</h4>
<div class="tags">
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td class="type">string&nbsp;&nbsp;</td>
<td><b>$url</b>&nbsp;&nbsp;</td>
<td>une URL relative ou absolue</td>
</tr>
<tr>
<td class="type">array&nbsp;&nbsp;</td>
<td><b>$options</b>&nbsp;&nbsp;</td>
<td></td>
</tr>
</table>
</div><br />
<div class="top">[ <a href="#top">Top</a> ]</div>
</div>
<hr />
<a name="methodetreAbsolue"></a>
<h3>method etreAbsolue <span class="smalllinenumber">[line <a href="../__filesource/fsource_Framework__Url.php.html#a546">546</a>]</span></h3>
<div class="function">
<table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border">
<table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code">
<code>bool etreAbsolue(
)</code>
</td></tr></table>
</td></tr></table><br />
Renvoie vrai ou faux suivant que l'instance en cours représente une URL relative ou absolue.<br /><br /><br /><br />
<h4>Tags:</h4>
<div class="tags">
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td><b>access:</b>&nbsp;&nbsp;</td><td>public</td>
</tr>
</table>
</div>
<br /><br />
 
<div class="top">[ <a href="#top">Top</a> ]</div>
</div>
<hr />
<a name="methodgetAutorite"></a>
<h3>method getAutorite <span class="smalllinenumber">[line <a href="../__filesource/fsource_Framework__Url.php.html#a248">248</a>]</span></h3>
<div class="function">
<table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border">
<table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code">
<code>string|bool getAutorite(
)</code>
</td></tr></table>
</td></tr></table><br />
Renvoie la partie autorité, i.e. [ infoUtilisateur &quot;@&quot; ] hote [ &quot;:&quot; port ], ou false si celle-ci est absente.<br /><br /><br /><br />
<h4>Tags:</h4>
<div class="tags">
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td><b>access:</b>&nbsp;&nbsp;</td><td>public</td>
</tr>
</table>
</div>
<br /><br />
 
<div class="top">[ <a href="#top">Top</a> ]</div>
</div>
<hr />
<a name="methodgetChemin"></a>
<h3>method getChemin <span class="smalllinenumber">[line <a href="../__filesource/fsource_Framework__Url.php.html#a295">295</a>]</span></h3>
<div class="function">
<table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border">
<table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code">
<code>string getChemin(
)</code>
</td></tr></table>
</td></tr></table><br />
Renvoie la partie chemin (chemin) (éventuellement vide).<br /><br /><br /><br />
<h4>Tags:</h4>
<div class="tags">
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td><b>access:</b>&nbsp;&nbsp;</td><td>public</td>
</tr>
</table>
</div>
<br /><br />
 
<div class="top">[ <a href="#top">Top</a> ]</div>
</div>
<hr />
<a name="methodgetFragment"></a>
<h3>method getFragment <span class="smalllinenumber">[line <a href="../__filesource/fsource_Framework__Url.php.html#a334">334</a>]</span></h3>
<div class="function">
<table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border">
<table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code">
<code>string|bool getFragment(
)</code>
</td></tr></table>
</td></tr></table><br />
Renvoie le nom du fragment, ou false si &quot;#&quot; n'est pas present dans l'URL.<br /><br /><br /><br />
<h4>Tags:</h4>
<div class="tags">
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td><b>access:</b>&nbsp;&nbsp;</td><td>public</td>
</tr>
</table>
</div>
<br /><br />
 
<div class="top">[ <a href="#top">Top</a> ]</div>
</div>
<hr />
<a name="methodgetHote"></a>
<h3>method getHote <span class="smalllinenumber">[line <a href="../__filesource/fsource_Framework__Url.php.html#a210">210</a>]</span></h3>
<div class="function">
<table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border">
<table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code">
<code>string|bool getHote(
)</code>
</td></tr></table>
</td></tr></table><br />
Renvoie la partie hôte, ou false s'il n'y a pas de partie autorité, c.a.d.<br /><br /><p>l'URL est relative.</p><br /><br /><br />
<h4>Tags:</h4>
<div class="tags">
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td><b>access:</b>&nbsp;&nbsp;</td><td>public</td>
</tr>
</table>
</div>
<br /><br />
 
<div class="top">[ <a href="#top">Top</a> ]</div>
</div>
<hr />
<a name="methodgetInfoUtilisateur"></a>
<h3>method getInfoUtilisateur <span class="smalllinenumber">[line <a href="../__filesource/fsource_Framework__Url.php.html#a184">184</a>]</span></h3>
<div class="function">
<table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border">
<table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code">
<code>string|bool getInfoUtilisateur(
)</code>
</td></tr></table>
</td></tr></table><br />
Renvoie la partie userinfio, ou false si celle-ci n'existe pas, i.e. si la partie autorité ne contient pas de &quot;@&quot;<br /><br /><br /><br />
<h4>Tags:</h4>
<div class="tags">
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td><b>access:</b>&nbsp;&nbsp;</td><td>public</td>
</tr>
</table>
</div>
<br /><br />
 
<div class="top">[ <a href="#top">Top</a> ]</div>
</div>
<hr />
<a name="methodgetMotDePasse"></a>
<h3>method getMotDePasse <span class="smalllinenumber">[line <a href="../__filesource/fsource_Framework__Url.php.html#a174">174</a>]</span></h3>
<div class="function">
<table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border">
<table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code">
<code>string|bool getMotDePasse(
)</code>
</td></tr></table>
</td></tr></table><br />
renvoie la partie mot de passe de la partie infoUtilisateur (partie après le premier &quot;:&quot;), , ou false si aucune partie infoUtilisateur n'est définie (i.e. l'URL ne contient pas de &quot;@&quot; en face du nom d'hôte) ou si la partie infoUtilisateur ne contient pas de &quot;:&quot;.<br /><br /><br /><br />
<h4>Tags:</h4>
<div class="tags">
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td><b>access:</b>&nbsp;&nbsp;</td><td>public</td>
</tr>
</table>
</div>
<br /><br />
 
<div class="top">[ <a href="#top">Top</a> ]</div>
</div>
<hr />
<a name="methodgetOption"></a>
<h3>method getOption <span class="smalllinenumber">[line <a href="../__filesource/fsource_Framework__Url.php.html#a751">751</a>]</span></h3>
<div class="function">
<table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border">
<table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code">
<code>mixed getOption(
string
$nomOption)</code>
</td></tr></table>
</td></tr></table><br />
Renvoie la valeur de l'option specifiée.<br /><br /><br /><br />
 
<h4>Parameters:</h4>
<div class="tags">
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td class="type">string&nbsp;&nbsp;</td>
<td><b>$nomOption</b>&nbsp;&nbsp;</td>
<td>Nom de l'option demandée</td>
</tr>
</table>
</div><br />
<div class="top">[ <a href="#top">Top</a> ]</div>
</div>
<hr />
<a name="methodgetPort"></a>
<h3>method getPort <span class="smalllinenumber">[line <a href="../__filesource/fsource_Framework__Url.php.html#a229">229</a>]</span></h3>
<div class="function">
<table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border">
<table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code">
<code>int|bool getPort(
)</code>
</td></tr></table>
</td></tr></table><br />
Renvoie le numéro de port, ou false si aucun numéro de port n'est spécifié, i.e. le port par défaut doit utilisé.<br /><br /><br /><br />
<h4>Tags:</h4>
<div class="tags">
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td><b>access:</b>&nbsp;&nbsp;</td><td>public</td>
</tr>
</table>
</div>
<br /><br />
 
<div class="top">[ <a href="#top">Top</a> ]</div>
</div>
<hr />
<a name="methodgetRequete"></a>
<h3>method getRequete <span class="smalllinenumber">[line <a href="../__filesource/fsource_Framework__Url.php.html#a315">315</a>]</span></h3>
<div class="function">
<table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border">
<table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code">
<code>string|bool getRequete(
)</code>
</td></tr></table>
</td></tr></table><br />
renvoie la chaine de requête (requete string) (sans le premier &quot;?&quot;), ou false si &quot;?&quot; n'est pas présent dans l'url.<br /><br /><br /><br />
<h4>Tags:</h4>
<div class="tags">
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td><b>see:</b>&nbsp;&nbsp;</td><td>self::getVariablesRequete()</td>
</tr>
<tr>
<td><b>access:</b>&nbsp;&nbsp;</td><td>public</td>
</tr>
</table>
</div>
<br /><br />
 
<div class="top">[ <a href="#top">Top</a> ]</div>
</div>
<hr />
<a name="methodgetSchema"></a>
<h3>method getSchema <span class="smalllinenumber">[line <a href="../__filesource/fsource_Framework__Url.php.html#a143">143</a>]</span></h3>
<div class="function">
<table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border">
<table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code">
<code>string|bool getSchema(
)</code>
</td></tr></table>
</td></tr></table><br />
Retourne le schéma, c.a.d. &quot;http&quot; ou &quot;urn&quot;, ou false si aucun schéma n'est spécifié, i.e. l'url est une url relative<br /><br /><br /><br />
<h4>Tags:</h4>
<div class="tags">
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td><b>access:</b>&nbsp;&nbsp;</td><td>public</td>
</tr>
</table>
</div>
<br /><br />
 
<div class="top">[ <a href="#top">Top</a> ]</div>
</div>
<hr />
<a name="methodgetURL"></a>
<h3>method getURL <span class="smalllinenumber">[line <a href="../__filesource/fsource_Framework__Url.php.html#a462">462</a>]</span></h3>
<div class="function">
<table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border">
<table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code">
<code>string getURL(
)</code>
</td></tr></table>
</td></tr></table><br />
Renvoie un représentation sous forme de chaine de l'URL<br /><br /><br /><br />
<h4>Tags:</h4>
<div class="tags">
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td><b>access:</b>&nbsp;&nbsp;</td><td>public</td>
</tr>
</table>
</div>
<br /><br />
 
<div class="top">[ <a href="#top">Top</a> ]</div>
</div>
<hr />
<a name="methodgetURLNormalisee"></a>
<h3>method getURLNormalisee <span class="smalllinenumber">[line <a href="../__filesource/fsource_Framework__Url.php.html#a493">493</a>]</span></h3>
<div class="function">
<table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border">
<table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code">
<code>string getURLNormalisee(
)</code>
</td></tr></table>
</td></tr></table><br />
Renvoie une représentation de cette URL sous forme de chaine normalisée. Utile pour la comparaison d'URLs<br /><br /><br /><br />
<h4>Tags:</h4>
<div class="tags">
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td><b>access:</b>&nbsp;&nbsp;</td><td>public</td>
</tr>
</table>
</div>
<br /><br />
 
<div class="top">[ <a href="#top">Top</a> ]</div>
</div>
<hr />
<a name="methodgetUtilisateur"></a>
<h3>method getUtilisateur <span class="smalllinenumber">[line <a href="../__filesource/fsource_Framework__Url.php.html#a163">163</a>]</span></h3>
<div class="function">
<table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border">
<table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code">
<code>string|bool getUtilisateur(
)</code>
</td></tr></table>
</td></tr></table><br />
renvoie la partie user de la partie infoUtilisateur (partie précédant le premier &quot;:&quot;), ou false si aucune partie infoUtilisateur n'est définie.<br /><br /><br /><br />
<h4>Tags:</h4>
<div class="tags">
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td><b>access:</b>&nbsp;&nbsp;</td><td>public</td>
</tr>
</table>
</div>
<br /><br />
 
<div class="top">[ <a href="#top">Top</a> ]</div>
</div>
<hr />
<a name="methodgetVariablesRequete"></a>
<h3>method getVariablesRequete <span class="smalllinenumber">[line <a href="../__filesource/fsource_Framework__Url.php.html#a353">353</a>]</span></h3>
<div class="function">
<table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border">
<table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code">
<code>array getVariablesRequete(
)</code>
</td></tr></table>
</td></tr></table><br />
Renvoie la requete string sous forme d'un tableau de variables telles qu'elles apparaitraient dans le $_GET d'un script PHP<br /><br /><br /><br />
<h4>Tags:</h4>
<div class="tags">
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td><b>access:</b>&nbsp;&nbsp;</td><td>public</td>
</tr>
</table>
</div>
<br /><br />
 
<div class="top">[ <a href="#top">Top</a> ]</div>
</div>
<hr />
<a name="methodnormaliser"></a>
<h3>method normaliser <span class="smalllinenumber">[line <a href="../__filesource/fsource_Framework__Url.php.html#a504">504</a>]</span></h3>
<div class="function">
<table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border">
<table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code">
<code><a href="../Framework/Url.html">Url</a> normaliser(
)</code>
</td></tr></table>
</td></tr></table><br />
Renvoie une instance normalisée de Url<br /><br /><br /><br />
<h4>Tags:</h4>
<div class="tags">
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td><b>access:</b>&nbsp;&nbsp;</td><td>public</td>
</tr>
</table>
</div>
<br /><br />
 
<div class="top">[ <a href="#top">Top</a> ]</div>
</div>
<hr />
<a name="methodresoudre"></a>
<h3>method resoudre <span class="smalllinenumber">[line <a href="../__filesource/fsource_Framework__Url.php.html#a558">558</a>]</span></h3>
<div class="function">
<table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border">
<table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code">
<code><a href="../Framework/Url.html">Url</a> resoudre(
<a href="../Framework/Url.html">Url</a>|string
$reference)</code>
</td></tr></table>
</td></tr></table><br />
Renvoie une instance de Url représentant une URL absolue relative à cette URL.<br /><br /><br /><br />
<h4>Tags:</h4>
<div class="tags">
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td><b>access:</b>&nbsp;&nbsp;</td><td>public</td>
</tr>
</table>
</div>
<br /><br />
 
<h4>Parameters:</h4>
<div class="tags">
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td class="type"><a href="../Framework/Url.html">Url</a>|string&nbsp;&nbsp;</td>
<td><b>$reference</b>&nbsp;&nbsp;</td>
<td>URL relative</td>
</tr>
</table>
</div><br />
<div class="top">[ <a href="#top">Top</a> ]</div>
</div>
<hr />
<a name="methodsetAutorite"></a>
<h3>method setAutorite <span class="smalllinenumber">[line <a href="../__filesource/fsource_Framework__Url.php.html#a273">273</a>]</span></h3>
<div class="function">
<table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border">
<table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code">
<code>void setAutorite(
string|false
$autorite)</code>
</td></tr></table>
</td></tr></table><br />
<br /><br />
<h4>Tags:</h4>
<div class="tags">
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td><b>access:</b>&nbsp;&nbsp;</td><td>public</td>
</tr>
</table>
</div>
<br /><br />
 
<h4>Parameters:</h4>
<div class="tags">
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td class="type">string|false&nbsp;&nbsp;</td>
<td><b>$autorite</b>&nbsp;&nbsp;</td>
<td></td>
</tr>
</table>
</div><br />
<div class="top">[ <a href="#top">Top</a> ]</div>
</div>
<hr />
<a name="methodsetChemin"></a>
<h3>method setChemin <span class="smalllinenumber">[line <a href="../__filesource/fsource_Framework__Url.php.html#a304">304</a>]</span></h3>
<div class="function">
<table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border">
<table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code">
<code>void setChemin(
string
$chemin)</code>
</td></tr></table>
</td></tr></table><br />
<br /><br />
<h4>Tags:</h4>
<div class="tags">
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td><b>access:</b>&nbsp;&nbsp;</td><td>public</td>
</tr>
</table>
</div>
<br /><br />
 
<h4>Parameters:</h4>
<div class="tags">
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td class="type">string&nbsp;&nbsp;</td>
<td><b>$chemin</b>&nbsp;&nbsp;</td>
<td></td>
</tr>
</table>
</div><br />
<div class="top">[ <a href="#top">Top</a> ]</div>
</div>
<hr />
<a name="methodsetFragment"></a>
<h3>method setFragment <span class="smalllinenumber">[line <a href="../__filesource/fsource_Framework__Url.php.html#a343">343</a>]</span></h3>
<div class="function">
<table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border">
<table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code">
<code>void setFragment(
string|bool
$fragment)</code>
</td></tr></table>
</td></tr></table><br />
<br /><br />
<h4>Tags:</h4>
<div class="tags">
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td><b>access:</b>&nbsp;&nbsp;</td><td>public</td>
</tr>
</table>
</div>
<br /><br />
 
<h4>Parameters:</h4>
<div class="tags">
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td class="type">string|bool&nbsp;&nbsp;</td>
<td><b>$fragment</b>&nbsp;&nbsp;</td>
<td></td>
</tr>
</table>
</div><br />
<div class="top">[ <a href="#top">Top</a> ]</div>
</div>
<hr />
<a name="methodsetHote"></a>
<h3>method setHote <span class="smalllinenumber">[line <a href="../__filesource/fsource_Framework__Url.php.html#a219">219</a>]</span></h3>
<div class="function">
<table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border">
<table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code">
<code>void setHote(
string|bool
$hote)</code>
</td></tr></table>
</td></tr></table><br />
<br /><br />
<h4>Tags:</h4>
<div class="tags">
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td><b>access:</b>&nbsp;&nbsp;</td><td>public</td>
</tr>
</table>
</div>
<br /><br />
 
<h4>Parameters:</h4>
<div class="tags">
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td class="type">string|bool&nbsp;&nbsp;</td>
<td><b>$hote</b>&nbsp;&nbsp;</td>
<td></td>
</tr>
</table>
</div><br />
<div class="top">[ <a href="#top">Top</a> ]</div>
</div>
<hr />
<a name="methodsetInfoUtilisateur"></a>
<h3>method setInfoUtilisateur <span class="smalllinenumber">[line <a href="../__filesource/fsource_Framework__Url.php.html#a197">197</a>]</span></h3>
<div class="function">
<table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border">
<table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code">
<code>void setInfoUtilisateur(
string|bool
$infoUtilisateur, [string|bool
$motDePasse = false])</code>
</td></tr></table>
</td></tr></table><br />
Setteur pour la partie infoUtilisateur. Si deux argument sont passé, ils sont combinés dans la partie infoUtilisateur de cette manière username &quot;:&quot; password.<br /><br /><br /><br />
<h4>Tags:</h4>
<div class="tags">
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td><b>access:</b>&nbsp;&nbsp;</td><td>public</td>
</tr>
</table>
</div>
<br /><br />
 
<h4>Parameters:</h4>
<div class="tags">
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td class="type">string|bool&nbsp;&nbsp;</td>
<td><b>$infoUtilisateur</b>&nbsp;&nbsp;</td>
<td>infoUtilisateur ou username</td>
</tr>
<tr>
<td class="type">string|bool&nbsp;&nbsp;</td>
<td><b>$motDePasse</b>&nbsp;&nbsp;</td>
<td></td>
</tr>
</table>
</div><br />
<div class="top">[ <a href="#top">Top</a> ]</div>
</div>
<hr />
<a name="methodsetOption"></a>
<h3>method setOption <span class="smalllinenumber">[line <a href="../__filesource/fsource_Framework__Url.php.html#a737">737</a>]</span></h3>
<div class="function">
<table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border">
<table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code">
<code>void setOption(
string
$nomOption, mixed
$valeur)</code>
</td></tr></table>
</td></tr></table><br />
Met à jour la valeur de l'option spécifiée.<br /><br /><br /><br />
<h4>Tags:</h4>
<div class="tags">
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td><b>see:</b>&nbsp;&nbsp;</td><td>self::OPTION_ENCODER_CLES</td>
</tr>
<tr>
<td><b>see:</b>&nbsp;&nbsp;</td><td>self::OPTION_UTILISER_CROCHETS</td>
</tr>
<tr>
<td><b>see:</b>&nbsp;&nbsp;</td><td>self::OPTION_STRICTE</td>
</tr>
</table>
</div>
<br /><br />
 
<h4>Parameters:</h4>
<div class="tags">
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td class="type">string&nbsp;&nbsp;</td>
<td><b>$nomOption</b>&nbsp;&nbsp;</td>
<td>une des constantes commençant par self::OPTION_</td>
</tr>
<tr>
<td class="type">mixed&nbsp;&nbsp;</td>
<td><b>$valeur</b>&nbsp;&nbsp;</td>
<td>valeur de l'option</td>
</tr>
</table>
</div><br />
<div class="top">[ <a href="#top">Top</a> ]</div>
</div>
<hr />
<a name="methodsetPort"></a>
<h3>method setPort <span class="smalllinenumber">[line <a href="../__filesource/fsource_Framework__Url.php.html#a238">238</a>]</span></h3>
<div class="function">
<table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border">
<table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code">
<code>void setPort(
int|bool
$port)</code>
</td></tr></table>
</td></tr></table><br />
<br /><br />
<h4>Tags:</h4>
<div class="tags">
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td><b>access:</b>&nbsp;&nbsp;</td><td>public</td>
</tr>
</table>
</div>
<br /><br />
 
<h4>Parameters:</h4>
<div class="tags">
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td class="type">int|bool&nbsp;&nbsp;</td>
<td><b>$port</b>&nbsp;&nbsp;</td>
<td></td>
</tr>
</table>
</div><br />
<div class="top">[ <a href="#top">Top</a> ]</div>
</div>
<hr />
<a name="methodsetRequete"></a>
<h3>method setRequete <span class="smalllinenumber">[line <a href="../__filesource/fsource_Framework__Url.php.html#a325">325</a>]</span></h3>
<div class="function">
<table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border">
<table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code">
<code>void setRequete(
string|bool
$requete)</code>
</td></tr></table>
</td></tr></table><br />
<br /><br />
<h4>Tags:</h4>
<div class="tags">
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td><b>see:</b>&nbsp;&nbsp;</td><td>self::setVariablesRequete()</td>
</tr>
<tr>
<td><b>access:</b>&nbsp;&nbsp;</td><td>public</td>
</tr>
</table>
</div>
<br /><br />
 
<h4>Parameters:</h4>
<div class="tags">
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td class="type">string|bool&nbsp;&nbsp;</td>
<td><b>$requete</b>&nbsp;&nbsp;</td>
<td></td>
</tr>
</table>
</div><br />
<div class="top">[ <a href="#top">Top</a> ]</div>
</div>
<hr />
<a name="methodsetSchema"></a>
<h3>method setSchema <span class="smalllinenumber">[line <a href="../__filesource/fsource_Framework__Url.php.html#a153">153</a>]</span></h3>
<div class="function">
<table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border">
<table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code">
<code>void setSchema(
string|bool
$schema)</code>
</td></tr></table>
</td></tr></table><br />
<br /><br />
<h4>Tags:</h4>
<div class="tags">
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td><b>see:</b>&nbsp;&nbsp;</td><td><a href="../Framework/Url.html#methodgetSchema">Url::getSchema()</a></td>
</tr>
<tr>
<td><b>access:</b>&nbsp;&nbsp;</td><td>public</td>
</tr>
</table>
</div>
<br /><br />
 
<h4>Parameters:</h4>
<div class="tags">
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td class="type">string|bool&nbsp;&nbsp;</td>
<td><b>$schema</b>&nbsp;&nbsp;</td>
<td></td>
</tr>
</table>
</div><br />
<div class="top">[ <a href="#top">Top</a> ]</div>
</div>
<hr />
<a name="methodsetVariableRequete"></a>
<h3>method setVariableRequete <span class="smalllinenumber">[line <a href="../__filesource/fsource_Framework__Url.php.html#a440">440</a>]</span></h3>
<div class="function">
<table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border">
<table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code">
<code>array setVariableRequete(
string
$nom, mixed
$valeur)</code>
</td></tr></table>
</td></tr></table><br />
<br /><br />
<h4>Tags:</h4>
<div class="tags">
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td><b>access:</b>&nbsp;&nbsp;</td><td>public</td>
</tr>
</table>
</div>
<br /><br />
 
<h4>Parameters:</h4>
<div class="tags">
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td class="type">string&nbsp;&nbsp;</td>
<td><b>$nom</b>&nbsp;&nbsp;</td>
<td></td>
</tr>
<tr>
<td class="type">mixed&nbsp;&nbsp;</td>
<td><b>$valeur</b>&nbsp;&nbsp;</td>
<td></td>
</tr>
</table>
</div><br />
<div class="top">[ <a href="#top">Top</a> ]</div>
</div>
<hr />
<a name="methodsetVariablesRequete"></a>
<h3>method setVariablesRequete <span class="smalllinenumber">[line <a href="../__filesource/fsource_Framework__Url.php.html#a408">408</a>]</span></h3>
<div class="function">
<table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border">
<table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code">
<code>void setVariablesRequete(
 
$tableau)</code>
</td></tr></table>
</td></tr></table><br />
<br /><br />
<h4>Tags:</h4>
<div class="tags">
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td><b>access:</b>&nbsp;&nbsp;</td><td>public</td>
</tr>
</table>
</div>
<br /><br />
 
<h4>Parameters:</h4>
<div class="tags">
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td class="type">array&nbsp;&nbsp;</td>
<td><b>$tableau</b>&nbsp;&nbsp;</td>
<td>(nom =&gt; valeur) tableau</td>
</tr>
</table>
</div><br />
<div class="top">[ <a href="#top">Top</a> ]</div>
</div>
<hr />
<a name="methodunsetVariableRequete"></a>
<h3>method unsetVariableRequete <span class="smalllinenumber">[line <a href="../__filesource/fsource_Framework__Url.php.html#a451">451</a>]</span></h3>
<div class="function">
<table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border">
<table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code">
<code>void unsetVariableRequete(
string
$nom)</code>
</td></tr></table>
</td></tr></table><br />
<br /><br />
<h4>Tags:</h4>
<div class="tags">
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td><b>access:</b>&nbsp;&nbsp;</td><td>public</td>
</tr>
</table>
</div>
<br /><br />
 
<h4>Parameters:</h4>
<div class="tags">
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td class="type">string&nbsp;&nbsp;</td>
<td><b>$nom</b>&nbsp;&nbsp;</td>
<td></td>
</tr>
</table>
</div><br />
<div class="top">[ <a href="#top">Top</a> ]</div>
</div>
<hr />
<a name="method__toString"></a>
<h3>method __toString <span class="smalllinenumber">[line <a href="../__filesource/fsource_Framework__Url.php.html#a756">756</a>]</span></h3>
<div class="function">
<table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border">
<table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code">
<code>void __toString(
)</code>
</td></tr></table>
</td></tr></table><br />
<br /><br />
<h4>Tags:</h4>
<div class="tags">
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td><b>access:</b>&nbsp;&nbsp;</td><td>public</td>
</tr>
</table>
</div>
<br /><br />
 
<div class="top">[ <a href="#top">Top</a> ]</div>
</div>
</div><br />
 
<hr />
<a name="class_consts"></a>
<h3>Class Constants</h3>
<div class="tags">
<a name="constOPTION_ENCODER_CLES"></a>
<p></p>
<h4>OPTION_ENCODER_CLES = <span class="value">&nbsp;'encode_keys'</span></h4>
<p>[line <a href="../__filesource/fsource_Framework__Url.php.html#a37">37</a>]</p>
URL-encoder les clés des variables dans les requêtes. Par défaut à true.<br /><br />
<br />
<div class="top">[ <a href="#top">Top</a> ]</div><br />
<a name="constOPTION_SEPARATEUR_ENTREE"></a>
<p></p>
<h4>OPTION_SEPARATEUR_ENTREE = <span class="value">&nbsp;'input_separator'</span></h4>
<p>[line <a href="../__filesource/fsource_Framework__Url.php.html#a44">44</a>]</p>
Séparateurs de variables lors du parsing de la requête. Chaque caractère est considéré comme un séparateur. Par défaut, spécifié par le paramêtre arg_separator.input dans php.ini (par défaut &quot;&amp;&quot;).<br /><br />
<br />
<div class="top">[ <a href="#top">Top</a> ]</div><br />
<a name="constOPTION_SEPARATEUR_SORTIE"></a>
<p></p>
<h4>OPTION_SEPARATEUR_SORTIE = <span class="value">&nbsp;'output_separator'</span></h4>
<p>[line <a href="../__filesource/fsource_Framework__Url.php.html#a50">50</a>]</p>
Séparateur de variables lors de la génération de la requête. Par défaut, spécifié par le paramètre arg_separator.output dans php.ini (par défaut &quot;&amp;&quot;).<br /><br />
<br />
<div class="top">[ <a href="#top">Top</a> ]</div><br />
<a name="constOPTION_STRICTE"></a>
<p></p>
<h4>OPTION_STRICTE = <span class="value">&nbsp;'strict'</span></h4>
<p>[line <a href="../__filesource/fsource_Framework__Url.php.html#a27">27</a>]</p>
Parsing strict dans resoudre() (voir RFC 3986, section 5.2.2). Par défaut à true.<br /><br />
<br />
<div class="top">[ <a href="#top">Top</a> ]</div><br />
<a name="constOPTION_UTILISER_CROCHETS"></a>
<p></p>
<h4>OPTION_UTILISER_CROCHETS = <span class="value">&nbsp;'use_brackets'</span></h4>
<p>[line <a href="../__filesource/fsource_Framework__Url.php.html#a32">32</a>]</p>
Répresenter les tableaux dans les requêtes en utilisant la notation php []. Par défaut à true.<br /><br />
<br />
<div class="top">[ <a href="#top">Top</a> ]</div><br />
</div><br />
 
<div class="credit">
<hr />
Documentation generated on Thu, 04 Mar 2010 19:27:38 +0100 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.3</a>
</div>
</td></tr></table>
</td>
</tr>
</table>
 
</body>
</html>
/tags/v0.3-aleaume/doc/HTMLSmartyConverter/Framework/Application.html
New file
0,0 → 1,320
<html>
<head>
<title>Docs For Class Application</title>
<meta http-equiv='Content-Type' content='text/html; charset=UTF-8'/>
<link rel="stylesheet" type="text/css" href="../media/style.css">
</head>
<body>
 
<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%">
<tr>
<td class="header_top">Framework</td>
</tr>
<tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr>
<tr>
<td class="header_menu">
[ <a href="../classtrees_Framework.html" class="menu">class tree: Framework</a> ]
[ <a href="../elementindex_Framework.html" class="menu">index: Framework</a> ]
[ <a href="../elementindex.html" class="menu">all elements</a> ]
</td>
</tr>
<tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr>
</table>
 
<table width="100%" border="0" cellpadding="0" cellspacing="0">
<tr valign="top">
<td width="200" class="menu">
<b>Packages:</b><br />
<a href="../li_Framework.html">Framework</a><br />
<br /><br />
<b>Files:</b><br />
<div class="package">
<a href="../Framework/_Application.php.html"> Application.php
</a><br>
<a href="../Framework/_autoload.inc.php.html"> autoload.inc.php
</a><br>
<a href="../Framework/_Chronometre.php.html"> Chronometre.php
</a><br>
<a href="../Framework/_Config.php.html"> Config.php
</a><br>
<a href="../Framework/_Controleur.php.html"> Controleur.php
</a><br>
<a href="../Framework/_Debug.php.html"> Debug.php
</a><br>
<a href="../Framework/_GestionnaireException.php.html"> GestionnaireException.php
</a><br>
<a href="../Framework/_Log.php.html"> Log.php
</a><br>
<a href="../Framework/_Modele.php.html"> Modele.php
</a><br>
<a href="../Framework/_Registre.php.html"> Registre.php
</a><br>
<a href="../Framework/_SquelettePhp.php.html"> SquelettePhp.php
</a><br>
<a href="../Framework/_Url.php.html"> Url.php
</a><br>
</div><br />
<b>Classes:</b><br />
<div class="package">
<a href="../Framework/Application.html">Application</a><br />
<a href="../Framework/Chronometre.html">Chronometre</a><br />
<a href="../Framework/Config.html">Config</a><br />
<a href="../Framework/Controleur.html">Controleur</a><br />
<a href="../Framework/Debug.html">Debug</a><br />
<a href="../Framework/GestionnaireException.html">GestionnaireException</a><br />
<a href="../Framework/Log.html">Log</a><br />
<a href="../Framework/Modele.html">Modele</a><br />
<a href="../Framework/Registre.html">Registre</a><br />
<a href="../Framework/SquelettePhp.html">SquelettePhp</a><br />
<a href="../Framework/Url.html">Url</a><br />
</div>
</td>
<td>
<table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top">
 
<h1>Class: Application</h1>
Source Location: /Application.php<br /><br />
 
 
<table width="100%" border="0">
<tr><td valign="top">
 
<h3><a href="#class_details">Class Overview</a></h3>
<pre></pre><br />
<div class="description">Classe fournissant des informations au Framework sur l'application.</div><br /><br />
<h4>Author(s):</h4>
<ul>
<li>Jean-Pascal MILCENT &lt;<a href="mailto:jpm@tela-botanica.org">jpm@tela-botanica.org</a>&gt;</li>
</ul>
 
 
 
 
<h4>Version:</h4>
<ul>
<li>$$Id: Application.php 153 2010-03-04 10:48:32Z jpm $$</li>
</ul>
 
<h4>Copyright:</h4>
<ul>
<li>1999-2009 Tela Botanica (accueil@tela-botanica.org)</li>
</ul>
</td>
 
 
 
<td valign="top">
<h3><a href="#class_methods">Methods</a></h3>
<ul>
<li><a href="../Framework/Application.html#methodgetChemin">getChemin</a></li>
<li><a href="../Framework/Application.html#methodgetInfo">getInfo</a></li>
<li><a href="../Framework/Application.html#methodsetChemin">setChemin</a></li>
<li><a href="../Framework/Application.html#methodsetInfo">setInfo</a></li>
</ul>
</td>
 
</tr></table>
<hr />
 
<table width="100%" border="0"><tr>
 
 
 
 
 
 
</tr></table>
<hr />
 
<a name="class_details"></a>
<h3>Class Details</h3>
<div class="tags">
[line <a href="../__filesource/fsource_Framework__Application.php.html#a18">18</a>]<br />
Classe fournissant des informations au Framework sur l'application.<br /><br /><p>PHP version 5</p><br /><br /><br />
<h4>Tags:</h4>
<div class="tags">
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td><b>author:</b>&nbsp;&nbsp;</td><td>Jean-Pascal MILCENT &lt;<a href="mailto:jpm@tela-botanica.org">jpm@tela-botanica.org</a>&gt;</td>
</tr>
<tr>
<td><b>version:</b>&nbsp;&nbsp;</td><td>$$Id: Application.php 153 2010-03-04 10:48:32Z jpm $$</td>
</tr>
<tr>
<td><b>copyright:</b>&nbsp;&nbsp;</td><td>1999-2009 Tela Botanica (accueil@tela-botanica.org)</td>
</tr>
<tr>
<td><b>license:</b>&nbsp;&nbsp;</td><td>GPL</td>
</tr>
<tr>
<td><b>license:</b>&nbsp;&nbsp;</td><td>CECILL</td>
</tr>
</table>
</div>
</div><br /><br />
<div class="top">[ <a href="#top">Top</a> ]</div><br />
 
 
<hr />
<a name="class_methods"></a>
<h3>Class Methods</h3>
<div class="tags">
<hr />
<a name="methodgetChemin"></a>
<h3>static method getChemin <span class="smalllinenumber">[line <a href="../__filesource/fsource_Framework__Application.php.html#a49">49</a>]</span></h3>
<div class="function">
<table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border">
<table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code">
<code>static string getChemin(
)</code>
</td></tr></table>
</td></tr></table><br />
accesseur pour le chemin<br /><br /><br /><br />
<h4>Tags:</h4>
<div class="tags">
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td><b>return:</b>&nbsp;&nbsp;</td><td>le chemin</td>
</tr>
<tr>
<td><b>access:</b>&nbsp;&nbsp;</td><td>public</td>
</tr>
</table>
</div>
<br /><br />
 
<div class="top">[ <a href="#top">Top</a> ]</div>
</div>
<hr />
<a name="methodgetInfo"></a>
<h3>static method getInfo <span class="smalllinenumber">[line <a href="../__filesource/fsource_Framework__Application.php.html#a73">73</a>]</span></h3>
<div class="function">
<table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border">
<table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code">
<code>static void getInfo(
[string
$cle = null])</code>
</td></tr></table>
</td></tr></table><br />
accesseur pour le tableau d'infos<br /><br /><br /><br />
<h4>Tags:</h4>
<div class="tags">
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td><b>access:</b>&nbsp;&nbsp;</td><td>public</td>
</tr>
</table>
</div>
<br /><br />
 
<h4>Parameters:</h4>
<div class="tags">
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td class="type">string&nbsp;&nbsp;</td>
<td><b>$cle</b>&nbsp;&nbsp;</td>
<td>la clé à laquelle on veut accéder</td>
</tr>
</table>
</div><br />
<div class="top">[ <a href="#top">Top</a> ]</div>
</div>
<hr />
<a name="methodsetChemin"></a>
<h3>static method setChemin <span class="smalllinenumber">[line <a href="../__filesource/fsource_Framework__Application.php.html#a33">33</a>]</span></h3>
<div class="function">
<table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border">
<table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code">
<code>static void setChemin(
string
$chemin_fichier_principal)</code>
</td></tr></table>
</td></tr></table><br />
Modificateur pour le chemin de base<br /><br /><br /><br />
<h4>Tags:</h4>
<div class="tags">
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td><b>access:</b>&nbsp;&nbsp;</td><td>public</td>
</tr>
</table>
</div>
<br /><br />
 
<h4>Parameters:</h4>
<div class="tags">
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td class="type">string&nbsp;&nbsp;</td>
<td><b>$chemin_fichier_principal</b>&nbsp;&nbsp;</td>
<td>chemin de base</td>
</tr>
</table>
</div><br />
<div class="top">[ <a href="#top">Top</a> ]</div>
</div>
<hr />
<a name="methodsetInfo"></a>
<h3>static method setInfo <span class="smalllinenumber">[line <a href="../__filesource/fsource_Framework__Application.php.html#a61">61</a>]</span></h3>
<div class="function">
<table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border">
<table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code">
<code>static void setInfo(
array
$info)</code>
</td></tr></table>
</td></tr></table><br />
Le tableau des informations sur l'application possède les clés suivantes :<br /><br /><p><ul><li>nom : nom de l'application</li><li>abr : abréviation de l'application</li><li>encodage : encodage de l'application (ISO-8859-15, UTF-8...)</li></ul></p><br /><br /><br />
<h4>Tags:</h4>
<div class="tags">
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td><b>access:</b>&nbsp;&nbsp;</td><td>public</td>
</tr>
</table>
</div>
<br /><br />
 
<h4>Parameters:</h4>
<div class="tags">
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td class="type">array&nbsp;&nbsp;</td>
<td><b>$info</b>&nbsp;&nbsp;</td>
<td>tableau fournissant des informations sur l'application</td>
</tr>
</table>
</div><br />
<div class="top">[ <a href="#top">Top</a> ]</div>
</div>
 
</div><br />
 
 
<div class="credit">
<hr />
Documentation generated on Thu, 04 Mar 2010 19:27:28 +0100 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.3</a>
</div>
</td></tr></table>
</td>
</tr>
</table>
 
</body>
</html>
/tags/v0.3-aleaume/doc/HTMLSmartyConverter/Framework/_autoload.inc.php.html
New file
0,0 → 1,201
<html>
<head>
<title>Docs for page autoload.inc.php</title>
<meta http-equiv='Content-Type' content='text/html; charset=UTF-8'/>
<link rel="stylesheet" type="text/css" href="../media/style.css">
</head>
<body>
 
<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%">
<tr>
<td class="header_top">Framework</td>
</tr>
<tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr>
<tr>
<td class="header_menu">
[ <a href="../classtrees_Framework.html" class="menu">class tree: Framework</a> ]
[ <a href="../elementindex_Framework.html" class="menu">index: Framework</a> ]
[ <a href="../elementindex.html" class="menu">all elements</a> ]
</td>
</tr>
<tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr>
</table>
 
<table width="100%" border="0" cellpadding="0" cellspacing="0">
<tr valign="top">
<td width="200" class="menu">
<b>Packages:</b><br />
<a href="../li_Framework.html">Framework</a><br />
<br /><br />
<b>Files:</b><br />
<div class="package">
<a href="../Framework/_Application.php.html"> Application.php
</a><br>
<a href="../Framework/_autoload.inc.php.html"> autoload.inc.php
</a><br>
<a href="../Framework/_Chronometre.php.html"> Chronometre.php
</a><br>
<a href="../Framework/_Config.php.html"> Config.php
</a><br>
<a href="../Framework/_Controleur.php.html"> Controleur.php
</a><br>
<a href="../Framework/_Debug.php.html"> Debug.php
</a><br>
<a href="../Framework/_GestionnaireException.php.html"> GestionnaireException.php
</a><br>
<a href="../Framework/_Log.php.html"> Log.php
</a><br>
<a href="../Framework/_Modele.php.html"> Modele.php
</a><br>
<a href="../Framework/_Registre.php.html"> Registre.php
</a><br>
<a href="../Framework/_SquelettePhp.php.html"> SquelettePhp.php
</a><br>
<a href="../Framework/_Url.php.html"> Url.php
</a><br>
</div><br />
<b>Classes:</b><br />
<div class="package">
<a href="../Framework/Application.html">Application</a><br />
<a href="../Framework/Chronometre.html">Chronometre</a><br />
<a href="../Framework/Config.html">Config</a><br />
<a href="../Framework/Controleur.html">Controleur</a><br />
<a href="../Framework/Debug.html">Debug</a><br />
<a href="../Framework/GestionnaireException.html">GestionnaireException</a><br />
<a href="../Framework/Log.html">Log</a><br />
<a href="../Framework/Modele.html">Modele</a><br />
<a href="../Framework/Registre.html">Registre</a><br />
<a href="../Framework/SquelettePhp.html">SquelettePhp</a><br />
<a href="../Framework/Url.html">Url</a><br />
</div>
</td>
<td>
<table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top">
 
<h1>Procedural File: autoload.inc.php</h1>
Source Location: /autoload.inc.php<br /><br />
 
<br>
<br>
 
 
<h2>Page Details:</h2>
Fichier contenant la fonction de chargement automatique de classes, il doit toujours rester à la racine du framework car il initialise le chemin de l'application en se basant sur son propre emplacement.<br /><br /><p>PHP Version 5.1.2</p><br /><br /><br />
<h4>Tags:</h4>
<div class="tags">
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td><b>author:</b>&nbsp;&nbsp;</td><td>Jean-Pascal MILCENT &lt;<a href="mailto:jpm@tela-botanica.org">jpm@tela-botanica.org</a>&gt;</td>
</tr>
<tr>
<td><b>author:</b>&nbsp;&nbsp;</td><td>Aurelien PERONNET &lt;<a href="mailto:aurelien@tela-botanica.org">aurelien@tela-botanica.org</a>&gt;</td>
</tr>
<tr>
<td><b>version:</b>&nbsp;&nbsp;</td><td>$$Id: autoload.inc.php 153 2010-03-04 10:48:32Z jpm $$</td>
</tr>
<tr>
<td><b>copyright:</b>&nbsp;&nbsp;</td><td>1999-2009 Tela Botanica (accueil@tela-botanica.org)</td>
</tr>
<tr>
<td><b>filesource:</b>&nbsp;&nbsp;</td><td><a href="../__filesource/fsource_Framework__autoload.inc.php.html">Source Code for this file</a></td>
</tr>
<tr>
<td><b>license:</b>&nbsp;&nbsp;</td><td>GPL</td>
</tr>
<tr>
<td><b>license:</b>&nbsp;&nbsp;</td><td>CECILL</td>
</tr>
</table>
</div>
<br /><br />
<br /><br />
<br /><br />
<hr />
<a name="defineDS"></a>
<h3>DS <span class="smalllinenumber">[line <a href="../__filesource/fsource_Framework__autoload.inc.php.html#a23">23</a>]</span></h3>
<div class="tags">
<table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border">
<table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code">
<code>DS = DIRECTORY_SEPARATOR</code>
</td></tr></table>
</td></tr></table>
 
<br />
</div>
<div class="top">[ <a href="#top">Top</a> ]</div><br /><br />
<hr />
<a name="definePS"></a>
<h3>PS <span class="smalllinenumber">[line <a href="../__filesource/fsource_Framework__autoload.inc.php.html#a27">27</a>]</span></h3>
<div class="tags">
<table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border">
<table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code">
<code>PS = PATH_SEPARATOR</code>
</td></tr></table>
</td></tr></table>
 
<br />
</div>
<div class="top">[ <a href="#top">Top</a> ]</div><br /><br />
<br />
<hr />
<a name="functionautoloadAppliDefaut"></a>
<h3>autoloadAppliDefaut <span class="smalllinenumber">[line <a href="../__filesource/fsource_Framework__autoload.inc.php.html#a48">48</a>]</span></h3>
<div class="function">
<table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border">
<table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code">
<code>void autoloadAppliDefaut(
$nom_classe)</code>
</td></tr></table>
</td></tr></table><br />
 
<br /><br />
<h4>Parameters</h4>
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td class="type">&nbsp;&nbsp;</td>
<td><b>$nom_classe</b>&nbsp;&nbsp;</td>
<td></td>
</tr>
</table>
<div class="top">[ <a href="#top">Top</a> ]</div><br /><br />
</div>
<hr />
<a name="functionautoloadFw"></a>
<h3>autoloadFw <span class="smalllinenumber">[line <a href="../__filesource/fsource_Framework__autoload.inc.php.html#a31">31</a>]</span></h3>
<div class="function">
<table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border">
<table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code">
<code>void autoloadFw(
$nom_classe_fw)</code>
</td></tr></table>
</td></tr></table><br />
 
<br /><br />
<h4>Parameters</h4>
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td class="type">&nbsp;&nbsp;</td>
<td><b>$nom_classe_fw</b>&nbsp;&nbsp;</td>
<td></td>
</tr>
</table>
<div class="top">[ <a href="#top">Top</a> ]</div><br /><br />
</div>
 
<div class="credit">
<hr />
Documentation generated on Thu, 04 Mar 2010 19:27:28 +0100 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.3</a>
</div>
</td></tr></table>
</td>
</tr>
</table>
 
</body>
</html>
/tags/v0.3-aleaume/doc/HTMLSmartyConverter/Framework/Config.html
New file
0,0 → 1,300
<html>
<head>
<title>Docs For Class Config</title>
<meta http-equiv='Content-Type' content='text/html; charset=UTF-8'/>
<link rel="stylesheet" type="text/css" href="../media/style.css">
</head>
<body>
 
<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%">
<tr>
<td class="header_top">Framework</td>
</tr>
<tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr>
<tr>
<td class="header_menu">
[ <a href="../classtrees_Framework.html" class="menu">class tree: Framework</a> ]
[ <a href="../elementindex_Framework.html" class="menu">index: Framework</a> ]
[ <a href="../elementindex.html" class="menu">all elements</a> ]
</td>
</tr>
<tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr>
</table>
 
<table width="100%" border="0" cellpadding="0" cellspacing="0">
<tr valign="top">
<td width="200" class="menu">
<b>Packages:</b><br />
<a href="../li_Framework.html">Framework</a><br />
<br /><br />
<b>Files:</b><br />
<div class="package">
<a href="../Framework/_Application.php.html"> Application.php
</a><br>
<a href="../Framework/_autoload.inc.php.html"> autoload.inc.php
</a><br>
<a href="../Framework/_Chronometre.php.html"> Chronometre.php
</a><br>
<a href="../Framework/_Config.php.html"> Config.php
</a><br>
<a href="../Framework/_Controleur.php.html"> Controleur.php
</a><br>
<a href="../Framework/_Debug.php.html"> Debug.php
</a><br>
<a href="../Framework/_GestionnaireException.php.html"> GestionnaireException.php
</a><br>
<a href="../Framework/_Log.php.html"> Log.php
</a><br>
<a href="../Framework/_Modele.php.html"> Modele.php
</a><br>
<a href="../Framework/_Registre.php.html"> Registre.php
</a><br>
<a href="../Framework/_SquelettePhp.php.html"> SquelettePhp.php
</a><br>
<a href="../Framework/_Url.php.html"> Url.php
</a><br>
</div><br />
<b>Classes:</b><br />
<div class="package">
<a href="../Framework/Application.html">Application</a><br />
<a href="../Framework/Chronometre.html">Chronometre</a><br />
<a href="../Framework/Config.html">Config</a><br />
<a href="../Framework/Controleur.html">Controleur</a><br />
<a href="../Framework/Debug.html">Debug</a><br />
<a href="../Framework/GestionnaireException.html">GestionnaireException</a><br />
<a href="../Framework/Log.html">Log</a><br />
<a href="../Framework/Modele.html">Modele</a><br />
<a href="../Framework/Registre.html">Registre</a><br />
<a href="../Framework/SquelettePhp.html">SquelettePhp</a><br />
<a href="../Framework/Url.html">Url</a><br />
</div>
</td>
<td>
<table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top">
 
<h1>Class: Config</h1>
Source Location: /Config.php<br /><br />
 
 
<table width="100%" border="0">
<tr><td valign="top">
 
<h3><a href="#class_details">Class Overview</a></h3>
<pre></pre><br />
<div class="description">Config permet de charger automatiquement les fichiers ini du Framework et de l'application.</div><br /><br />
<h4>Author(s):</h4>
<ul>
<li>Jean-Pascal MILCENT &lt;<a href="mailto:jpm@tela-botanica.org">jpm@tela-botanica.org</a>&gt;</li>
</ul>
 
 
 
 
<h4>Version:</h4>
<ul>
<li>SVN: &lt;svn_id&gt;</li>
</ul>
 
<h4>Copyright:</h4>
<ul>
<li>2009 Tela-Botanica</li>
</ul>
</td>
 
 
 
<td valign="top">
<h3><a href="#class_methods">Methods</a></h3>
<ul>
<li><a href="../Framework/Config.html#methodcharger">charger</a></li>
<li><a href="../Framework/Config.html#methodexiste">existe</a></li>
<li><a href="../Framework/Config.html#methodget">get</a></li>
</ul>
</td>
 
</tr></table>
<hr />
 
<table width="100%" border="0"><tr>
 
 
 
 
 
 
</tr></table>
<hr />
 
<a name="class_details"></a>
<h3>Class Details</h3>
<div class="tags">
[line <a href="../__filesource/fsource_Framework__Config.php.html#a19">19</a>]<br />
Config permet de charger automatiquement les fichiers ini du Framework et de l'application.<br /><br /><p>Elle offre l'accès en lecture seule aux paramètres de config. C'est une Singleton.</p><p>PHP Version 5</p><br /><br /><br />
<h4>Tags:</h4>
<div class="tags">
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td><b>author:</b>&nbsp;&nbsp;</td><td>Jean-Pascal MILCENT &lt;<a href="mailto:jpm@tela-botanica.org">jpm@tela-botanica.org</a>&gt;</td>
</tr>
<tr>
<td><b>version:</b>&nbsp;&nbsp;</td><td>SVN: &lt;svn_id&gt;</td>
</tr>
<tr>
<td><b>copyright:</b>&nbsp;&nbsp;</td><td>2009 Tela-Botanica</td>
</tr>
<tr>
<td><b>link:</b>&nbsp;&nbsp;</td><td>/doc/framework/</td>
</tr>
<tr>
<td><b>license:</b>&nbsp;&nbsp;</td><td>GPL-v3</td>
</tr>
</table>
</div>
</div><br /><br />
<div class="top">[ <a href="#top">Top</a> ]</div><br />
 
 
<hr />
<a name="class_methods"></a>
<h3>Class Methods</h3>
<div class="tags">
<hr />
<a name="methodcharger"></a>
<h3>static method charger <span class="smalllinenumber">[line <a href="../__filesource/fsource_Framework__Config.php.html#a244">244</a>]</span></h3>
<div class="function">
<table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border">
<table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code">
<code>static array charger(
string
$fichier_ini)</code>
</td></tr></table>
</td></tr></table><br />
Charge un fichier ini dans le tableau des paramètres de l'appli<br /><br /><br /><br />
<h4>Tags:</h4>
<div class="tags">
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td><b>return:</b>&nbsp;&nbsp;</td><td>le fichier ini parsé</td>
</tr>
<tr>
<td><b>access:</b>&nbsp;&nbsp;</td><td>public</td>
</tr>
</table>
</div>
<br /><br />
 
<h4>Parameters:</h4>
<div class="tags">
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td class="type">string&nbsp;&nbsp;</td>
<td><b>$fichier_ini</b>&nbsp;&nbsp;</td>
<td>le nom du fichier à charger</td>
</tr>
</table>
</div><br />
<div class="top">[ <a href="#top">Top</a> ]</div>
</div>
<hr />
<a name="methodexiste"></a>
<h3>static method existe <span class="smalllinenumber">[line <a href="../__filesource/fsource_Framework__Config.php.html#a264">264</a>]</span></h3>
<div class="function">
<table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border">
<table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code">
<code>static boolean existe(
string
$param)</code>
</td></tr></table>
</td></tr></table><br />
Vérifie si la valeur d'un paramètre existe<br /><br /><br /><br />
<h4>Tags:</h4>
<div class="tags">
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td><b>return:</b>&nbsp;&nbsp;</td><td>vrai si le paramètre existe, false sinon</td>
</tr>
<tr>
<td><b>access:</b>&nbsp;&nbsp;</td><td>public</td>
</tr>
</table>
</div>
<br /><br />
 
<h4>Parameters:</h4>
<div class="tags">
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td class="type">string&nbsp;&nbsp;</td>
<td><b>$param</b>&nbsp;&nbsp;</td>
<td>le nom du paramètre</td>
</tr>
</table>
</div><br />
<div class="top">[ <a href="#top">Top</a> ]</div>
</div>
<hr />
<a name="methodget"></a>
<h3>static method get <span class="smalllinenumber">[line <a href="../__filesource/fsource_Framework__Config.php.html#a254">254</a>]</span></h3>
<div class="function">
<table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border">
<table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code">
<code>static string get(
[string
$param = null])</code>
</td></tr></table>
</td></tr></table><br />
Acesseur pour la valeur d'un paramètre<br /><br /><br /><br />
<h4>Tags:</h4>
<div class="tags">
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td><b>return:</b>&nbsp;&nbsp;</td><td>la valeur du paramètre</td>
</tr>
<tr>
<td><b>access:</b>&nbsp;&nbsp;</td><td>public</td>
</tr>
</table>
</div>
<br /><br />
 
<h4>Parameters:</h4>
<div class="tags">
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td class="type">string&nbsp;&nbsp;</td>
<td><b>$param</b>&nbsp;&nbsp;</td>
<td>le nom du paramètre</td>
</tr>
</table>
</div><br />
<div class="top">[ <a href="#top">Top</a> ]</div>
</div>
 
</div><br />
 
 
<div class="credit">
<hr />
Documentation generated on Thu, 04 Mar 2010 19:27:30 +0100 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.3</a>
</div>
</td></tr></table>
</td>
</tr>
</table>
 
</body>
</html>
/tags/v0.3-aleaume/doc/HTMLSmartyConverter/Framework/Modele.html
New file
0,0 → 1,430
<html>
<head>
<title>Docs For Class Modele</title>
<meta http-equiv='Content-Type' content='text/html; charset=UTF-8'/>
<link rel="stylesheet" type="text/css" href="../media/style.css">
</head>
<body>
 
<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%">
<tr>
<td class="header_top">Framework</td>
</tr>
<tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr>
<tr>
<td class="header_menu">
[ <a href="../classtrees_Framework.html" class="menu">class tree: Framework</a> ]
[ <a href="../elementindex_Framework.html" class="menu">index: Framework</a> ]
[ <a href="../elementindex.html" class="menu">all elements</a> ]
</td>
</tr>
<tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr>
</table>
 
<table width="100%" border="0" cellpadding="0" cellspacing="0">
<tr valign="top">
<td width="200" class="menu">
<b>Packages:</b><br />
<a href="../li_Framework.html">Framework</a><br />
<br /><br />
<b>Files:</b><br />
<div class="package">
<a href="../Framework/_Application.php.html"> Application.php
</a><br>
<a href="../Framework/_autoload.inc.php.html"> autoload.inc.php
</a><br>
<a href="../Framework/_Chronometre.php.html"> Chronometre.php
</a><br>
<a href="../Framework/_Config.php.html"> Config.php
</a><br>
<a href="../Framework/_Controleur.php.html"> Controleur.php
</a><br>
<a href="../Framework/_Debug.php.html"> Debug.php
</a><br>
<a href="../Framework/_GestionnaireException.php.html"> GestionnaireException.php
</a><br>
<a href="../Framework/_Log.php.html"> Log.php
</a><br>
<a href="../Framework/_Modele.php.html"> Modele.php
</a><br>
<a href="../Framework/_Registre.php.html"> Registre.php
</a><br>
<a href="../Framework/_SquelettePhp.php.html"> SquelettePhp.php
</a><br>
<a href="../Framework/_Url.php.html"> Url.php
</a><br>
</div><br />
<b>Classes:</b><br />
<div class="package">
<a href="../Framework/Application.html">Application</a><br />
<a href="../Framework/Chronometre.html">Chronometre</a><br />
<a href="../Framework/Config.html">Config</a><br />
<a href="../Framework/Controleur.html">Controleur</a><br />
<a href="../Framework/Debug.html">Debug</a><br />
<a href="../Framework/GestionnaireException.html">GestionnaireException</a><br />
<a href="../Framework/Log.html">Log</a><br />
<a href="../Framework/Modele.html">Modele</a><br />
<a href="../Framework/Registre.html">Registre</a><br />
<a href="../Framework/SquelettePhp.html">SquelettePhp</a><br />
<a href="../Framework/Url.html">Url</a><br />
</div>
</td>
<td>
<table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top">
 
<h1>Class: Modele</h1>
Source Location: /Modele.php<br /><br />
 
 
<table width="100%" border="0">
<tr><td valign="top">
 
<h3><a href="#class_details">Class Overview</a></h3>
<pre></pre><br />
<div class="description">Classe modèle, donc d'accés au données, elle ne devrait pas être appelée de l'extérieur.</div><br /><br />
<h4>Author(s):</h4>
<ul>
<li>aurelien &lt;<a href="mailto:aurelien@tela-botanica.org">aurelien@tela-botanica.org</a>&gt;</li>
</ul>
 
 
 
 
<h4>Version:</h4>
<ul>
<li>SVN: $$Id: Modele.php 145 2010-03-02 17:23:09Z jpm $$</li>
</ul>
 
<h4>Copyright:</h4>
<ul>
<li>2009 Tela-Botanica</li>
</ul>
</td>
 
 
 
<td valign="top">
<h3><a href="#class_methods">Methods</a></h3>
<ul>
<li><a href="../Framework/Modele.html#method__construct">__construct</a></li>
<li><a href="../Framework/Modele.html#method__destruct">__destruct</a></li>
<li><a href="../Framework/Modele.html#methodinitialiserProtocole">initialiserProtocole</a></li>
<li><a href="../Framework/Modele.html#methodproteger">proteger</a></li>
<li><a href="../Framework/Modele.html#methodrequete">requete</a></li>
<li><a href="../Framework/Modele.html#methodrequeteTous">requeteTous</a></li>
<li><a href="../Framework/Modele.html#methodrequeteUn">requeteUn</a></li>
</ul>
</td>
 
</tr></table>
<hr />
 
<table width="100%" border="0"><tr>
 
 
 
 
 
 
</tr></table>
<hr />
 
<a name="class_details"></a>
<h3>Class Details</h3>
<div class="tags">
[line <a href="../__filesource/fsource_Framework__Modele.php.html#a21">21</a>]<br />
Classe modèle, donc d'accés au données, elle ne devrait pas être appelée de l'extérieur.<br /><br /><p>Elle fait office d'abstraction légère de base de données en utilisant diveres possibilités d'abstraction de base de données (PDO, mysql, mysqli, sqlite) Elle est abstraite donc doit obligatoirement être étendue.</p><p>PHP Version 5</p><br /><br /><br />
<h4>Tags:</h4>
<div class="tags">
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td><b>author:</b>&nbsp;&nbsp;</td><td>aurelien &lt;<a href="mailto:aurelien@tela-botanica.org">aurelien@tela-botanica.org</a>&gt;</td>
</tr>
<tr>
<td><b>version:</b>&nbsp;&nbsp;</td><td>SVN: $$Id: Modele.php 145 2010-03-02 17:23:09Z jpm $$</td>
</tr>
<tr>
<td><b>copyright:</b>&nbsp;&nbsp;</td><td>2009 Tela-Botanica</td>
</tr>
<tr>
<td><b>link:</b>&nbsp;&nbsp;</td><td>/doc/framework/</td>
</tr>
<tr>
<td><b>abstract:</b>&nbsp;&nbsp;</td><td></td>
</tr>
<tr>
<td><b>license:</b>&nbsp;&nbsp;</td><td><a href="http://www.cecill.info/licences/Licence_CeCILL_V2-fr.txt">Licence CECILL</a></td>
</tr>
<tr>
<td><b>license:</b>&nbsp;&nbsp;</td><td><a href="http://www.gnu.org/licenses/gpl.html">Licence GNU-GPL</a></td>
</tr>
</table>
</div>
</div><br /><br />
<div class="top">[ <a href="#top">Top</a> ]</div><br />
 
 
<hr />
<a name="class_methods"></a>
<h3>Class Methods</h3>
<div class="tags">
 
<hr />
<a name="method__construct"></a>
<h3>constructor __construct <span class="smalllinenumber">[line <a href="../__filesource/fsource_Framework__Modele.php.html#a77">77</a>]</span></h3>
<div class="function">
<table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border">
<table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code">
<code>Modele __construct(
)</code>
</td></tr></table>
</td></tr></table><br />
Constructeur par défaut, appelé à l'initialisation.<br /><br /><br /><br />
<h4>Tags:</h4>
<div class="tags">
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td><b>access:</b>&nbsp;&nbsp;</td><td>public</td>
</tr>
</table>
</div>
<br /><br />
 
<div class="top">[ <a href="#top">Top</a> ]</div>
</div>
<hr />
<a name="method__destruct"></a>
<h3>destructor __destruct <span class="smalllinenumber">[line <a href="../__filesource/fsource_Framework__Modele.php.html#a323">323</a>]</span></h3>
<div class="function">
<table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border">
<table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code">
<code>void __destruct(
)</code>
</td></tr></table>
</td></tr></table><br />
Destructeur de classe, se contente de fermer explicitement la connexion<br /><br /><br /><br />
<h4>Tags:</h4>
<div class="tags">
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td><b>access:</b>&nbsp;&nbsp;</td><td>public</td>
</tr>
</table>
</div>
<br /><br />
 
<div class="top">[ <a href="#top">Top</a> ]</div>
</div>
<hr />
<a name="methodinitialiserProtocole"></a>
<h3>method initialiserProtocole <span class="smalllinenumber">[line <a href="../__filesource/fsource_Framework__Modele.php.html#a295">295</a>]</span></h3>
<div class="function">
<table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border">
<table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code">
<code>void initialiserProtocole(
)</code>
</td></tr></table>
</td></tr></table><br />
initialise les constantes de classe à leur bonne valeur<br /><br /><p>et lance une exception si le protocole n'est pas bien défini</p><br /><br /><br />
<h4>Tags:</h4>
<div class="tags">
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td>
</tr>
<tr>
<td><b>access:</b>&nbsp;&nbsp;</td><td>public</td>
</tr>
</table>
</div>
<br /><br />
 
<div class="top">[ <a href="#top">Top</a> ]</div>
</div>
<hr />
<a name="methodproteger"></a>
<h3>method proteger <span class="smalllinenumber">[line <a href="../__filesource/fsource_Framework__Modele.php.html#a263">263</a>]</span></h3>
<div class="function">
<table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border">
<table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code">
<code>void proteger(
 
$chaine)</code>
</td></tr></table>
</td></tr></table><br />
protège une chaine de caractères avant l'insertion dans la base de données<br /><br /><br /><br />
<h4>Tags:</h4>
<div class="tags">
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td><b>access:</b>&nbsp;&nbsp;</td><td>protected</td>
</tr>
</table>
</div>
<br /><br />
 
<h4>Parameters:</h4>
<div class="tags">
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td class="type">&nbsp;&nbsp;</td>
<td><b>$chaine</b>&nbsp;&nbsp;</td>
<td></td>
</tr>
</table>
</div><br />
<div class="top">[ <a href="#top">Top</a> ]</div>
</div>
<hr />
<a name="methodrequete"></a>
<h3>method requete <span class="smalllinenumber">[line <a href="../__filesource/fsource_Framework__Modele.php.html#a146">146</a>]</span></h3>
<div class="function">
<table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border">
<table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code">
<code>PDOStatement requete(
string
$requete)</code>
</td></tr></table>
</td></tr></table><br />
Fonction qui appelle la bonne fonction pour executer une requête suivant le type de bdd.<br /><br /><br /><br />
<h4>Tags:</h4>
<div class="tags">
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td><b>return:</b>&nbsp;&nbsp;</td><td>un objet contenant le résultat de la requête</td>
</tr>
<tr>
<td><b>access:</b>&nbsp;&nbsp;</td><td>protected</td>
</tr>
</table>
</div>
<br /><br />
 
<h4>Parameters:</h4>
<div class="tags">
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td class="type">string&nbsp;&nbsp;</td>
<td><b>$requete</b>&nbsp;&nbsp;</td>
<td>la requete à effectuer</td>
</tr>
</table>
</div><br />
<div class="top">[ <a href="#top">Top</a> ]</div>
</div>
<hr />
<a name="methodrequeteTous"></a>
<h3>method requeteTous <span class="smalllinenumber">[line <a href="../__filesource/fsource_Framework__Modele.php.html#a203">203</a>]</span></h3>
<div class="function">
<table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border">
<table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code">
<code>void requeteTous(
 
$requete, [
$mode = 'ASSOC'])</code>
</td></tr></table>
</td></tr></table><br />
<br /><br />
<h4>Tags:</h4>
<div class="tags">
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td><b>access:</b>&nbsp;&nbsp;</td><td>protected</td>
</tr>
</table>
</div>
<br /><br />
 
<h4>Parameters:</h4>
<div class="tags">
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td class="type">&nbsp;&nbsp;</td>
<td><b>$requete</b>&nbsp;&nbsp;</td>
<td></td>
</tr>
<tr>
<td class="type">&nbsp;&nbsp;</td>
<td><b>$mode</b>&nbsp;&nbsp;</td>
<td></td>
</tr>
</table>
</div><br />
<div class="top">[ <a href="#top">Top</a> ]</div>
</div>
<hr />
<a name="methodrequeteUn"></a>
<h3>method requeteUn <span class="smalllinenumber">[line <a href="../__filesource/fsource_Framework__Modele.php.html#a172">172</a>]</span></h3>
<div class="function">
<table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border">
<table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code">
<code>void requeteUn(
 
$requete, [
$mode = 'ASSOC'])</code>
</td></tr></table>
</td></tr></table><br />
<br /><br />
<h4>Tags:</h4>
<div class="tags">
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td><b>access:</b>&nbsp;&nbsp;</td><td>protected</td>
</tr>
</table>
</div>
<br /><br />
 
<h4>Parameters:</h4>
<div class="tags">
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td class="type">&nbsp;&nbsp;</td>
<td><b>$requete</b>&nbsp;&nbsp;</td>
<td></td>
</tr>
<tr>
<td class="type">&nbsp;&nbsp;</td>
<td><b>$mode</b>&nbsp;&nbsp;</td>
<td></td>
</tr>
</table>
</div><br />
<div class="top">[ <a href="#top">Top</a> ]</div>
</div>
</div><br />
 
 
<div class="credit">
<hr />
Documentation generated on Thu, 04 Mar 2010 19:27:35 +0100 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.3</a>
</div>
</td></tr></table>
</td>
</tr>
</table>
 
</body>
</html>
/tags/v0.3-aleaume/doc/HTMLSmartyConverter/Framework/_Log.php.html
New file
0,0 → 1,116
<html>
<head>
<title>Docs for page Log.php</title>
<meta http-equiv='Content-Type' content='text/html; charset=UTF-8'/>
<link rel="stylesheet" type="text/css" href="../media/style.css">
</head>
<body>
 
<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%">
<tr>
<td class="header_top">Framework</td>
</tr>
<tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr>
<tr>
<td class="header_menu">
[ <a href="../classtrees_Framework.html" class="menu">class tree: Framework</a> ]
[ <a href="../elementindex_Framework.html" class="menu">index: Framework</a> ]
[ <a href="../elementindex.html" class="menu">all elements</a> ]
</td>
</tr>
<tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr>
</table>
 
<table width="100%" border="0" cellpadding="0" cellspacing="0">
<tr valign="top">
<td width="200" class="menu">
<b>Packages:</b><br />
<a href="../li_Framework.html">Framework</a><br />
<br /><br />
<b>Files:</b><br />
<div class="package">
<a href="../Framework/_Application.php.html"> Application.php
</a><br>
<a href="../Framework/_autoload.inc.php.html"> autoload.inc.php
</a><br>
<a href="../Framework/_Chronometre.php.html"> Chronometre.php
</a><br>
<a href="../Framework/_Config.php.html"> Config.php
</a><br>
<a href="../Framework/_Controleur.php.html"> Controleur.php
</a><br>
<a href="../Framework/_Debug.php.html"> Debug.php
</a><br>
<a href="../Framework/_GestionnaireException.php.html"> GestionnaireException.php
</a><br>
<a href="../Framework/_Log.php.html"> Log.php
</a><br>
<a href="../Framework/_Modele.php.html"> Modele.php
</a><br>
<a href="../Framework/_Registre.php.html"> Registre.php
</a><br>
<a href="../Framework/_SquelettePhp.php.html"> SquelettePhp.php
</a><br>
<a href="../Framework/_Url.php.html"> Url.php
</a><br>
</div><br />
<b>Classes:</b><br />
<div class="package">
<a href="../Framework/Application.html">Application</a><br />
<a href="../Framework/Chronometre.html">Chronometre</a><br />
<a href="../Framework/Config.html">Config</a><br />
<a href="../Framework/Controleur.html">Controleur</a><br />
<a href="../Framework/Debug.html">Debug</a><br />
<a href="../Framework/GestionnaireException.html">GestionnaireException</a><br />
<a href="../Framework/Log.html">Log</a><br />
<a href="../Framework/Modele.html">Modele</a><br />
<a href="../Framework/Registre.html">Registre</a><br />
<a href="../Framework/SquelettePhp.html">SquelettePhp</a><br />
<a href="../Framework/Url.html">Url</a><br />
</div>
</td>
<td>
<table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top">
 
<h1>Procedural File: Log.php</h1>
Source Location: /Log.php<br /><br />
 
<br>
<br>
 
<div class="contents">
<h2>Classes:</h2>
<dt><a href="../Framework/Log.html">Log</a></dt>
<dd>Classe permettant de logger des messages dans les fichier situés dans le dossier de log</dd>
</div><br /><br />
 
<h2>Page Details:</h2>
<br /><br />
<h4>Tags:</h4>
<div class="tags">
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td><b>filesource:</b>&nbsp;&nbsp;</td><td><a href="../__filesource/fsource_Framework__Log.php.html">Source Code for this file</a></td>
</tr>
</table>
</div>
<br /><br />
<br /><br />
<br /><br />
<br />
 
<div class="credit">
<hr />
Documentation generated on Thu, 04 Mar 2010 19:27:32 +0100 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.3</a>
</div>
</td></tr></table>
</td>
</tr>
</table>
 
</body>
</html>
/tags/v0.3-aleaume/doc/HTMLSmartyConverter/Framework/GestionnaireException.html
New file
0,0 → 1,462
<html>
<head>
<title>Docs For Class GestionnaireException</title>
<meta http-equiv='Content-Type' content='text/html; charset=UTF-8'/>
<link rel="stylesheet" type="text/css" href="../media/style.css">
</head>
<body>
 
<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%">
<tr>
<td class="header_top">Framework</td>
</tr>
<tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr>
<tr>
<td class="header_menu">
[ <a href="../classtrees_Framework.html" class="menu">class tree: Framework</a> ]
[ <a href="../elementindex_Framework.html" class="menu">index: Framework</a> ]
[ <a href="../elementindex.html" class="menu">all elements</a> ]
</td>
</tr>
<tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr>
</table>
 
<table width="100%" border="0" cellpadding="0" cellspacing="0">
<tr valign="top">
<td width="200" class="menu">
<b>Packages:</b><br />
<a href="../li_Framework.html">Framework</a><br />
<br /><br />
<b>Files:</b><br />
<div class="package">
<a href="../Framework/_Application.php.html"> Application.php
</a><br>
<a href="../Framework/_autoload.inc.php.html"> autoload.inc.php
</a><br>
<a href="../Framework/_Chronometre.php.html"> Chronometre.php
</a><br>
<a href="../Framework/_Config.php.html"> Config.php
</a><br>
<a href="../Framework/_Controleur.php.html"> Controleur.php
</a><br>
<a href="../Framework/_Debug.php.html"> Debug.php
</a><br>
<a href="../Framework/_GestionnaireException.php.html"> GestionnaireException.php
</a><br>
<a href="../Framework/_Log.php.html"> Log.php
</a><br>
<a href="../Framework/_Modele.php.html"> Modele.php
</a><br>
<a href="../Framework/_Registre.php.html"> Registre.php
</a><br>
<a href="../Framework/_SquelettePhp.php.html"> SquelettePhp.php
</a><br>
<a href="../Framework/_Url.php.html"> Url.php
</a><br>
</div><br />
<b>Classes:</b><br />
<div class="package">
<a href="../Framework/Application.html">Application</a><br />
<a href="../Framework/Chronometre.html">Chronometre</a><br />
<a href="../Framework/Config.html">Config</a><br />
<a href="../Framework/Controleur.html">Controleur</a><br />
<a href="../Framework/Debug.html">Debug</a><br />
<a href="../Framework/GestionnaireException.html">GestionnaireException</a><br />
<a href="../Framework/Log.html">Log</a><br />
<a href="../Framework/Modele.html">Modele</a><br />
<a href="../Framework/Registre.html">Registre</a><br />
<a href="../Framework/SquelettePhp.html">SquelettePhp</a><br />
<a href="../Framework/Url.html">Url</a><br />
</div>
</td>
<td>
<table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top">
 
<h1>Class: GestionnaireException</h1>
Source Location: /GestionnaireException.php<br /><br />
 
 
<table width="100%" border="0">
<tr><td valign="top">
 
<h3><a href="#class_details">Class Overview</a></h3>
<pre></pre><br />
<div class="description">Classe de gestion des exceptions.</div><br /><br />
<h4>Author(s):</h4>
<ul>
<li>aurelien &lt;<a href="mailto:aurelien@tela-botanica.org">aurelien@tela-botanica.org</a>&gt;</li>
</ul>
 
 
 
 
<h4>Version:</h4>
<ul>
<li>SVN: $$Id: GestionnaireException.php 158 2010-03-04 17:14:36Z jpm $$</li>
</ul>
 
<h4>Copyright:</h4>
<ul>
<li>2009 Tela-Botanica</li>
</ul>
</td>
 
 
 
<td valign="top">
<h3><a href="#class_methods">Methods</a></h3>
<ul>
<li><a href="../Framework/GestionnaireException.html#method__construct">__construct</a></li>
<li><a href="../Framework/GestionnaireException.html#method__destruct">__destruct</a></li>
<li><a href="../Framework/GestionnaireException.html#methodgererErreur">gererErreur</a></li>
<li><a href="../Framework/GestionnaireException.html#methodgererException">gererException</a></li>
<li><a href="../Framework/GestionnaireException.html#methodgetContexte">getContexte</a></li>
<li><a href="../Framework/GestionnaireException.html#methodgetExceptions">getExceptions</a></li>
<li><a href="../Framework/GestionnaireException.html#methodgetInstance">getInstance</a></li>
<li><a href="../Framework/GestionnaireException.html#methodsetContexte">setContexte</a></li>
</ul>
</td>
 
</tr></table>
<hr />
 
<table width="100%" border="0"><tr>
 
 
 
 
 
 
</tr></table>
<hr />
 
<a name="class_details"></a>
<h3>Class Details</h3>
<div class="tags">
[line <a href="../__filesource/fsource_Framework__GestionnaireException.php.html#a19">19</a>]<br />
Classe de gestion des exceptions.<br /><br /><p>C'est un Singleton.</p><p>PHP Version 5</p><br /><br /><br />
<h4>Tags:</h4>
<div class="tags">
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td><b>author:</b>&nbsp;&nbsp;</td><td>aurelien &lt;<a href="mailto:aurelien@tela-botanica.org">aurelien@tela-botanica.org</a>&gt;</td>
</tr>
<tr>
<td><b>version:</b>&nbsp;&nbsp;</td><td>SVN: $$Id: GestionnaireException.php 158 2010-03-04 17:14:36Z jpm $$</td>
</tr>
<tr>
<td><b>copyright:</b>&nbsp;&nbsp;</td><td>2009 Tela-Botanica</td>
</tr>
<tr>
<td><b>link:</b>&nbsp;&nbsp;</td><td>/doc/framework/</td>
</tr>
<tr>
<td><b>license:</b>&nbsp;&nbsp;</td><td><a href="http://www.gnu.org/licenses/gpl.html">Licence GNU-GPL</a></td>
</tr>
<tr>
<td><b>license:</b>&nbsp;&nbsp;</td><td><a href="http://www.cecill.info/licences/Licence_CeCILL_V2-fr.txt">Licence CECILL</a></td>
</tr>
</table>
</div>
</div><br /><br />
<div class="top">[ <a href="#top">Top</a> ]</div><br />
 
 
<hr />
<a name="class_methods"></a>
<h3>Class Methods</h3>
<div class="tags">
<hr />
<a name="methodgererErreur"></a>
<h3>static method gererErreur <span class="smalllinenumber">[line <a href="../__filesource/fsource_Framework__GestionnaireException.php.html#a110">110</a>]</span></h3>
<div class="function">
<table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border">
<table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code">
<code>static void gererErreur(
int
$niveau, string
$message, string
$fichier, int
$ligne, string
$contexte)</code>
</td></tr></table>
</td></tr></table><br />
Gère les erreurs en les convertissant en exceptions (remplace la fonction gestion d'erreurs native de php)<br /><br /><br /><br />
<h4>Tags:</h4>
<div class="tags">
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td><b>access:</b>&nbsp;&nbsp;</td><td>public</td>
</tr>
</table>
</div>
<br /><br />
 
<h4>Parameters:</h4>
<div class="tags">
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td class="type">int&nbsp;&nbsp;</td>
<td><b>$niveau</b>&nbsp;&nbsp;</td>
<td>le niveau de l'erreur</td>
</tr>
<tr>
<td class="type">string&nbsp;&nbsp;</td>
<td><b>$message</b>&nbsp;&nbsp;</td>
<td>le message associé à l'erreur</td>
</tr>
<tr>
<td class="type">string&nbsp;&nbsp;</td>
<td><b>$fichier</b>&nbsp;&nbsp;</td>
<td>le nom du fichier où l'erreur s'est produite</td>
</tr>
<tr>
<td class="type">int&nbsp;&nbsp;</td>
<td><b>$ligne</b>&nbsp;&nbsp;</td>
<td>la ligne où l'erreur s'est produite</td>
</tr>
<tr>
<td class="type">string&nbsp;&nbsp;</td>
<td><b>$contexte</b>&nbsp;&nbsp;</td>
<td>le contexte associé à l'erreur</td>
</tr>
</table>
</div><br />
<div class="top">[ <a href="#top">Top</a> ]</div>
</div>
<hr />
<a name="methodgererException"></a>
<h3>static method gererException <span class="smalllinenumber">[line <a href="../__filesource/fsource_Framework__GestionnaireException.php.html#a92">92</a>]</span></h3>
<div class="function">
<table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border">
<table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code">
<code>static void gererException(
 
$e)</code>
</td></tr></table>
</td></tr></table><br />
Fonction de gestion des exceptions, remplace le handler par défaut<br /><br /><br /><br />
<h4>Tags:</h4>
<div class="tags">
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td><b>access:</b>&nbsp;&nbsp;</td><td>public</td>
</tr>
</table>
</div>
<br /><br />
 
<h4>Parameters:</h4>
<div class="tags">
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td class="type">Exception&nbsp;&nbsp;</td>
<td><b>$e</b>&nbsp;&nbsp;</td>
<td>l'exception à traiter</td>
</tr>
</table>
</div><br />
<div class="top">[ <a href="#top">Top</a> ]</div>
</div>
<hr />
<a name="methodgetContexte"></a>
<h3>static method getContexte <span class="smalllinenumber">[line <a href="../__filesource/fsource_Framework__GestionnaireException.php.html#a64">64</a>]</span></h3>
<div class="function">
<table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border">
<table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code">
<code>static void getContexte(
)</code>
</td></tr></table>
</td></tr></table><br />
Renvoie le booleen définissant si l'on affiche le contexte ou non<br /><br /><br /><br />
<h4>Tags:</h4>
<div class="tags">
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td><b>access:</b>&nbsp;&nbsp;</td><td>public</td>
</tr>
</table>
</div>
<br /><br />
 
<div class="top">[ <a href="#top">Top</a> ]</div>
</div>
<hr />
<a name="methodgetExceptions"></a>
<h3>static method getExceptions <span class="smalllinenumber">[line <a href="../__filesource/fsource_Framework__GestionnaireException.php.html#a131">131</a>]</span></h3>
<div class="function">
<table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border">
<table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code">
<code>static void getExceptions(
)</code>
</td></tr></table>
</td></tr></table><br />
Renvoie les exceptions au format (X)HTML<br /><br /><p>ou bien au format texte suivant le mode d'utilisation de PHP</p><br /><br /><br />
<h4>Tags:</h4>
<div class="tags">
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td><b>access:</b>&nbsp;&nbsp;</td><td>public</td>
</tr>
</table>
</div>
<br /><br />
 
<div class="top">[ <a href="#top">Top</a> ]</div>
</div>
<hr />
<a name="methodgetInstance"></a>
<h3>static method getInstance <span class="smalllinenumber">[line <a href="../__filesource/fsource_Framework__GestionnaireException.php.html#a79">79</a>]</span></h3>
<div class="function">
<table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border">
<table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code">
<code>static GestionnaireErreur getInstance(
)</code>
</td></tr></table>
</td></tr></table><br />
Fonction d'accès au singleton<br /><br /><br /><br />
<h4>Tags:</h4>
<div class="tags">
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td><b>return:</b>&nbsp;&nbsp;</td><td>le gestionnaire d'exceptions courant</td>
</tr>
<tr>
<td><b>access:</b>&nbsp;&nbsp;</td><td>public</td>
</tr>
</table>
</div>
<br /><br />
 
<div class="top">[ <a href="#top">Top</a> ]</div>
</div>
 
<hr />
<a name="method__construct"></a>
<h3>constructor __construct <span class="smalllinenumber">[line <a href="../__filesource/fsource_Framework__GestionnaireException.php.html#a51">51</a>]</span></h3>
<div class="function">
<table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border">
<table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code">
<code>GestionnaireException __construct(
bool
0)</code>
</td></tr></table>
</td></tr></table><br />
Constructeur avec paramètres optionnel<br /><br /><br /><br />
<h4>Tags:</h4>
<div class="tags">
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td><b>access:</b>&nbsp;&nbsp;</td><td>public</td>
</tr>
</table>
</div>
<br /><br />
 
<h4>Parameters:</h4>
<div class="tags">
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td class="type">bool&nbsp;&nbsp;</td>
<td><b>0</b>&nbsp;&nbsp;</td>
<td>indique si l'on veut afficher ou non le contexte des exceptions (i.e. la trace)</td>
</tr>
</table>
</div><br />
<div class="top">[ <a href="#top">Top</a> ]</div>
</div>
<hr />
<a name="method__destruct"></a>
<h3>destructor __destruct <span class="smalllinenumber">[line <a href="../__filesource/fsource_Framework__GestionnaireException.php.html#a178">178</a>]</span></h3>
<div class="function">
<table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border">
<table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code">
<code>void __destruct(
)</code>
</td></tr></table>
</td></tr></table><br />
<br /><br />
<h4>Tags:</h4>
<div class="tags">
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td><b>access:</b>&nbsp;&nbsp;</td><td>public</td>
</tr>
</table>
</div>
<br /><br />
 
<div class="top">[ <a href="#top">Top</a> ]</div>
</div>
<hr />
<a name="methodsetContexte"></a>
<h3>method setContexte <span class="smalllinenumber">[line <a href="../__filesource/fsource_Framework__GestionnaireException.php.html#a72">72</a>]</span></h3>
<div class="function">
<table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border">
<table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code">
<code>void setContexte(
bool
$contexte)</code>
</td></tr></table>
</td></tr></table><br />
Definit si l'on veut afficher le contexte ou non<br /><br /><br /><br />
<h4>Tags:</h4>
<div class="tags">
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td><b>access:</b>&nbsp;&nbsp;</td><td>public</td>
</tr>
</table>
</div>
<br /><br />
 
<h4>Parameters:</h4>
<div class="tags">
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td class="type">bool&nbsp;&nbsp;</td>
<td><b>$contexte</b>&nbsp;&nbsp;</td>
<td>true si on veut afficher le contexte, false sinon, par défaut vaut false</td>
</tr>
</table>
</div><br />
<div class="top">[ <a href="#top">Top</a> ]</div>
</div>
</div><br />
 
 
<div class="credit">
<hr />
Documentation generated on Thu, 04 Mar 2010 19:27:32 +0100 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.3</a>
</div>
</td></tr></table>
</td>
</tr>
</table>
 
</body>
</html>
/tags/v0.3-aleaume/doc/HTMLSmartyConverter/Framework/_SquelettePhp.php.html
New file
0,0 → 1,116
<html>
<head>
<title>Docs for page SquelettePhp.php</title>
<meta http-equiv='Content-Type' content='text/html; charset=UTF-8'/>
<link rel="stylesheet" type="text/css" href="../media/style.css">
</head>
<body>
 
<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%">
<tr>
<td class="header_top">Framework</td>
</tr>
<tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr>
<tr>
<td class="header_menu">
[ <a href="../classtrees_Framework.html" class="menu">class tree: Framework</a> ]
[ <a href="../elementindex_Framework.html" class="menu">index: Framework</a> ]
[ <a href="../elementindex.html" class="menu">all elements</a> ]
</td>
</tr>
<tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr>
</table>
 
<table width="100%" border="0" cellpadding="0" cellspacing="0">
<tr valign="top">
<td width="200" class="menu">
<b>Packages:</b><br />
<a href="../li_Framework.html">Framework</a><br />
<br /><br />
<b>Files:</b><br />
<div class="package">
<a href="../Framework/_Application.php.html"> Application.php
</a><br>
<a href="../Framework/_autoload.inc.php.html"> autoload.inc.php
</a><br>
<a href="../Framework/_Chronometre.php.html"> Chronometre.php
</a><br>
<a href="../Framework/_Config.php.html"> Config.php
</a><br>
<a href="../Framework/_Controleur.php.html"> Controleur.php
</a><br>
<a href="../Framework/_Debug.php.html"> Debug.php
</a><br>
<a href="../Framework/_GestionnaireException.php.html"> GestionnaireException.php
</a><br>
<a href="../Framework/_Log.php.html"> Log.php
</a><br>
<a href="../Framework/_Modele.php.html"> Modele.php
</a><br>
<a href="../Framework/_Registre.php.html"> Registre.php
</a><br>
<a href="../Framework/_SquelettePhp.php.html"> SquelettePhp.php
</a><br>
<a href="../Framework/_Url.php.html"> Url.php
</a><br>
</div><br />
<b>Classes:</b><br />
<div class="package">
<a href="../Framework/Application.html">Application</a><br />
<a href="../Framework/Chronometre.html">Chronometre</a><br />
<a href="../Framework/Config.html">Config</a><br />
<a href="../Framework/Controleur.html">Controleur</a><br />
<a href="../Framework/Debug.html">Debug</a><br />
<a href="../Framework/GestionnaireException.html">GestionnaireException</a><br />
<a href="../Framework/Log.html">Log</a><br />
<a href="../Framework/Modele.html">Modele</a><br />
<a href="../Framework/Registre.html">Registre</a><br />
<a href="../Framework/SquelettePhp.html">SquelettePhp</a><br />
<a href="../Framework/Url.html">Url</a><br />
</div>
</td>
<td>
<table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top">
 
<h1>Procedural File: SquelettePhp.php</h1>
Source Location: /SquelettePhp.php<br /><br />
 
<br>
<br>
 
<div class="contents">
<h2>Classes:</h2>
<dt><a href="../Framework/SquelettePhp.html">SquelettePhp</a></dt>
<dd>Classe SquelettePhp, traitant les squelette Php utilisant la syntaxe courte php ou pas.</dd>
</div><br /><br />
 
<h2>Page Details:</h2>
<br /><br />
<h4>Tags:</h4>
<div class="tags">
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td><b>filesource:</b>&nbsp;&nbsp;</td><td><a href="../__filesource/fsource_Framework__SquelettePhp.php.html">Source Code for this file</a></td>
</tr>
</table>
</div>
<br /><br />
<br /><br />
<br /><br />
<br />
 
<div class="credit">
<hr />
Documentation generated on Thu, 04 Mar 2010 19:27:35 +0100 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.3</a>
</div>
</td></tr></table>
</td>
</tr>
</table>
 
</body>
</html>
/tags/v0.3-aleaume/doc/HTMLSmartyConverter/Framework/_Registre.php.html
New file
0,0 → 1,116
<html>
<head>
<title>Docs for page Registre.php</title>
<meta http-equiv='Content-Type' content='text/html; charset=UTF-8'/>
<link rel="stylesheet" type="text/css" href="../media/style.css">
</head>
<body>
 
<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%">
<tr>
<td class="header_top">Framework</td>
</tr>
<tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr>
<tr>
<td class="header_menu">
[ <a href="../classtrees_Framework.html" class="menu">class tree: Framework</a> ]
[ <a href="../elementindex_Framework.html" class="menu">index: Framework</a> ]
[ <a href="../elementindex.html" class="menu">all elements</a> ]
</td>
</tr>
<tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr>
</table>
 
<table width="100%" border="0" cellpadding="0" cellspacing="0">
<tr valign="top">
<td width="200" class="menu">
<b>Packages:</b><br />
<a href="../li_Framework.html">Framework</a><br />
<br /><br />
<b>Files:</b><br />
<div class="package">
<a href="../Framework/_Application.php.html"> Application.php
</a><br>
<a href="../Framework/_autoload.inc.php.html"> autoload.inc.php
</a><br>
<a href="../Framework/_Chronometre.php.html"> Chronometre.php
</a><br>
<a href="../Framework/_Config.php.html"> Config.php
</a><br>
<a href="../Framework/_Controleur.php.html"> Controleur.php
</a><br>
<a href="../Framework/_Debug.php.html"> Debug.php
</a><br>
<a href="../Framework/_GestionnaireException.php.html"> GestionnaireException.php
</a><br>
<a href="../Framework/_Log.php.html"> Log.php
</a><br>
<a href="../Framework/_Modele.php.html"> Modele.php
</a><br>
<a href="../Framework/_Registre.php.html"> Registre.php
</a><br>
<a href="../Framework/_SquelettePhp.php.html"> SquelettePhp.php
</a><br>
<a href="../Framework/_Url.php.html"> Url.php
</a><br>
</div><br />
<b>Classes:</b><br />
<div class="package">
<a href="../Framework/Application.html">Application</a><br />
<a href="../Framework/Chronometre.html">Chronometre</a><br />
<a href="../Framework/Config.html">Config</a><br />
<a href="../Framework/Controleur.html">Controleur</a><br />
<a href="../Framework/Debug.html">Debug</a><br />
<a href="../Framework/GestionnaireException.html">GestionnaireException</a><br />
<a href="../Framework/Log.html">Log</a><br />
<a href="../Framework/Modele.html">Modele</a><br />
<a href="../Framework/Registre.html">Registre</a><br />
<a href="../Framework/SquelettePhp.html">SquelettePhp</a><br />
<a href="../Framework/Url.html">Url</a><br />
</div>
</td>
<td>
<table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top">
 
<h1>Procedural File: Registre.php</h1>
Source Location: /Registre.php<br /><br />
 
<br>
<br>
 
<div class="contents">
<h2>Classes:</h2>
<dt><a href="../Framework/Registre.html">Registre</a></dt>
<dd>Classe registre, qui permet un accès à différentes variables à travers les autres classes.</dd>
</div><br /><br />
 
<h2>Page Details:</h2>
<br /><br />
<h4>Tags:</h4>
<div class="tags">
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td><b>filesource:</b>&nbsp;&nbsp;</td><td><a href="../__filesource/fsource_Framework__Registre.php.html">Source Code for this file</a></td>
</tr>
</table>
</div>
<br /><br />
<br /><br />
<br /><br />
<br />
 
<div class="credit">
<hr />
Documentation generated on Thu, 04 Mar 2010 19:27:35 +0100 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.3</a>
</div>
</td></tr></table>
</td>
</tr>
</table>
 
</body>
</html>
/tags/v0.3-aleaume/doc/HTMLSmartyConverter/Framework/_Chronometre.php.html
New file
0,0 → 1,116
<html>
<head>
<title>Docs for page Chronometre.php</title>
<meta http-equiv='Content-Type' content='text/html; charset=UTF-8'/>
<link rel="stylesheet" type="text/css" href="../media/style.css">
</head>
<body>
 
<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%">
<tr>
<td class="header_top">Framework</td>
</tr>
<tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr>
<tr>
<td class="header_menu">
[ <a href="../classtrees_Framework.html" class="menu">class tree: Framework</a> ]
[ <a href="../elementindex_Framework.html" class="menu">index: Framework</a> ]
[ <a href="../elementindex.html" class="menu">all elements</a> ]
</td>
</tr>
<tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr>
</table>
 
<table width="100%" border="0" cellpadding="0" cellspacing="0">
<tr valign="top">
<td width="200" class="menu">
<b>Packages:</b><br />
<a href="../li_Framework.html">Framework</a><br />
<br /><br />
<b>Files:</b><br />
<div class="package">
<a href="../Framework/_Application.php.html"> Application.php
</a><br>
<a href="../Framework/_autoload.inc.php.html"> autoload.inc.php
</a><br>
<a href="../Framework/_Chronometre.php.html"> Chronometre.php
</a><br>
<a href="../Framework/_Config.php.html"> Config.php
</a><br>
<a href="../Framework/_Controleur.php.html"> Controleur.php
</a><br>
<a href="../Framework/_Debug.php.html"> Debug.php
</a><br>
<a href="../Framework/_GestionnaireException.php.html"> GestionnaireException.php
</a><br>
<a href="../Framework/_Log.php.html"> Log.php
</a><br>
<a href="../Framework/_Modele.php.html"> Modele.php
</a><br>
<a href="../Framework/_Registre.php.html"> Registre.php
</a><br>
<a href="../Framework/_SquelettePhp.php.html"> SquelettePhp.php
</a><br>
<a href="../Framework/_Url.php.html"> Url.php
</a><br>
</div><br />
<b>Classes:</b><br />
<div class="package">
<a href="../Framework/Application.html">Application</a><br />
<a href="../Framework/Chronometre.html">Chronometre</a><br />
<a href="../Framework/Config.html">Config</a><br />
<a href="../Framework/Controleur.html">Controleur</a><br />
<a href="../Framework/Debug.html">Debug</a><br />
<a href="../Framework/GestionnaireException.html">GestionnaireException</a><br />
<a href="../Framework/Log.html">Log</a><br />
<a href="../Framework/Modele.html">Modele</a><br />
<a href="../Framework/Registre.html">Registre</a><br />
<a href="../Framework/SquelettePhp.html">SquelettePhp</a><br />
<a href="../Framework/Url.html">Url</a><br />
</div>
</td>
<td>
<table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top">
 
<h1>Procedural File: Chronometre.php</h1>
Source Location: /Chronometre.php<br /><br />
 
<br>
<br>
 
<div class="contents">
<h2>Classes:</h2>
<dt><a href="../Framework/Chronometre.html">Chronometre</a></dt>
<dd>Classe Chronometre() - Permet de stocker et d'afficher les temps d'éxécution de script.</dd>
</div><br /><br />
 
<h2>Page Details:</h2>
<br /><br />
<h4>Tags:</h4>
<div class="tags">
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td><b>filesource:</b>&nbsp;&nbsp;</td><td><a href="../__filesource/fsource_Framework__Chronometre.php.html">Source Code for this file</a></td>
</tr>
</table>
</div>
<br /><br />
<br /><br />
<br /><br />
<br />
 
<div class="credit">
<hr />
Documentation generated on Thu, 04 Mar 2010 19:27:29 +0100 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.3</a>
</div>
</td></tr></table>
</td>
</tr>
</table>
 
</body>
</html>
/tags/v0.3-aleaume/doc/HTMLSmartyConverter/Framework/_Debug.php.html
New file
0,0 → 1,116
<html>
<head>
<title>Docs for page Debug.php</title>
<meta http-equiv='Content-Type' content='text/html; charset=UTF-8'/>
<link rel="stylesheet" type="text/css" href="../media/style.css">
</head>
<body>
 
<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%">
<tr>
<td class="header_top">Framework</td>
</tr>
<tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr>
<tr>
<td class="header_menu">
[ <a href="../classtrees_Framework.html" class="menu">class tree: Framework</a> ]
[ <a href="../elementindex_Framework.html" class="menu">index: Framework</a> ]
[ <a href="../elementindex.html" class="menu">all elements</a> ]
</td>
</tr>
<tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr>
</table>
 
<table width="100%" border="0" cellpadding="0" cellspacing="0">
<tr valign="top">
<td width="200" class="menu">
<b>Packages:</b><br />
<a href="../li_Framework.html">Framework</a><br />
<br /><br />
<b>Files:</b><br />
<div class="package">
<a href="../Framework/_Application.php.html"> Application.php
</a><br>
<a href="../Framework/_autoload.inc.php.html"> autoload.inc.php
</a><br>
<a href="../Framework/_Chronometre.php.html"> Chronometre.php
</a><br>
<a href="../Framework/_Config.php.html"> Config.php
</a><br>
<a href="../Framework/_Controleur.php.html"> Controleur.php
</a><br>
<a href="../Framework/_Debug.php.html"> Debug.php
</a><br>
<a href="../Framework/_GestionnaireException.php.html"> GestionnaireException.php
</a><br>
<a href="../Framework/_Log.php.html"> Log.php
</a><br>
<a href="../Framework/_Modele.php.html"> Modele.php
</a><br>
<a href="../Framework/_Registre.php.html"> Registre.php
</a><br>
<a href="../Framework/_SquelettePhp.php.html"> SquelettePhp.php
</a><br>
<a href="../Framework/_Url.php.html"> Url.php
</a><br>
</div><br />
<b>Classes:</b><br />
<div class="package">
<a href="../Framework/Application.html">Application</a><br />
<a href="../Framework/Chronometre.html">Chronometre</a><br />
<a href="../Framework/Config.html">Config</a><br />
<a href="../Framework/Controleur.html">Controleur</a><br />
<a href="../Framework/Debug.html">Debug</a><br />
<a href="../Framework/GestionnaireException.html">GestionnaireException</a><br />
<a href="../Framework/Log.html">Log</a><br />
<a href="../Framework/Modele.html">Modele</a><br />
<a href="../Framework/Registre.html">Registre</a><br />
<a href="../Framework/SquelettePhp.html">SquelettePhp</a><br />
<a href="../Framework/Url.html">Url</a><br />
</div>
</td>
<td>
<table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top">
 
<h1>Procedural File: Debug.php</h1>
Source Location: /Debug.php<br /><br />
 
<br>
<br>
 
<div class="contents">
<h2>Classes:</h2>
<dt><a href="../Framework/Debug.html">Debug</a></dt>
<dd>Classe fournissant des fonctions de débogage équivalante à var_dump et print_r.</dd>
</div><br /><br />
 
<h2>Page Details:</h2>
<br /><br />
<h4>Tags:</h4>
<div class="tags">
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td><b>filesource:</b>&nbsp;&nbsp;</td><td><a href="../__filesource/fsource_Framework__Debug.php.html">Source Code for this file</a></td>
</tr>
</table>
</div>
<br /><br />
<br /><br />
<br /><br />
<br />
 
<div class="credit">
<hr />
Documentation generated on Thu, 04 Mar 2010 19:27:31 +0100 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.3</a>
</div>
</td></tr></table>
</td>
</tr>
</table>
 
</body>
</html>
/tags/v0.3-aleaume/doc/HTMLSmartyConverter/__filesource/fsource_Framework__autoload.inc.php.html
New file
0,0 → 1,120
<html>
<head>
<title>File Source for autoload.inc.php</title>
<meta http-equiv='Content-Type' content='text/html; charset=UTF-8'/>
<link rel="stylesheet" type="text/css" href="../media/style.css">
</head>
<body>
 
<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%">
<tr>
<td class="header_top">Framework</td>
</tr>
<tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr>
<tr>
<td class="header_menu">
[ <a href="../classtrees_Framework.html" class="menu">class tree: Framework</a> ]
[ <a href="../elementindex_Framework.html" class="menu">index: Framework</a> ]
[ <a href="../elementindex.html" class="menu">all elements</a> ]
</td>
</tr>
<tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr>
</table>
 
<table width="100%" border="0" cellpadding="0" cellspacing="0">
<tr valign="top">
<td width="200" class="menu">
<b>Packages:</b><br />
<a href="../li_Framework.html">Framework</a><br />
<br /><br />
</td>
<td>
<table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top">
 
<h1 align="center">Source for file autoload.inc.php</h1>
<p>Documentation is available at <a href="../Framework/_autoload.inc.php.html">autoload.inc.php</a></p>
<div class="src-code">
<ol><li><div class="src-line"><a name="a1"></a><span class="src-php">&lt;?php</span></div></li>
<li><div class="src-line"><a name="a2"></a><span class="src-comm">//&nbsp;declare(encoding='UTF-8');</span></div></li>
<li><div class="src-line"><a name="a3"></a><span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a4"></a><span class="src-doc">&nbsp;*&nbsp;Fichier&nbsp;contenant&nbsp;la&nbsp;fonction&nbsp;de&nbsp;chargement&nbsp;automatique&nbsp;de&nbsp;classes,&nbsp;il&nbsp;doit&nbsp;toujours&nbsp;rester&nbsp;à&nbsp;la&nbsp;racine</span></div></li>
<li><div class="src-line"><a name="a5"></a><span class="src-doc">&nbsp;*&nbsp;du&nbsp;framework&nbsp;car&nbsp;il&nbsp;initialise&nbsp;le&nbsp;chemin&nbsp;de&nbsp;l'application&nbsp;en&nbsp;se&nbsp;basant&nbsp;sur&nbsp;son&nbsp;propre&nbsp;emplacement.</span></div></li>
<li><div class="src-line"><a name="a6"></a><span class="src-doc">&nbsp;*</span></div></li>
<li><div class="src-line"><a name="a7"></a><span class="src-doc">&nbsp;*&nbsp;PHP&nbsp;Version&nbsp;5.1.2</span></div></li>
<li><div class="src-line"><a name="a8"></a><span class="src-doc">&nbsp;*</span></div></li>
<li><div class="src-line"><a name="a9"></a><span class="src-doc">&nbsp;*&nbsp;</span><span class="src-doc-coretag">@category</span><span class="src-doc">&nbsp;&nbsp;Fichier_De_Fonctions</span></div></li>
<li><div class="src-line"><a name="a10"></a><span class="src-doc">&nbsp;*&nbsp;</span><span class="src-doc-coretag">@package</span><span class="src-doc">&nbsp;&nbsp;&nbsp;Framework</span></div></li>
<li><div class="src-line"><a name="a11"></a><span class="src-doc">&nbsp;//&nbsp;Auteur&nbsp;principal&nbsp;:</span></div></li>
<li><div class="src-line"><a name="a12"></a><span class="src-doc">&nbsp;*&nbsp;</span><span class="src-doc-coretag">@author</span><span class="src-doc">&nbsp;Aurelien&nbsp;PERONNET&nbsp;&lt;aurelien@tela-botanica.org&gt;</span></div></li>
<li><div class="src-line"><a name="a13"></a><span class="src-doc">&nbsp;//&nbsp;Autres&nbsp;auteurs&nbsp;:</span></div></li>
<li><div class="src-line"><a name="a14"></a><span class="src-doc">&nbsp;*&nbsp;</span><span class="src-doc-coretag">@author</span><span class="src-doc">&nbsp;Jean-Pascal&nbsp;MILCENT&nbsp;&lt;jpm@tela-botanica.org&gt;</span></div></li>
<li><div class="src-line"><a name="a15"></a><span class="src-doc">&nbsp;*&nbsp;</span><span class="src-doc-coretag">@license</span><span class="src-doc">&nbsp;GPL&nbsp;v3&nbsp;&lt;http://www.gnu.org/licenses/gpl.txt&gt;</span></div></li>
<li><div class="src-line"><a name="a16"></a><span class="src-doc">&nbsp;*&nbsp;</span><span class="src-doc-coretag">@license</span><span class="src-doc">&nbsp;CECILL&nbsp;v2&nbsp;&lt;http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt&gt;</span></div></li>
<li><div class="src-line"><a name="a17"></a><span class="src-doc">&nbsp;*&nbsp;</span><span class="src-doc-coretag">@version</span><span class="src-doc">&nbsp;$$Id:&nbsp;autoload.inc.php&nbsp;153&nbsp;2010-03-04&nbsp;10:48:32Z&nbsp;jpm&nbsp;$$</span></div></li>
<li><div class="src-line"><a name="a18"></a><span class="src-doc">&nbsp;*&nbsp;</span><span class="src-doc-coretag">@copyright</span><span class="src-doc">&nbsp;1999-2009&nbsp;Tela&nbsp;Botanica&nbsp;(accueil@tela-botanica.org)</span></div></li>
<li><div class="src-line"><a name="a19"></a><span class="src-doc">&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a20"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a21"></a><span class="src-comm">//&nbsp;Redéfinition&nbsp;de&nbsp;la&nbsp;constante&nbsp;DIRECTORY_SEPARATOR</span></div></li>
<li><div class="src-line"><a name="a22"></a><span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-sym">!</span><a href="http://www.php.net/defined">defined</a><span class="src-sym">(</span><span class="src-str">'DS'</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a23"></a>&nbsp;&nbsp;&nbsp;&nbsp;<a href="http://www.php.net/define">define</a><span class="src-sym">(</span><span class="src-str">'DS'</span><span class="src-sym">,&nbsp;</span><span class="src-id">DIRECTORY_SEPARATOR</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a24"></a><span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a25"></a><span class="src-comm">//&nbsp;Redéfinition&nbsp;de&nbsp;la&nbsp;constante&nbsp;PATH_SEPARATOR</span></div></li>
<li><div class="src-line"><a name="a26"></a><span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-sym">!</span><a href="http://www.php.net/defined">defined</a><span class="src-sym">(</span><span class="src-str">'PS'</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a27"></a>&nbsp;&nbsp;&nbsp;&nbsp;<a href="http://www.php.net/define">define</a><span class="src-sym">(</span><span class="src-str">'PS'</span><span class="src-sym">,&nbsp;</span><span class="src-id">PATH_SEPARATOR</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a28"></a><span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a29"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a30"></a><span class="src-comm">//&nbsp;Autoload&nbsp;pour&nbsp;le&nbsp;Framework</span></div></li>
<li><div class="src-line"><a name="a31"></a><span class="src-key">function&nbsp;</span><a href="../Framework/_autoload.inc.php.html#functionautoloadFw">autoloadFw</a><span class="src-sym">(</span><span class="src-var">$nom_classe_fw</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a32"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$fichier_a_inclure&nbsp;</span>=&nbsp;<a href="http://www.php.net/dirname">dirname</a><span class="src-sym">(</span>__FILE__<span class="src-sym">)</span>.<span class="src-id"><a href="../Framework/_autoload.inc.php.html#defineDS">DS</a></span>.<span class="src-var">$nom_classe_fw</span>.<span class="src-str">'.php'</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a33"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><a href="http://www.php.net/file_exists">file_exists</a><span class="src-sym">(</span><span class="src-var">$fichier_a_inclure</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a34"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-inc">include_once&nbsp;</span><span class="src-var">$fichier_a_inclure</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a35"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-id">null</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a36"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a37"></a><span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a38"></a><a href="http://www.php.net/spl_autoload_register">spl_autoload_register</a><span class="src-sym">(</span><span class="src-str">'autoloadFw'</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a39"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a40"></a><span class="src-comm">//&nbsp;Instanciation&nbsp;du&nbsp;gestionnaire&nbsp;d'exception</span></div></li>
<li><div class="src-line"><a name="a41"></a><span class="src-id"><a href="../Framework/GestionnaireException.html">GestionnaireException</a></span><span class="src-sym">::</span><a href="../Framework/GestionnaireException.html#methodgetInstance">getInstance</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a42"></a><span class="src-comm">//&nbsp;Instanciation&nbsp;du&nbsp;gestionnaire&nbsp;de&nbsp;logs</span></div></li>
<li><div class="src-line"><a name="a43"></a><span class="src-id"><a href="../Framework/Log.html">Log</a></span><span class="src-sym">::</span><a href="../Framework/Log.html#methodgetInstance">getInstance</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a44"></a><span class="src-comm">//&nbsp;Encodage&nbsp;de&nbsp;l'application&nbsp;(défini&nbsp;ici&nbsp;car&nbsp;on&nbsp;peut&nbsp;avoir&nbsp;des&nbsp;sorties&nbsp;d'erreurs&nbsp;dès&nbsp;le&nbsp;début)</span></div></li>
<li><div class="src-line"><a name="a45"></a><a href="http://www.php.net/mb_internal_encoding">mb_internal_encoding</a><span class="src-sym">(</span><span class="src-id"><a href="../Framework/Config.html">Config</a></span><span class="src-sym">::</span><a href="../Framework/Config.html#methodget">get</a><span class="src-sym">(</span><span class="src-str">'appli_encodage'</span><span class="src-sym">))</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a46"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a47"></a><span class="src-comm">//&nbsp;Autoload&nbsp;par&nbsp;défaut&nbsp;pour&nbsp;l'application</span></div></li>
<li><div class="src-line"><a name="a48"></a><span class="src-key">function&nbsp;</span><a href="../Framework/_autoload.inc.php.html#functionautoloadAppliDefaut">autoloadAppliDefaut</a><span class="src-sym">(</span><span class="src-var">$nom_classe</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a49"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$dossiers_classes&nbsp;</span>=&nbsp;<span class="src-key">array</span><span class="src-sym">(&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="src-id"><a href="../Framework/Config.html">Config</a></span><span class="src-sym">::</span><a href="../Framework/Config.html#methodget">get</a><span class="src-sym">(</span><span class="src-str">'chemin_controleurs'</span><span class="src-sym">)</span><span class="src-sym">,</span></div></li>
<li><div class="src-line"><a name="a50"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-id"><a href="../Framework/Config.html">Config</a></span><span class="src-sym">::</span><a href="../Framework/Config.html#methodget">get</a><span class="src-sym">(</span><span class="src-str">'chemin_modeles'</span><span class="src-sym">)</span><span class="src-sym">,</span></div></li>
<li><div class="src-line"><a name="a51"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-id"><a href="../Framework/Config.html">Config</a></span><span class="src-sym">::</span><a href="../Framework/Config.html#methodget">get</a><span class="src-sym">(</span><span class="src-str">'chemin_bibliotheque'</span><span class="src-sym">))</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a52"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a53"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">foreach&nbsp;</span><span class="src-sym">(</span><span class="src-var">$dossiers_classes&nbsp;</span><span class="src-key">as&nbsp;</span><span class="src-var">$chemin</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a54"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$fichier_a_tester&nbsp;</span>=&nbsp;<span class="src-var">$chemin</span>.<span class="src-var">$nom_classe</span>.<span class="src-str">'.php'</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a55"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><a href="http://www.php.net/file_exists">file_exists</a><span class="src-sym">(</span><span class="src-var">$fichier_a_tester</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a56"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-inc">include_once&nbsp;</span><span class="src-var">$fichier_a_tester</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a57"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-id">null</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a58"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a59"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a60"></a><span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a61"></a><a href="http://www.php.net/spl_autoload_register">spl_autoload_register</a><span class="src-sym">(</span><span class="src-str">'autoloadAppliDefaut'</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a62"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a63"></a><span class="src-comm">//&nbsp;Autoload&nbsp;défini&nbsp;par&nbsp;l'application</span></div></li>
<li><div class="src-line"><a name="a64"></a><span class="src-key">if&nbsp;</span><span class="src-sym">(</span><a href="http://www.php.net/function_exists">function_exists</a><span class="src-sym">(</span><span class="src-str">'__autoload'</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a65"></a>&nbsp;&nbsp;&nbsp;&nbsp;<a href="http://www.php.net/spl_autoload_register">spl_autoload_register</a><span class="src-sym">(</span><span class="src-str">'__autoload'</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a66"></a><span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a67"></a><span class="src-php">?&gt;</span></div></li>
</ol>
</div>
<div class="credit">
<hr />
Documentation generated on Thu, 04 Mar 2010 19:27:28 +0100 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.3</a>
</div>
</td></tr></table>
</td>
</tr>
</table>
 
</body>
</html>
/tags/v0.3-aleaume/doc/HTMLSmartyConverter/__filesource/fsource_Framework__Log.php.html
New file
0,0 → 1,238
<html>
<head>
<title>File Source for Log.php</title>
<meta http-equiv='Content-Type' content='text/html; charset=UTF-8'/>
<link rel="stylesheet" type="text/css" href="../media/style.css">
</head>
<body>
 
<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%">
<tr>
<td class="header_top">Framework</td>
</tr>
<tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr>
<tr>
<td class="header_menu">
[ <a href="../classtrees_Framework.html" class="menu">class tree: Framework</a> ]
[ <a href="../elementindex_Framework.html" class="menu">index: Framework</a> ]
[ <a href="../elementindex.html" class="menu">all elements</a> ]
</td>
</tr>
<tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr>
</table>
 
<table width="100%" border="0" cellpadding="0" cellspacing="0">
<tr valign="top">
<td width="200" class="menu">
<b>Packages:</b><br />
<a href="../li_Framework.html">Framework</a><br />
<br /><br />
</td>
<td>
<table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top">
 
<h1 align="center">Source for file Log.php</h1>
<p>Documentation is available at <a href="../Framework/_Log.php.html">Log.php</a></p>
<div class="src-code">
<ol><li><div class="src-line"><a name="a1"></a><span class="src-php">&lt;?php</span></div></li>
<li><div class="src-line"><a name="a2"></a><span class="src-comm">//declare(encoding='UTF-8');</span></div></li>
<li><div class="src-line"><a name="a3"></a><span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a4"></a><span class="src-doc">&nbsp;*&nbsp;Classe&nbsp;permettant&nbsp;de&nbsp;logger&nbsp;des&nbsp;messages&nbsp;dans&nbsp;les&nbsp;fichier&nbsp;situés&nbsp;dans&nbsp;le&nbsp;dossier&nbsp;de&nbsp;log</span></div></li>
<li><div class="src-line"><a name="a5"></a><span class="src-doc">&nbsp;*</span></div></li>
<li><div class="src-line"><a name="a6"></a><span class="src-doc">&nbsp;*&nbsp;PHP&nbsp;Version&nbsp;5</span></div></li>
<li><div class="src-line"><a name="a7"></a><span class="src-doc">&nbsp;*</span></div></li>
<li><div class="src-line"><a name="a8"></a><span class="src-doc">&nbsp;*&nbsp;</span><span class="src-doc-coretag">@category</span><span class="src-doc">&nbsp;&nbsp;PHP</span></div></li>
<li><div class="src-line"><a name="a9"></a><span class="src-doc">&nbsp;*&nbsp;</span><span class="src-doc-coretag">@package</span><span class="src-doc">&nbsp;&nbsp;&nbsp;Framework</span></div></li>
<li><div class="src-line"><a name="a10"></a><span class="src-doc">&nbsp;*&nbsp;</span><span class="src-doc-coretag">@author</span><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;aurelien&nbsp;&lt;aurelien@tela-botanica.org&gt;</span></div></li>
<li><div class="src-line"><a name="a11"></a><span class="src-doc">&nbsp;*&nbsp;</span><span class="src-doc-coretag">@copyright</span><span class="src-doc">&nbsp;2009&nbsp;Tela-Botanica</span></div></li>
<li><div class="src-line"><a name="a12"></a><span class="src-doc">&nbsp;*&nbsp;</span><span class="src-doc-coretag">@license</span><span class="src-doc">&nbsp;&nbsp;&nbsp;http://www.cecill.info/licences/Licence_CeCILL_V2-fr.txt&nbsp;Licence&nbsp;CECILL</span></div></li>
<li><div class="src-line"><a name="a13"></a><span class="src-doc">&nbsp;*&nbsp;</span><span class="src-doc-coretag">@version</span><span class="src-doc">&nbsp;&nbsp;&nbsp;SVN:&nbsp;&lt;svn_id&gt;</span></div></li>
<li><div class="src-line"><a name="a14"></a><span class="src-doc">&nbsp;*&nbsp;</span><span class="src-doc-coretag">@link</span><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;/doc/framework/</span></div></li>
<li><div class="src-line"><a name="a15"></a><span class="src-doc">&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a16"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a17"></a><span class="src-key">class&nbsp;</span><a href="../Framework/Log.html">Log</a>&nbsp;<span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a18"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a19"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a20"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Tableau&nbsp;associatif&nbsp;stockant&nbsp;les&nbsp;descripteurs&nbsp;de&nbsp;fichiers</span></div></li>
<li><div class="src-line"><a name="a21"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a22"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">private&nbsp;</span><span class="src-key">static&nbsp;</span><span class="src-var">$fichiersLog&nbsp;</span>=&nbsp;<span class="src-key">array</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a23"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a24"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a25"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Chemin&nbsp;de&nbsp;base&nbsp;du&nbsp;dossier&nbsp;log&nbsp;de&nbsp;l'application</span></div></li>
<li><div class="src-line"><a name="a26"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a27"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">private&nbsp;</span><span class="src-key">static&nbsp;</span><span class="src-var">$cheminLogs&nbsp;</span>=&nbsp;<span class="src-str">''</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a28"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a29"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a30"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Booleen&nbsp;indiquant&nbsp;si&nbsp;l'on&nbsp;peut&nbsp;correctement&nbsp;écrire&nbsp;dans&nbsp;les&nbsp;fichiers&nbsp;de&nbsp;logs</span></div></li>
<li><div class="src-line"><a name="a31"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a32"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">private&nbsp;</span><span class="src-key">static&nbsp;</span><span class="src-var">$droitLogger&nbsp;</span>=&nbsp;<span class="src-id">true</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a33"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a34"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a35"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Zone&nbsp;horaire&nbsp;(pour&nbsp;éviter&nbsp;des&nbsp;avertissements&nbsp;dans&nbsp;les&nbsp;dates)</span></div></li>
<li><div class="src-line"><a name="a36"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a37"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">private&nbsp;</span><span class="src-key">static&nbsp;</span><span class="src-var">$timeZone&nbsp;</span>=&nbsp;<span class="src-str">''</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a38"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a39"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a40"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Taille&nbsp;maximum&nbsp;d'un&nbsp;fichier&nbsp;de&nbsp;log&nbsp;avant&nbsp;que&nbsp;celui&nbsp;ne&nbsp;soit&nbsp;archivé&nbsp;(en&nbsp;octets)</span></div></li>
<li><div class="src-line"><a name="a41"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a42"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">private&nbsp;</span><span class="src-key">static&nbsp;</span><span class="src-var">$tailleMax&nbsp;</span>=&nbsp;<span class="src-num">10000</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a43"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a44"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a45"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;séparateur&nbsp;de&nbsp;chemin</span></div></li>
<li><div class="src-line"><a name="a46"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a47"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">private&nbsp;</span><span class="src-key">static&nbsp;</span><span class="src-var">$sd&nbsp;</span>=&nbsp;<span class="src-id">DIRECTORY_SEPARATOR</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a48"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a49"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a50"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Extension&nbsp;des&nbsp;fichiers&nbsp;de&nbsp;log</span></div></li>
<li><div class="src-line"><a name="a51"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a52"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">private&nbsp;</span><span class="src-key">static&nbsp;</span><span class="src-var">$ext&nbsp;</span>=&nbsp;<span class="src-str">'.log'</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a53"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a54"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a55"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;La&nbsp;classe&nbsp;registre&nbsp;se&nbsp;contient&nbsp;elle-même,&nbsp;(pour&nbsp;le&nbsp;pattern&nbsp;singleton)</span></div></li>
<li><div class="src-line"><a name="a56"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a57"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">private&nbsp;</span><span class="src-key">static&nbsp;</span><span class="src-var">$log</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a58"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a59"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a60"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Constructeur&nbsp;par&nbsp;défaut,&nbsp;privé,&nbsp;car&nbsp;on&nbsp;accède&nbsp;à&nbsp;la&nbsp;classe&nbsp;par&nbsp;le&nbsp;getInstance</span></div></li>
<li><div class="src-line"><a name="a61"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a62"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">private&nbsp;</span><span class="src-key">function&nbsp;</span><span class="src-id">__construct</span><span class="src-sym">(</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a63"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-id">self</span><span class="src-sym">::</span><span class="src-var">$sd&nbsp;</span>=&nbsp;<span class="src-id">Config</span><span class="src-sym">::</span><span class="src-id">get</span><span class="src-sym">(</span><span class="src-str">'ds'</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a64"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-id">self</span><span class="src-sym">::</span><span class="src-var">$cheminLogs&nbsp;</span>=&nbsp;<span class="src-id">Config</span><span class="src-sym">::</span><span class="src-id">get</span><span class="src-sym">(</span><span class="src-str">'chemin_logs'</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a65"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-id">self</span><span class="src-sym">::</span><span class="src-var">$timeZone&nbsp;</span>=&nbsp;<span class="src-id">Config</span><span class="src-sym">::</span><span class="src-id">get</span><span class="src-sym">(</span><span class="src-str">'fw_timezone'</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a66"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-id">self</span><span class="src-sym">::</span><span class="src-var">$tailleMax&nbsp;</span>=&nbsp;<span class="src-id">Config</span><span class="src-sym">::</span><span class="src-id">get</span><span class="src-sym">(</span><span class="src-str">'fw_taille_max_logs'</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a67"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a68"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;gestion&nbsp;de&nbsp;la&nbsp;timezone&nbsp;pour&nbsp;éviter&nbsp;des&nbsp;erreurs</span></div></li>
<li><div class="src-line"><a name="a69"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><a href="http://www.php.net/function_exists">function_exists</a><span class="src-sym">(</span><span class="src-str">'date_default_timezone_set'</span><span class="src-sym">)&nbsp;</span>&amp;&amp;&nbsp;<a href="http://www.php.net/function_exists">function_exists</a><span class="src-sym">(</span><span class="src-str">'date_default_timezone_get'</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a70"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="http://www.php.net/date_default_timezone_set">date_default_timezone_set</a><span class="src-sym">(</span><span class="src-id">self</span><span class="src-sym">::</span><span class="src-var">$timeZone</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a71"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a72"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a73"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-sym">!</span><span class="src-id">is_dir</span><span class="src-sym">(</span><span class="src-id">self</span><span class="src-sym">::</span><span class="src-var">$cheminLogs</span><span class="src-sym">)&nbsp;</span>||&nbsp;<span class="src-sym">!</span><span class="src-id">is_writable</span><span class="src-sym">(</span><span class="src-id">self</span><span class="src-sym">::</span><span class="src-var">$cheminLogs</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a74"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-id">self</span><span class="src-sym">::</span><span class="src-id">desactiverEcriture</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a75"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a76"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a77"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a78"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a79"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Fonction&nbsp;qui&nbsp;renvoie&nbsp;l'instance&nbsp;de&nbsp;classe&nbsp;en&nbsp;assurant&nbsp;son&nbsp;unicité,&nbsp;c'est&nbsp;l'unique&nbsp;méthode&nbsp;qui&nbsp;doit&nbsp;être</span></div></li>
<li><div class="src-line"><a name="a80"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;utilisée&nbsp;pour&nbsp;récupérer&nbsp;l'objet&nbsp;Registre</span></div></li>
<li><div class="src-line"><a name="a81"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@return&nbsp;</span><span class="src-doc-type">Log&nbsp;</span><span class="src-doc">&nbsp;&nbsp;&nbsp;le&nbsp;gestionnaire&nbsp;de&nbsp;log&nbsp;en&nbsp;cours</span></div></li>
<li><div class="src-line"><a name="a82"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a83"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">public&nbsp;</span><span class="src-key">static&nbsp;</span><span class="src-key">function&nbsp;</span><a href="../Framework/Log.html#methodgetInstance">getInstance</a><span class="src-sym">(</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a84"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-id">self</span><span class="src-sym">::</span><span class="src-var">$log&nbsp;</span>instanceof&nbsp;<span class="src-id">Log</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a85"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-id">self</span><span class="src-sym">::</span><span class="src-var">$log</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a86"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a87"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-id">self</span><span class="src-sym">::</span><span class="src-var">$log&nbsp;</span>=&nbsp;<span class="src-key">new&nbsp;</span><span class="src-id">Log</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a88"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-id">self</span><span class="src-sym">::</span><span class="src-var">$log</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a89"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a90"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a91"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a92"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Ajoute&nbsp;une&nbsp;entrée&nbsp;au&nbsp;log&nbsp;spécifié&nbsp;par&nbsp;le&nbsp;paramètre&nbsp;$nomFichier</span></div></li>
<li><div class="src-line"><a name="a93"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@param&nbsp;</span><span class="src-doc-type">string&nbsp;</span><span class="src-doc-var">$nomFichier&nbsp;</span><span class="src-doc">le&nbsp;nom&nbsp;du&nbsp;fichier&nbsp;dans&nbsp;lequel&nbsp;écrire</span></div></li>
<li><div class="src-line"><a name="a94"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a95"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">public&nbsp;</span><span class="src-key">static&nbsp;</span><span class="src-key">function&nbsp;</span><a href="../Framework/Log.html#methodajouterEntree">ajouterEntree</a><span class="src-sym">(</span><span class="src-var">$nomFichier</span><span class="src-sym">,</span><span class="src-var">$entree</span><span class="src-sym">,</span><span class="src-var">$mode</span>=<span class="src-str">'a+'</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a96"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if</span><span class="src-sym">(</span><span class="src-id">self</span><span class="src-sym">::</span><span class="src-var">$droitLogger</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a97"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$date&nbsp;</span>=&nbsp;<span class="src-str">&quot;\n&quot;</span>.<span class="src-str">&quot;\n&quot;</span>.<span class="src-id">date</span><span class="src-sym">(</span><span class="src-str">'d&nbsp;m&nbsp;Y&nbsp;H:i'</span><span class="src-sym">)</span>.<span class="src-str">&quot;\n&quot;&nbsp;</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a98"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a99"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;si&nbsp;le&nbsp;fichier&nbsp;est&nbsp;déjà&nbsp;dans&nbsp;le&nbsp;tableau&nbsp;et&nbsp;qu'on&nbsp;peut&nbsp;y&nbsp;écrire</span></div></li>
<li><div class="src-line"><a name="a100"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if</span><span class="src-sym">(</span><span class="src-id">self</span><span class="src-sym">::</span><span class="src-id">verifierOuvrirFichier</span><span class="src-sym">(</span><span class="src-var">$nomFichier</span><span class="src-sym">,</span><span class="src-var">$mode</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a101"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;on&nbsp;y&nbsp;écrit&nbsp;le&nbsp;message&nbsp;de&nbsp;log</span></div></li>
<li><div class="src-line"><a name="a102"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="http://www.php.net/fwrite">fwrite</a><span class="src-sym">(</span><span class="src-id">self</span><span class="src-sym">::</span><span class="src-var">$fichiersLog</span><span class="src-sym">[</span><span class="src-var">$nomFichier</span><span class="src-sym">]</span><span class="src-sym">,</span><span class="src-var">$date</span>.<span class="src-var">$entree</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a103"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;on&nbsp;vérifie&nbsp;si&nbsp;le&nbsp;fichier&nbsp;ne&nbsp;dépasse&nbsp;pas&nbsp;la&nbsp;taille&nbsp;maximale</span></div></li>
<li><div class="src-line"><a name="a104"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-id">self</span><span class="src-sym">::</span><span class="src-id">verifierTailleFichierOuArchiver</span><span class="src-sym">(</span><span class="src-var">$nomFichier</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a105"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}&nbsp;</span><span class="src-key">else&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a106"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;sinon&nbsp;on&nbsp;interdit&nbsp;l'écriture</span></div></li>
<li><div class="src-line"><a name="a107"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-id">self</span><span class="src-sym">::</span><span class="src-id">desactiverEcriture</span><span class="src-sym">(</span><span class="src-var">$nomFichier</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a108"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a109"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a110"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a111"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a112"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a113"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Vide&nbsp;un&nbsp;fichier&nbsp;log&nbsp;indiqué</span></div></li>
<li><div class="src-line"><a name="a114"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@param&nbsp;</span><span class="src-doc-type">string&nbsp;</span><span class="src-doc-var">$nomFichier&nbsp;</span><span class="src-doc">le&nbsp;nom&nbsp;du&nbsp;fichier&nbsp;à&nbsp;vider</span></div></li>
<li><div class="src-line"><a name="a115"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a116"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">public&nbsp;</span><span class="src-key">static&nbsp;</span><span class="src-key">function&nbsp;</span><a href="../Framework/Log.html#methodviderLog">viderLog</a><span class="src-sym">(</span><span class="src-var">$nomFichier</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a117"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="../Framework/Log.html#methodajouterEntree">ajouterEntree</a><span class="src-sym">(</span><span class="src-var">$nomFichier</span><span class="src-sym">,&nbsp;</span><span class="src-str">''</span><span class="src-sym">,&nbsp;</span><span class="src-str">'w'</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a118"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a119"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a120"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a121"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Vérifie&nbsp;la&nbsp;présence&nbsp;d'un&nbsp;fichier&nbsp;dans&nbsp;le&nbsp;tableau,&nbsp;ses&nbsp;droits&nbsp;d'écriture,</span></div></li>
<li><div class="src-line"><a name="a122"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;l'ouvre&nbsp;si&nbsp;nécessaire</span></div></li>
<li><div class="src-line"><a name="a123"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@param&nbsp;</span><span class="src-doc-type">string&nbsp;</span><span class="src-doc-var">$nomFichier&nbsp;</span><span class="src-doc">le&nbsp;nom&nbsp;du&nbsp;fichier&nbsp;dont&nbsp;on&nbsp;doit&nbsp;vérifier&nbsp;la&nbsp;présence</span></div></li>
<li><div class="src-line"><a name="a124"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@return&nbsp;</span><span class="src-doc-type">boolean&nbsp;</span><span class="src-doc">true&nbsp;si&nbsp;le&nbsp;fichier&nbsp;est&nbsp;ouvert&nbsp;ou&nbsp;maintenant&nbsp;accessible,&nbsp;false&nbsp;sinon</span></div></li>
<li><div class="src-line"><a name="a125"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a126"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">public&nbsp;</span><span class="src-key">static&nbsp;</span><span class="src-key">function&nbsp;</span><a href="../Framework/Log.html#methodverifierOuvrirFichier">verifierOuvrirFichier</a><span class="src-sym">(</span><span class="src-var">$nomFichier</span><span class="src-sym">,</span><span class="src-var">$mode</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a127"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;le&nbsp;fichier&nbsp;est&nbsp;il&nbsp;déjà&nbsp;ouvert&nbsp;?</span></div></li>
<li><div class="src-line"><a name="a128"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><a href="http://www.php.net/in_array">in_array</a><span class="src-sym">(</span><span class="src-var">$nomFichier</span><span class="src-sym">,&nbsp;</span><span class="src-id">self</span><span class="src-sym">::</span><span class="src-var">$fichiersLog</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a129"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;si&nbsp;oui&nbsp;peut&nbsp;on&nbsp;y&nbsp;écrire&nbsp;?</span></div></li>
<li><div class="src-line"><a name="a130"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-id">is_writable</span><span class="src-sym">(</span><span class="src-id">self</span><span class="src-sym">::</span><span class="src-var">$cheminLogs</span>.<span class="src-var">$nomFichier</span>.<span class="src-id">self</span><span class="src-sym">::</span><span class="src-var">$ext</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a131"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;si&nbsp;oui&nbsp;on&nbsp;renvoie&nbsp;le&nbsp;descripteur</span></div></li>
<li><div class="src-line"><a name="a132"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-id">true</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a133"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a134"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-id">false</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a135"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}&nbsp;</span><span class="src-key">else&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a136"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;sinon&nbsp;on&nbsp;l'ouvre</span></div></li>
<li><div class="src-line"><a name="a137"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$fp&nbsp;</span>=&nbsp;<span class="src-sym">@</span><a href="http://www.php.net/fopen">fopen</a><span class="src-sym">(</span><span class="src-id">self</span><span class="src-sym">::</span><span class="src-var">$cheminLogs</span>.<span class="src-var">$nomFichier</span>.<span class="src-id">self</span><span class="src-sym">::</span><span class="src-var">$ext</span><span class="src-sym">,</span><span class="src-var">$mode</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a138"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;si&nbsp;l'ouverture&nbsp;a&nbsp;réussi&nbsp;et&nbsp;si&nbsp;le&nbsp;fichier&nbsp;a&nbsp;les&nbsp;droits&nbsp;d'écriture</span></div></li>
<li><div class="src-line"><a name="a139"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$fp&nbsp;</span>&amp;&amp;&nbsp;<span class="src-id">is_writable</span><span class="src-sym">(</span><span class="src-id">self</span><span class="src-sym">::</span><span class="src-var">$cheminLogs</span>.<span class="src-var">$nomFichier</span>.<span class="src-id">self</span><span class="src-sym">::</span><span class="src-var">$ext</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a140"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;si&nbsp;oui&nbsp;on&nbsp;renvoie&nbsp;le&nbsp;descripteur&nbsp;qu'on&nbsp;ajoute&nbsp;au&nbsp;tableau</span></div></li>
<li><div class="src-line"><a name="a141"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-id">self</span><span class="src-sym">::</span><span class="src-var">$fichiersLog</span><span class="src-sym">[</span><span class="src-var">$nomFichier</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-var">$fp</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a142"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-id">true</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a143"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a144"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-id">false</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a145"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a146"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a147"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a148"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a149"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Vérifie&nbsp;la&nbsp;taille&nbsp;d'un&nbsp;fichier&nbsp;donné&nbsp;et&nbsp;si&nbsp;celle&nbsp;ci&nbsp;est&nbsp;trop&nbsp;importante</span></div></li>
<li><div class="src-line"><a name="a150"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;archive&nbsp;le&nbsp;fichier&nbsp;de&nbsp;log</span></div></li>
<li><div class="src-line"><a name="a151"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@param&nbsp;</span><span class="src-doc-type">string&nbsp;</span><span class="src-doc-var">$nomFichier&nbsp;</span><span class="src-doc">nom&nbsp;du&nbsp;fichier&nbsp;à&nbsp;vérifier</span></div></li>
<li><div class="src-line"><a name="a152"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a153"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">private&nbsp;</span><span class="src-key">static&nbsp;</span><span class="src-key">function&nbsp;</span><span class="src-id">verifierTailleFichierOuArchiver</span><span class="src-sym">(</span><span class="src-var">$nomFichier</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a154"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if</span><span class="src-sym">(</span><a href="http://www.php.net/filesize">filesize</a><span class="src-sym">(</span><span class="src-id">self</span><span class="src-sym">::</span><span class="src-var">$cheminLogs</span>.<span class="src-var">$nomFichier</span>.<span class="src-id">self</span><span class="src-sym">::</span><span class="src-var">$ext</span><span class="src-sym">)&nbsp;</span>&gt;&nbsp;<span class="src-id">self</span><span class="src-sym">::</span><span class="src-var">$tailleMax</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a155"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-id">rename</span><span class="src-sym">(</span><span class="src-id">self</span><span class="src-sym">::</span><span class="src-var">$cheminLogs</span>.<span class="src-var">$nomFichier</span>.<span class="src-id">self</span><span class="src-sym">::</span><span class="src-var">$ext</span><span class="src-sym">,</span><span class="src-id">self</span><span class="src-sym">::</span><span class="src-var">$cheminLogs</span>.<span class="src-var">$nomFichier</span>.<span class="src-id">date</span><span class="src-sym">(</span><span class="src-str">'d_m_Y_H:i'</span><span class="src-sym">)</span>.<span class="src-id">self</span><span class="src-sym">::</span><span class="src-var">$ext</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a156"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-id">ajouterEntree</span><span class="src-sym">(</span><span class="src-var">$nomFichier</span><span class="src-sym">,</span><span class="src-str">''</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a157"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a158"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a159"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a160"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a161"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Désactive&nbsp;l'écriture&nbsp;du&nbsp;log&nbsp;et&nbsp;envoie&nbsp;un&nbsp;message&nbsp;au&nbsp;gestionnaire&nbsp;d'erreurs</span></div></li>
<li><div class="src-line"><a name="a162"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@param&nbsp;</span><span class="src-doc-type">string&nbsp;</span><span class="src-doc-var">$nomFichier&nbsp;</span><span class="src-doc">le&nbsp;nom&nbsp;du&nbsp;fichier&nbsp;qui&nbsp;a&nbsp;causé&nbsp;l'erreur</span></div></li>
<li><div class="src-line"><a name="a163"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a164"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">private&nbsp;</span><span class="src-key">static&nbsp;</span><span class="src-key">function&nbsp;</span><span class="src-id">desactiverEcriture</span><span class="src-sym">(</span><span class="src-var">$nomFichier&nbsp;</span>=&nbsp;<span class="src-str">''</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a165"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-id">self</span><span class="src-sym">::</span><span class="src-var">$droitLogger&nbsp;</span>=&nbsp;<span class="src-id">false</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a166"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$nomFichier&nbsp;</span>!=&nbsp;<span class="src-str">''</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a167"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$fichierDossier&nbsp;</span>=&nbsp;<span class="src-str">'fichier&nbsp;'</span>.<span class="src-var">$nomFichier&nbsp;</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a168"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}&nbsp;</span><span class="src-key">else&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a169"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$fichierDossier&nbsp;</span>=&nbsp;<span class="src-str">'dossier&nbsp;des&nbsp;logs'</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a170"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a171"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$message&nbsp;</span>=&nbsp;<span class="src-str">'Écriture&nbsp;impossible&nbsp;dans&nbsp;le&nbsp;'</span>.<span class="src-var">$fichierDossier</span>.<span class="src-str">',&nbsp;Assurez-vous&nbsp;des&nbsp;droits&nbsp;du&nbsp;dossier&nbsp;et&nbsp;des&nbsp;fichiers'</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a172"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$e&nbsp;</span>=&nbsp;<span class="src-key">new&nbsp;</span><span class="src-id">ErrorException</span><span class="src-sym">(</span><span class="src-var">$message</span><span class="src-sym">,&nbsp;</span><span class="src-num">0</span><span class="src-sym">,&nbsp;</span><span class="src-id">E_USER_WARNING</span><span class="src-sym">,&nbsp;</span>__FILE__<span class="src-sym">,&nbsp;</span>__LINE__<span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a173"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-id"><a href="../Framework/GestionnaireException.html">GestionnaireException</a></span><span class="src-sym">::</span><a href="../Framework/GestionnaireException.html#methodgererException">gererException</a><span class="src-sym">(</span><span class="src-var">$e</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a174"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a175"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a176"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a177"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;destructeur&nbsp;de&nbsp;classe,&nbsp;ferme&nbsp;les&nbsp;descripteurs&nbsp;ouverts</span></div></li>
<li><div class="src-line"><a name="a178"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a179"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">public&nbsp;</span><span class="src-key">function&nbsp;</span><a href="../Framework/Log.html#method__destruct">__destruct</a><span class="src-sym">(</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a180"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">foreach</span><span class="src-sym">(</span><span class="src-id">self</span><span class="src-sym">::</span><span class="src-var">$fichiersLog&nbsp;</span><span class="src-key">as&nbsp;</span><span class="src-var">$nomFichier&nbsp;</span>=&gt;&nbsp;<span class="src-var">$fp</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a181"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-id">fclose</span><span class="src-sym">(</span><span class="src-var">$fp</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a182"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a183"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a184"></a><span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a185"></a><span class="src-php">?&gt;</span></div></li>
</ol>
</div>
<div class="credit">
<hr />
Documentation generated on Thu, 04 Mar 2010 19:27:33 +0100 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.3</a>
</div>
</td></tr></table>
</td>
</tr>
</table>
 
</body>
</html>
/tags/v0.3-aleaume/doc/HTMLSmartyConverter/__filesource/fsource_Framework__Url.php.html
New file
0,0 → 1,812
<html>
<head>
<title>File Source for Url.php</title>
<meta http-equiv='Content-Type' content='text/html; charset=UTF-8'/>
<link rel="stylesheet" type="text/css" href="../media/style.css">
</head>
<body>
 
<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%">
<tr>
<td class="header_top">Framework</td>
</tr>
<tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr>
<tr>
<td class="header_menu">
[ <a href="../classtrees_Framework.html" class="menu">class tree: Framework</a> ]
[ <a href="../elementindex_Framework.html" class="menu">index: Framework</a> ]
[ <a href="../elementindex.html" class="menu">all elements</a> ]
</td>
</tr>
<tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr>
</table>
 
<table width="100%" border="0" cellpadding="0" cellspacing="0">
<tr valign="top">
<td width="200" class="menu">
<b>Packages:</b><br />
<a href="../li_Framework.html">Framework</a><br />
<br /><br />
</td>
<td>
<table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top">
 
<h1 align="center">Source for file Url.php</h1>
<p>Documentation is available at <a href="../Framework/_Url.php.html">Url.php</a></p>
<div class="src-code">
<ol><li><div class="src-line"><a name="a1"></a><span class="src-php">&lt;?php</span></div></li>
<li><div class="src-line"><a name="a2"></a><span class="src-comm">//&nbsp;declare(encoding='UTF-8');</span></div></li>
<li><div class="src-line"><a name="a3"></a><span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a4"></a><span class="src-doc">*&nbsp;classe&nbsp;Url,&nbsp;gérant&nbsp;le&nbsp;découpage&nbsp;des&nbsp;paramètres,&nbsp;leurs&nbsp;modification&nbsp;etc...</span></div></li>
<li><div class="src-line"><a name="a5"></a><span class="src-doc">*&nbsp;Traduction&nbsp;et&nbsp;conversion&nbsp;d'une&nbsp;classe&nbsp;(NET_Url2)&nbsp;issue&nbsp;de&nbsp;Pear</span></div></li>
<li><div class="src-line"><a name="a6"></a><span class="src-doc">*</span></div></li>
<li><div class="src-line"><a name="a7"></a><span class="src-doc">*&nbsp;</span><span class="src-doc-coretag">@category</span><span class="src-doc">&nbsp;&nbsp;Php5</span></div></li>
<li><div class="src-line"><a name="a8"></a><span class="src-doc">*&nbsp;</span><span class="src-doc-coretag">@package</span><span class="src-doc">&nbsp;&nbsp;&nbsp;Framework</span></div></li>
<li><div class="src-line"><a name="a9"></a><span class="src-doc">//&nbsp;Auteur&nbsp;principal</span></div></li>
<li><div class="src-line"><a name="a10"></a><span class="src-doc">*&nbsp;</span><span class="src-doc-coretag">@author</span><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;Christian&nbsp;Schmidt&nbsp;&lt;schmidt@php.net&gt;</span></div></li>
<li><div class="src-line"><a name="a11"></a><span class="src-doc">//&nbsp;Autre&nbsp;auteurs</span></div></li>
<li><div class="src-line"><a name="a12"></a><span class="src-doc">*&nbsp;</span><span class="src-doc-coretag">@author</span><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;Aurélien&nbsp;PERONNET&nbsp;&lt;aurelien@tela-botanica.org&gt;</span></div></li>
<li><div class="src-line"><a name="a13"></a><span class="src-doc">*&nbsp;</span><span class="src-doc-coretag">@author</span><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;Jean-Pascal&nbsp;MILCENT&nbsp;&lt;jpm@tela-botanica.org&gt;</span></div></li>
<li><div class="src-line"><a name="a14"></a><span class="src-doc">*&nbsp;</span><span class="src-doc-coretag">@copyright</span><span class="src-doc">&nbsp;2009&nbsp;Tela-Botanica</span></div></li>
<li><div class="src-line"><a name="a15"></a><span class="src-doc">*&nbsp;</span><span class="src-doc-coretag">@license</span><span class="src-doc">&nbsp;&nbsp;&nbsp;http://www.cecill.info/licences/Licence_CeCILL_V2-fr.txt&nbsp;Licence&nbsp;CECILL</span></div></li>
<li><div class="src-line"><a name="a16"></a><span class="src-doc">*&nbsp;</span><span class="src-doc-coretag">@license</span><span class="src-doc">&nbsp;&nbsp;&nbsp;http://www.gnu.org/licenses/gpl.html&nbsp;Licence&nbsp;GNU-GPL</span></div></li>
<li><div class="src-line"><a name="a17"></a><span class="src-doc">*&nbsp;</span><span class="src-doc-coretag">@version</span><span class="src-doc">&nbsp;&nbsp;&nbsp;SVN:&nbsp;$Id:&nbsp;Url.php&nbsp;150&nbsp;2010-03-03&nbsp;15:49:06Z&nbsp;jpm&nbsp;$</span></div></li>
<li><div class="src-line"><a name="a18"></a><span class="src-doc">*&nbsp;</span><span class="src-doc-coretag">@link</span><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;/doc/framework/</span></div></li>
<li><div class="src-line"><a name="a19"></a><span class="src-doc">*</span></div></li>
<li><div class="src-line"><a name="a20"></a><span class="src-doc">*/</span></div></li>
<li><div class="src-line"><a name="a21"></a><span class="src-key">class&nbsp;</span><a href="../Framework/Url.html">Url</a></div></li>
<li><div class="src-line"><a name="a22"></a><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a23"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a24"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Parsing&nbsp;strict&nbsp;dans&nbsp;resoudre()&nbsp;(voir&nbsp;RFC&nbsp;3986,&nbsp;section&nbsp;5.2.2).&nbsp;Par&nbsp;défaut</span></div></li>
<li><div class="src-line"><a name="a25"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;à&nbsp;true.</span></div></li>
<li><div class="src-line"><a name="a26"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a27"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">const&nbsp;</span><span class="src-id">OPTION_STRICTE&nbsp;</span>=&nbsp;<span class="src-str">'strict'</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a28"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a29"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a30"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Répresenter&nbsp;les&nbsp;tableaux&nbsp;dans&nbsp;les&nbsp;requêtes&nbsp;en&nbsp;utilisant&nbsp;la&nbsp;notation&nbsp;php&nbsp;[].&nbsp;Par&nbsp;défaut&nbsp;à&nbsp;true.</span></div></li>
<li><div class="src-line"><a name="a31"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a32"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">const&nbsp;</span><span class="src-id">OPTION_UTILISER_CROCHETS&nbsp;</span>=&nbsp;<span class="src-str">'use_brackets'</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a33"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a34"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a35"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;URL-encoder&nbsp;les&nbsp;clés&nbsp;des&nbsp;variables&nbsp;dans&nbsp;les&nbsp;requêtes.&nbsp;Par&nbsp;défaut&nbsp;à&nbsp;true.</span></div></li>
<li><div class="src-line"><a name="a36"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a37"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">const&nbsp;</span><span class="src-id">OPTION_ENCODER_CLES&nbsp;</span>=&nbsp;<span class="src-str">'encode_keys'</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a38"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a39"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a40"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Séparateurs&nbsp;de&nbsp;variables&nbsp;lors&nbsp;du&nbsp;parsing&nbsp;de&nbsp;la&nbsp;requête.&nbsp;Chaque&nbsp;caractère</span></div></li>
<li><div class="src-line"><a name="a41"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;est&nbsp;considéré&nbsp;comme&nbsp;un&nbsp;séparateur.&nbsp;Par&nbsp;défaut,&nbsp;spécifié&nbsp;par&nbsp;le&nbsp;paramêtre</span></div></li>
<li><div class="src-line"><a name="a42"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;arg_separator.input&nbsp;dans&nbsp;php.ini&nbsp;(par&nbsp;défaut&nbsp;&quot;&amp;&quot;).</span></div></li>
<li><div class="src-line"><a name="a43"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a44"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">const&nbsp;</span><span class="src-id">OPTION_SEPARATEUR_ENTREE&nbsp;</span>=&nbsp;<span class="src-str">'input_separator'</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a45"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a46"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a47"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Séparateur&nbsp;de&nbsp;variables&nbsp;lors&nbsp;de&nbsp;la&nbsp;génération&nbsp;de&nbsp;la&nbsp;requête.&nbsp;Par&nbsp;défaut,&nbsp;spécifié</span></div></li>
<li><div class="src-line"><a name="a48"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;par&nbsp;le&nbsp;paramètre&nbsp;arg_separator.output&nbsp;dans&nbsp;php.ini&nbsp;(par&nbsp;défaut&nbsp;&quot;&amp;&quot;).</span></div></li>
<li><div class="src-line"><a name="a49"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a50"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">const&nbsp;</span><span class="src-id">OPTION_SEPARATEUR_SORTIE&nbsp;</span>=&nbsp;<span class="src-str">'output_separator'</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a51"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a52"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a53"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Options&nbsp;par&nbsp;défaut&nbsp;correspondant&nbsp;au&nbsp;comportement&nbsp;de&nbsp;php</span></div></li>
<li><div class="src-line"><a name="a54"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;vis&nbsp;à&nbsp;vis&nbsp;de&nbsp;$_GET</span></div></li>
<li><div class="src-line"><a name="a55"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a56"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">private&nbsp;</span><span class="src-var">$options&nbsp;</span>=&nbsp;<span class="src-key">array</span><span class="src-sym">(</span></div></li>
<li><div class="src-line"><a name="a57"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-id">self</span><span class="src-sym">::</span><span class="src-id">OPTION_STRICTE&nbsp;</span>=&gt;&nbsp;<span class="src-id">true</span><span class="src-sym">,</span></div></li>
<li><div class="src-line"><a name="a58"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-id">self</span><span class="src-sym">::</span><span class="src-id">OPTION_UTILISER_CROCHETS&nbsp;</span>=&gt;&nbsp;<span class="src-id">true</span><span class="src-sym">,</span></div></li>
<li><div class="src-line"><a name="a59"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-id">self</span><span class="src-sym">::</span><span class="src-id">OPTION_ENCODER_CLES&nbsp;</span>=&gt;&nbsp;<span class="src-id">true</span><span class="src-sym">,</span></div></li>
<li><div class="src-line"><a name="a60"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-id">self</span><span class="src-sym">::</span><span class="src-id">OPTION_SEPARATEUR_ENTREE&nbsp;</span>=&gt;&nbsp;<span class="src-str">'x&amp;'</span><span class="src-sym">,</span></div></li>
<li><div class="src-line"><a name="a61"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-id">self</span><span class="src-sym">::</span><span class="src-id">OPTION_SEPARATEUR_SORTIE&nbsp;</span>=&gt;&nbsp;<span class="src-str">'x&amp;'</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a62"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a63"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a64"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@var&nbsp;</span><span class="src-doc">&nbsp;</span><span class="src-doc-type">string</span><span class="src-doc">|</span><span class="src-doc-type">bool</span></div></li>
<li><div class="src-line"><a name="a65"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a66"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">private&nbsp;</span><span class="src-var">$schema&nbsp;</span>=&nbsp;<span class="src-id">false</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a67"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a68"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a69"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@var&nbsp;</span><span class="src-doc">&nbsp;</span><span class="src-doc-type">string</span><span class="src-doc">|</span><span class="src-doc-type">bool</span></div></li>
<li><div class="src-line"><a name="a70"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a71"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">private&nbsp;</span><span class="src-var">$infoUtilisateur&nbsp;</span>=&nbsp;<span class="src-id">false</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a72"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a73"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a74"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@var&nbsp;</span><span class="src-doc">&nbsp;</span><span class="src-doc-type">string</span><span class="src-doc">|</span><span class="src-doc-type">bool</span></div></li>
<li><div class="src-line"><a name="a75"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a76"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">private&nbsp;</span><span class="src-var">$hote&nbsp;</span>=&nbsp;<span class="src-id">false</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a77"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a78"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a79"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@var&nbsp;</span><span class="src-doc">&nbsp;</span><span class="src-doc-type">int</span><span class="src-doc">|</span><span class="src-doc-type">bool</span></div></li>
<li><div class="src-line"><a name="a80"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a81"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">private&nbsp;</span><span class="src-var">$port&nbsp;</span>=&nbsp;<span class="src-id">false</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a82"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a83"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a84"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@var&nbsp;</span><span class="src-doc">&nbsp;</span><span class="src-doc-type">string&nbsp;</span></div></li>
<li><div class="src-line"><a name="a85"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a86"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">private&nbsp;</span><span class="src-var">$chemin&nbsp;</span>=&nbsp;<span class="src-str">''</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a87"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a88"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a89"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@var&nbsp;</span><span class="src-doc">&nbsp;</span><span class="src-doc-type">string</span><span class="src-doc">|</span><span class="src-doc-type">bool</span></div></li>
<li><div class="src-line"><a name="a90"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a91"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">private&nbsp;</span><span class="src-var">$requete&nbsp;</span>=&nbsp;<span class="src-id">false</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a92"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a93"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a94"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@var&nbsp;</span><span class="src-doc">&nbsp;</span><span class="src-doc-type">string</span><span class="src-doc">|</span><span class="src-doc-type">bool</span></div></li>
<li><div class="src-line"><a name="a95"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a96"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">private&nbsp;</span><span class="src-var">$fragment&nbsp;</span>=&nbsp;<span class="src-id">false</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a97"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a98"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a99"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@param&nbsp;</span><span class="src-doc-type">string&nbsp;</span><span class="src-doc-var">$url&nbsp;</span><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;une&nbsp;URL&nbsp;relative&nbsp;ou&nbsp;absolue</span></div></li>
<li><div class="src-line"><a name="a100"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@param&nbsp;</span><span class="src-doc-type">array&nbsp;</span><span class="src-doc">&nbsp;</span><span class="src-doc-var">$options&nbsp;</span></div></li>
<li><div class="src-line"><a name="a101"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a102"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">public&nbsp;</span><span class="src-key">function&nbsp;</span><a href="../Framework/Url.html#method__construct">__construct</a><span class="src-sym">(</span><span class="src-var">$url</span><span class="src-sym">,&nbsp;</span><span class="src-var">$options&nbsp;</span>=&nbsp;<span class="src-id">null</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a103"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Framework/Url.html#methodsetOption">setOption</a><span class="src-sym">(</span><span class="src-id">self</span><span class="src-sym">::</span><span class="src-id">OPTION_SEPARATEUR_ENTREE</span><span class="src-sym">,</span></div></li>
<li><div class="src-line"><a name="a104"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-id"><a href="../Framework/Config.html">Config</a></span><span class="src-sym">::</span><a href="../Framework/Config.html#methodget">get</a><span class="src-sym">(</span><span class="src-str">'fw_url_arg_separateur_entree'</span><span class="src-sym">))</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a105"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Framework/Url.html#methodsetOption">setOption</a><span class="src-sym">(</span><span class="src-id">self</span><span class="src-sym">::</span><span class="src-id">OPTION_SEPARATEUR_SORTIE</span><span class="src-sym">,</span></div></li>
<li><div class="src-line"><a name="a106"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-id"><a href="../Framework/Config.html">Config</a></span><span class="src-sym">::</span><a href="../Framework/Config.html#methodget">get</a><span class="src-sym">(</span><span class="src-str">'fw_url_arg_separateur_sortie'</span><span class="src-sym">))</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a107"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><a href="http://www.php.net/is_array">is_array</a><span class="src-sym">(</span><span class="src-var">$options</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a108"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">foreach&nbsp;</span><span class="src-sym">(</span><span class="src-var">$options&nbsp;</span><span class="src-key">as&nbsp;</span><span class="src-var">$nomOption&nbsp;</span>=&gt;&nbsp;<span class="src-var">$valeur</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a109"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Framework/Url.html#methodsetOption">setOption</a><span class="src-sym">(</span><span class="src-var">$nomOption</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a110"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a111"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a112"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a113"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><a href="http://www.php.net/preg_match">preg_match</a><span class="src-sym">(</span><span class="src-str">'@^([a-z][a-z0-9.+-]*):@i'</span><span class="src-sym">,&nbsp;</span><span class="src-var">$url</span><span class="src-sym">,&nbsp;</span><span class="src-var">$reg</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a114"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">schema&nbsp;</span>=&nbsp;<span class="src-var">$reg</span><span class="src-sym">[</span><span class="src-num">1</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a115"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$url&nbsp;</span>=&nbsp;<a href="http://www.php.net/substr">substr</a><span class="src-sym">(</span><span class="src-var">$url</span><span class="src-sym">,&nbsp;</span><a href="http://www.php.net/strlen">strlen</a><span class="src-sym">(</span><span class="src-var">$reg</span><span class="src-sym">[</span><span class="src-num">0</span><span class="src-sym">]</span><span class="src-sym">))</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a116"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a117"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a118"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><a href="http://www.php.net/preg_match">preg_match</a><span class="src-sym">(</span><span class="src-str">'@^//([^/#?]+)@'</span><span class="src-sym">,&nbsp;</span><span class="src-var">$url</span><span class="src-sym">,&nbsp;</span><span class="src-var">$reg</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a119"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Framework/Url.html#methodsetAutorite">setAutorite</a><span class="src-sym">(</span><span class="src-var">$reg</span><span class="src-sym">[</span><span class="src-num">1</span><span class="src-sym">]</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a120"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$url&nbsp;</span>=&nbsp;<a href="http://www.php.net/substr">substr</a><span class="src-sym">(</span><span class="src-var">$url</span><span class="src-sym">,&nbsp;</span><a href="http://www.php.net/strlen">strlen</a><span class="src-sym">(</span><span class="src-var">$reg</span><span class="src-sym">[</span><span class="src-num">0</span><span class="src-sym">]</span><span class="src-sym">))</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a121"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a122"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a123"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$i&nbsp;</span>=&nbsp;<a href="http://www.php.net/strcspn">strcspn</a><span class="src-sym">(</span><span class="src-var">$url</span><span class="src-sym">,&nbsp;</span><span class="src-str">'?#'</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a124"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">chemin&nbsp;</span>=&nbsp;<a href="http://www.php.net/substr">substr</a><span class="src-sym">(</span><span class="src-var">$url</span><span class="src-sym">,&nbsp;</span><span class="src-num">0</span><span class="src-sym">,&nbsp;</span><span class="src-var">$i</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a125"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$url&nbsp;</span>=&nbsp;<a href="http://www.php.net/substr">substr</a><span class="src-sym">(</span><span class="src-var">$url</span><span class="src-sym">,&nbsp;</span><span class="src-var">$i</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a126"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a127"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><a href="http://www.php.net/preg_match">preg_match</a><span class="src-sym">(</span><span class="src-str">'@^\?([^#]*)@'</span><span class="src-sym">,&nbsp;</span><span class="src-var">$url</span><span class="src-sym">,&nbsp;</span><span class="src-var">$reg</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a128"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">requete&nbsp;</span>=&nbsp;<span class="src-var">$reg</span><span class="src-sym">[</span><span class="src-num">1</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a129"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$url&nbsp;</span>=&nbsp;<a href="http://www.php.net/substr">substr</a><span class="src-sym">(</span><span class="src-var">$url</span><span class="src-sym">,&nbsp;</span><a href="http://www.php.net/strlen">strlen</a><span class="src-sym">(</span><span class="src-var">$reg</span><span class="src-sym">[</span><span class="src-num">0</span><span class="src-sym">]</span><span class="src-sym">))</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a130"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a131"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a132"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$url</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a133"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">fragment&nbsp;</span>=&nbsp;<a href="http://www.php.net/substr">substr</a><span class="src-sym">(</span><span class="src-var">$url</span><span class="src-sym">,&nbsp;</span><span class="src-num">1</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a134"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a135"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a136"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a137"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a138"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Retourne&nbsp;le&nbsp;schéma,&nbsp;c.a.d.&nbsp;&quot;http&quot;&nbsp;ou&nbsp;&quot;urn&quot;,&nbsp;ou&nbsp;false&nbsp;si&nbsp;aucun&nbsp;schéma&nbsp;n'est</span></div></li>
<li><div class="src-line"><a name="a139"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;spécifié,&nbsp;i.e.&nbsp;l'url&nbsp;est&nbsp;une&nbsp;url&nbsp;relative</span></div></li>
<li><div class="src-line"><a name="a140"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*</span></div></li>
<li><div class="src-line"><a name="a141"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@return&nbsp;</span><span class="src-doc">&nbsp;</span><span class="src-doc-type">string</span><span class="src-doc">|</span><span class="src-doc-type">bool</span></div></li>
<li><div class="src-line"><a name="a142"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a143"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">public&nbsp;</span><span class="src-key">function&nbsp;</span><a href="../Framework/Url.html#methodgetSchema">getSchema</a><span class="src-sym">(</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a144"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">schema</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a145"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a146"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a147"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a148"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@param&nbsp;</span><span class="src-doc-type">string</span><span class="src-doc">|</span><span class="src-doc-type">bool</span><span class="src-doc-var">$schema&nbsp;</span></div></li>
<li><div class="src-line"><a name="a149"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*</span></div></li>
<li><div class="src-line"><a name="a150"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@return&nbsp;</span><span class="src-doc-type">void&nbsp;</span></div></li>
<li><div class="src-line"><a name="a151"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@see</span><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;getSchema()</span></div></li>
<li><div class="src-line"><a name="a152"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a153"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">public&nbsp;</span><span class="src-key">function&nbsp;</span><a href="../Framework/Url.html#methodsetSchema">setSchema</a><span class="src-sym">(</span><span class="src-var">$schema</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a154"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">schema&nbsp;</span>=&nbsp;<span class="src-var">$schema</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a155"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a156"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a157"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a158"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;renvoie&nbsp;la&nbsp;partie&nbsp;user&nbsp;de&nbsp;la&nbsp;partie&nbsp;infoUtilisateur&nbsp;(partie&nbsp;précédant&nbsp;le&nbsp;premier</span></div></li>
<li><div class="src-line"><a name="a159"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;&nbsp;&quot;:&quot;),&nbsp;ou&nbsp;false&nbsp;si&nbsp;aucune&nbsp;partie&nbsp;infoUtilisateur&nbsp;n'est&nbsp;définie.</span></div></li>
<li><div class="src-line"><a name="a160"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*</span></div></li>
<li><div class="src-line"><a name="a161"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@return&nbsp;</span><span class="src-doc">&nbsp;</span><span class="src-doc-type">string</span><span class="src-doc">|</span><span class="src-doc-type">bool</span></div></li>
<li><div class="src-line"><a name="a162"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a163"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">public&nbsp;</span><span class="src-key">function&nbsp;</span><a href="../Framework/Url.html#methodgetUtilisateur">getUtilisateur</a><span class="src-sym">(</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a164"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">infoUtilisateur&nbsp;</span>!==&nbsp;<span class="src-id">false&nbsp;</span>?&nbsp;<a href="http://www.php.net/preg_replace">preg_replace</a><span class="src-sym">(</span><span class="src-str">'@:.*$@'</span><span class="src-sym">,&nbsp;</span><span class="src-str">''</span><span class="src-sym">,&nbsp;</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">infoUtilisateur</span><span class="src-sym">)&nbsp;</span>:&nbsp;<span class="src-id">false</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a165"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a166"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a167"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a168"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;renvoie&nbsp;la&nbsp;partie&nbsp;mot&nbsp;de&nbsp;passe&nbsp;de&nbsp;la&nbsp;partie&nbsp;infoUtilisateur&nbsp;(partie&nbsp;après&nbsp;le&nbsp;premier</span></div></li>
<li><div class="src-line"><a name="a169"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;&nbsp;&quot;:&quot;),&nbsp;,&nbsp;ou&nbsp;false&nbsp;si&nbsp;aucune&nbsp;partie&nbsp;infoUtilisateur&nbsp;n'est&nbsp;définie&nbsp;(i.e.&nbsp;l'URL&nbsp;ne&nbsp;contient</span></div></li>
<li><div class="src-line"><a name="a170"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;pas&nbsp;de&nbsp;&quot;@&quot;&nbsp;en&nbsp;face&nbsp;du&nbsp;nom&nbsp;d'hôte)&nbsp;ou&nbsp;si&nbsp;la&nbsp;partie&nbsp;infoUtilisateur&nbsp;ne&nbsp;contient&nbsp;pas&nbsp;de&nbsp;&quot;:&quot;.</span></div></li>
<li><div class="src-line"><a name="a171"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*</span></div></li>
<li><div class="src-line"><a name="a172"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@return&nbsp;</span><span class="src-doc">&nbsp;</span><span class="src-doc-type">string</span><span class="src-doc">|</span><span class="src-doc-type">bool</span></div></li>
<li><div class="src-line"><a name="a173"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a174"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">public&nbsp;</span><span class="src-key">function&nbsp;</span><a href="../Framework/Url.html#methodgetMotDePasse">getMotDePasse</a><span class="src-sym">(</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a175"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">infoUtilisateur&nbsp;</span>!==&nbsp;<span class="src-id">false&nbsp;</span>?&nbsp;<a href="http://www.php.net/substr">substr</a><span class="src-sym">(</span><a href="http://www.php.net/strstr">strstr</a><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">infoUtilisateur</span><span class="src-sym">,&nbsp;</span><span class="src-str">':'</span><span class="src-sym">)</span><span class="src-sym">,&nbsp;</span><span class="src-num">1</span><span class="src-sym">)&nbsp;</span>:&nbsp;<span class="src-id">false</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a176"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a177"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a178"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a179"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Renvoie&nbsp;la&nbsp;partie&nbsp;userinfio,&nbsp;ou&nbsp;false&nbsp;si&nbsp;celle-ci&nbsp;n'existe&nbsp;pas,&nbsp;i.e.&nbsp;si&nbsp;la&nbsp;partie</span></div></li>
<li><div class="src-line"><a name="a180"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;autorité&nbsp;ne&nbsp;contient&nbsp;pas&nbsp;de&nbsp;&quot;@&quot;</span></div></li>
<li><div class="src-line"><a name="a181"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*</span></div></li>
<li><div class="src-line"><a name="a182"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@return&nbsp;</span><span class="src-doc">&nbsp;</span><span class="src-doc-type">string</span><span class="src-doc">|</span><span class="src-doc-type">bool</span></div></li>
<li><div class="src-line"><a name="a183"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a184"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">public&nbsp;</span><span class="src-key">function&nbsp;</span><a href="../Framework/Url.html#methodgetInfoUtilisateur">getInfoUtilisateur</a><span class="src-sym">(</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a185"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">infoUtilisateur</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a186"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a187"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a188"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a189"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Setteur&nbsp;pour&nbsp;la&nbsp;partie&nbsp;infoUtilisateur.&nbsp;Si&nbsp;deux&nbsp;argument&nbsp;sont&nbsp;passé,&nbsp;ils&nbsp;sont&nbsp;combinés</span></div></li>
<li><div class="src-line"><a name="a190"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;dans&nbsp;la&nbsp;partie&nbsp;infoUtilisateur&nbsp;de&nbsp;cette&nbsp;manière&nbsp;username&nbsp;&quot;:&quot;&nbsp;password.</span></div></li>
<li><div class="src-line"><a name="a191"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*</span></div></li>
<li><div class="src-line"><a name="a192"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@param&nbsp;</span><span class="src-doc-type">string</span><span class="src-doc">|</span><span class="src-doc-type">bool</span><span class="src-doc-var">$infoUtilisateur&nbsp;</span><span class="src-doc">infoUtilisateur&nbsp;ou&nbsp;username</span></div></li>
<li><div class="src-line"><a name="a193"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@param&nbsp;</span><span class="src-doc-type">string</span><span class="src-doc">|</span><span class="src-doc-type">bool</span><span class="src-doc-var">$motDePasse&nbsp;</span></div></li>
<li><div class="src-line"><a name="a194"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*</span></div></li>
<li><div class="src-line"><a name="a195"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@return&nbsp;</span><span class="src-doc-type">void&nbsp;</span></div></li>
<li><div class="src-line"><a name="a196"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a197"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">public&nbsp;</span><span class="src-key">function&nbsp;</span><a href="../Framework/Url.html#methodsetInfoUtilisateur">setInfoUtilisateur</a><span class="src-sym">(</span><span class="src-var">$infoUtilisateur</span><span class="src-sym">,&nbsp;</span><span class="src-var">$motDePasse&nbsp;</span>=&nbsp;<span class="src-id">false</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a198"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">infoUtilisateur&nbsp;</span>=&nbsp;<span class="src-var">$infoUtilisateur</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a199"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$motDePasse&nbsp;</span>!==&nbsp;<span class="src-id">false</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a200"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">infoUtilisateur&nbsp;</span>.=&nbsp;<span class="src-str">':'&nbsp;</span>.&nbsp;<span class="src-var">$motDePasse</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a201"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a202"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a203"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a204"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a205"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Renvoie&nbsp;la&nbsp;partie&nbsp;hôte,&nbsp;ou&nbsp;false&nbsp;s'il&nbsp;n'y&nbsp;a&nbsp;pas&nbsp;de&nbsp;partie&nbsp;autorité,&nbsp;c.a.d.</span></div></li>
<li><div class="src-line"><a name="a206"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;l'URL&nbsp;est&nbsp;relative.</span></div></li>
<li><div class="src-line"><a name="a207"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*</span></div></li>
<li><div class="src-line"><a name="a208"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@return&nbsp;</span><span class="src-doc">&nbsp;</span><span class="src-doc-type">string</span><span class="src-doc">|</span><span class="src-doc-type">bool</span></div></li>
<li><div class="src-line"><a name="a209"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a210"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">public&nbsp;</span><span class="src-key">function&nbsp;</span><a href="../Framework/Url.html#methodgetHote">getHote</a><span class="src-sym">(</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a211"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">hote</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a212"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a213"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a214"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a215"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@param&nbsp;</span><span class="src-doc-type">string</span><span class="src-doc">|</span><span class="src-doc-type">bool</span><span class="src-doc-var">$hote&nbsp;</span></div></li>
<li><div class="src-line"><a name="a216"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*</span></div></li>
<li><div class="src-line"><a name="a217"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@return&nbsp;</span><span class="src-doc-type">void&nbsp;</span></div></li>
<li><div class="src-line"><a name="a218"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a219"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">public&nbsp;</span><span class="src-key">function&nbsp;</span><a href="../Framework/Url.html#methodsetHote">setHote</a><span class="src-sym">(</span><span class="src-var">$hote</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a220"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">hote&nbsp;</span>=&nbsp;<span class="src-var">$hote</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a221"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a222"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a223"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a224"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Renvoie&nbsp;le&nbsp;numéro&nbsp;de&nbsp;port,&nbsp;ou&nbsp;false&nbsp;si&nbsp;aucun&nbsp;numéro&nbsp;de&nbsp;port&nbsp;n'est&nbsp;spécifié,</span></div></li>
<li><div class="src-line"><a name="a225"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;i.e.&nbsp;le&nbsp;port&nbsp;par&nbsp;défaut&nbsp;doit&nbsp;utilisé.</span></div></li>
<li><div class="src-line"><a name="a226"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*</span></div></li>
<li><div class="src-line"><a name="a227"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@return&nbsp;</span><span class="src-doc">&nbsp;</span><span class="src-doc-type">int</span><span class="src-doc">|</span><span class="src-doc-type">bool</span></div></li>
<li><div class="src-line"><a name="a228"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a229"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">public&nbsp;</span><span class="src-key">function&nbsp;</span><a href="../Framework/Url.html#methodgetPort">getPort</a><span class="src-sym">(</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a230"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">port</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a231"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a232"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a233"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a234"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@param&nbsp;</span><span class="src-doc-type">int</span><span class="src-doc">|</span><span class="src-doc-type">bool</span><span class="src-doc-var">$port&nbsp;</span></div></li>
<li><div class="src-line"><a name="a235"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*</span></div></li>
<li><div class="src-line"><a name="a236"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@return&nbsp;</span><span class="src-doc-type">void&nbsp;</span></div></li>
<li><div class="src-line"><a name="a237"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a238"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">public&nbsp;</span><span class="src-key">function&nbsp;</span><a href="../Framework/Url.html#methodsetPort">setPort</a><span class="src-sym">(</span><span class="src-var">$port</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a239"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">port&nbsp;</span>=&nbsp;<a href="http://www.php.net/intval">intval</a><span class="src-sym">(</span><span class="src-var">$port</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a240"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a241"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a242"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a243"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Renvoie&nbsp;la&nbsp;partie&nbsp;autorité,&nbsp;i.e.&nbsp;[&nbsp;infoUtilisateur&nbsp;&quot;@&quot;&nbsp;]&nbsp;hote&nbsp;[&nbsp;&quot;:&quot;&nbsp;port&nbsp;],&nbsp;ou</span></div></li>
<li><div class="src-line"><a name="a244"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;false&nbsp;si&nbsp;celle-ci&nbsp;est&nbsp;absente.</span></div></li>
<li><div class="src-line"><a name="a245"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*</span></div></li>
<li><div class="src-line"><a name="a246"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@return&nbsp;</span><span class="src-doc-type">string</span><span class="src-doc">|</span><span class="src-doc-type">bool</span></div></li>
<li><div class="src-line"><a name="a247"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a248"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">public&nbsp;</span><span class="src-key">function&nbsp;</span><a href="../Framework/Url.html#methodgetAutorite">getAutorite</a><span class="src-sym">(</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a249"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-sym">!</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">hote</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a250"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-id">false</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a251"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a252"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a253"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$autorite&nbsp;</span>=&nbsp;<span class="src-str">''</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a254"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a255"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">infoUtilisateur&nbsp;</span>!==&nbsp;<span class="src-id">false</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a256"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$autorite&nbsp;</span>.=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">infoUtilisateur&nbsp;</span>.&nbsp;<span class="src-str">'@'</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a257"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a258"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a259"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$autorite&nbsp;</span>.=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">hote</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a260"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a261"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">port&nbsp;</span>!==&nbsp;<span class="src-id">false</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a262"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$autorite&nbsp;</span>.=&nbsp;<span class="src-str">':'&nbsp;</span>.&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">port</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a263"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a264"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a265"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$autorite</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a266"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a267"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a268"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a269"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@param&nbsp;</span><span class="src-doc-type">string</span><span class="src-doc">|</span><span class="src-doc-type">false</span><span class="src-doc-var">$autorite&nbsp;</span></div></li>
<li><div class="src-line"><a name="a270"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*</span></div></li>
<li><div class="src-line"><a name="a271"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@return&nbsp;</span><span class="src-doc-type">void&nbsp;</span></div></li>
<li><div class="src-line"><a name="a272"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a273"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">public&nbsp;</span><span class="src-key">function&nbsp;</span><a href="../Framework/Url.html#methodsetAutorite">setAutorite</a><span class="src-sym">(</span><span class="src-var">$autorite</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a274"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">user&nbsp;</span>=&nbsp;<span class="src-id">false</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a275"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">pass&nbsp;</span>=&nbsp;<span class="src-id">false</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a276"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">hote&nbsp;</span>=&nbsp;<span class="src-id">false</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a277"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">port&nbsp;</span>=&nbsp;<span class="src-id">false</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a278"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><a href="http://www.php.net/preg_match">preg_match</a><span class="src-sym">(</span><span class="src-str">'@^(([^\@]+)\@)?([^:]+)(:(\d*))?$@'</span><span class="src-sym">,&nbsp;</span><span class="src-var">$autorite</span><span class="src-sym">,&nbsp;</span><span class="src-var">$reg</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a279"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$reg</span><span class="src-sym">[</span><span class="src-num">1</span><span class="src-sym">]</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a280"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">infoUtilisateur&nbsp;</span>=&nbsp;<span class="src-var">$reg</span><span class="src-sym">[</span><span class="src-num">2</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a281"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a282"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a283"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">hote&nbsp;</span>=&nbsp;<span class="src-var">$reg</span><span class="src-sym">[</span><span class="src-num">3</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a284"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span>isset<span class="src-sym">(</span><span class="src-var">$reg</span><span class="src-sym">[</span><span class="src-num">5</span><span class="src-sym">]</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a285"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">port&nbsp;</span>=&nbsp;<a href="http://www.php.net/intval">intval</a><span class="src-sym">(</span><span class="src-var">$reg</span><span class="src-sym">[</span><span class="src-num">5</span><span class="src-sym">]</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a286"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a287"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a288"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a289"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a290"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a291"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Renvoie&nbsp;la&nbsp;partie&nbsp;chemin&nbsp;(chemin)&nbsp;(éventuellement&nbsp;vide).</span></div></li>
<li><div class="src-line"><a name="a292"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*</span></div></li>
<li><div class="src-line"><a name="a293"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@return&nbsp;</span><span class="src-doc-type">string&nbsp;</span></div></li>
<li><div class="src-line"><a name="a294"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a295"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">public&nbsp;</span><span class="src-key">function&nbsp;</span><a href="../Framework/Url.html#methodgetChemin">getChemin</a><span class="src-sym">(</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a296"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">chemin</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a297"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a298"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a299"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a300"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@param&nbsp;</span><span class="src-doc-type">string&nbsp;</span><span class="src-doc-var">$chemin&nbsp;</span></div></li>
<li><div class="src-line"><a name="a301"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*</span></div></li>
<li><div class="src-line"><a name="a302"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@return&nbsp;</span><span class="src-doc-type">void&nbsp;</span></div></li>
<li><div class="src-line"><a name="a303"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a304"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">public&nbsp;</span><span class="src-key">function&nbsp;</span><a href="../Framework/Url.html#methodsetChemin">setChemin</a><span class="src-sym">(</span><span class="src-var">$chemin</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a305"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">chemin&nbsp;</span>=&nbsp;<span class="src-var">$chemin</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a306"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a307"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a308"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a309"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;renvoie&nbsp;la&nbsp;chaine&nbsp;de&nbsp;requête&nbsp;(requete&nbsp;string)&nbsp;(sans&nbsp;le&nbsp;premier&nbsp;&quot;?&quot;),&nbsp;ou&nbsp;false&nbsp;si&nbsp;&quot;?&quot;</span></div></li>
<li><div class="src-line"><a name="a310"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;n'est&nbsp;pas&nbsp;présent&nbsp;dans&nbsp;l'url.</span></div></li>
<li><div class="src-line"><a name="a311"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*</span></div></li>
<li><div class="src-line"><a name="a312"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@return&nbsp;</span><span class="src-doc">&nbsp;</span><span class="src-doc-type">string</span><span class="src-doc">|</span><span class="src-doc-type">bool</span></div></li>
<li><div class="src-line"><a name="a313"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@see</span><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;self::getVariablesRequete()</span></div></li>
<li><div class="src-line"><a name="a314"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a315"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">public&nbsp;</span><span class="src-key">function&nbsp;</span><a href="../Framework/Url.html#methodgetRequete">getRequete</a><span class="src-sym">(</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a316"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">requete</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a317"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a318"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a319"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a320"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@param&nbsp;</span><span class="src-doc-type">string</span><span class="src-doc">|</span><span class="src-doc-type">bool</span><span class="src-doc-var">$requete&nbsp;</span></div></li>
<li><div class="src-line"><a name="a321"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*</span></div></li>
<li><div class="src-line"><a name="a322"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@return&nbsp;</span><span class="src-doc-type">void&nbsp;</span></div></li>
<li><div class="src-line"><a name="a323"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@see</span><span class="src-doc">&nbsp;&nbsp;&nbsp;self::setVariablesRequete()</span></div></li>
<li><div class="src-line"><a name="a324"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a325"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">public&nbsp;</span><span class="src-key">function&nbsp;</span><a href="../Framework/Url.html#methodsetRequete">setRequete</a><span class="src-sym">(</span><span class="src-var">$requete</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a326"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">requete&nbsp;</span>=&nbsp;<span class="src-var">$requete</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a327"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a328"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a329"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a330"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Renvoie&nbsp;le&nbsp;nom&nbsp;du&nbsp;fragment,&nbsp;ou&nbsp;false&nbsp;si&nbsp;&quot;#&quot;&nbsp;n'est&nbsp;pas&nbsp;present&nbsp;dans&nbsp;l'URL.</span></div></li>
<li><div class="src-line"><a name="a331"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*</span></div></li>
<li><div class="src-line"><a name="a332"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@return&nbsp;</span><span class="src-doc">&nbsp;</span><span class="src-doc-type">string</span><span class="src-doc">|</span><span class="src-doc-type">bool</span></div></li>
<li><div class="src-line"><a name="a333"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a334"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">public&nbsp;</span><span class="src-key">function&nbsp;</span><a href="../Framework/Url.html#methodgetFragment">getFragment</a><span class="src-sym">(</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a335"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">fragment</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a336"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a337"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a338"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a339"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@param&nbsp;</span><span class="src-doc-type">string</span><span class="src-doc">|</span><span class="src-doc-type">bool</span><span class="src-doc-var">$fragment&nbsp;</span></div></li>
<li><div class="src-line"><a name="a340"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*</span></div></li>
<li><div class="src-line"><a name="a341"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@return&nbsp;</span><span class="src-doc-type">void&nbsp;</span></div></li>
<li><div class="src-line"><a name="a342"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a343"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">public&nbsp;</span><span class="src-key">function&nbsp;</span><a href="../Framework/Url.html#methodsetFragment">setFragment</a><span class="src-sym">(</span><span class="src-var">$fragment</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a344"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">fragment&nbsp;</span>=&nbsp;<span class="src-var">$fragment</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a345"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a346"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a347"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a348"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Renvoie&nbsp;la&nbsp;requete&nbsp;string&nbsp;sous&nbsp;forme&nbsp;d'un&nbsp;tableau&nbsp;de&nbsp;variables&nbsp;telles&nbsp;qu'elles&nbsp;apparaitraient</span></div></li>
<li><div class="src-line"><a name="a349"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;dans&nbsp;le&nbsp;$_GET&nbsp;d'un&nbsp;script&nbsp;PHP</span></div></li>
<li><div class="src-line"><a name="a350"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*</span></div></li>
<li><div class="src-line"><a name="a351"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@return&nbsp;</span><span class="src-doc">&nbsp;</span><span class="src-doc-type">array&nbsp;</span></div></li>
<li><div class="src-line"><a name="a352"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a353"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">public&nbsp;</span><span class="src-key">function&nbsp;</span><a href="../Framework/Url.html#methodgetVariablesRequete">getVariablesRequete</a><span class="src-sym">(</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a354"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$pattern&nbsp;</span>=&nbsp;<span class="src-str">'/'&nbsp;</span>.</div></li>
<li><div class="src-line"><a name="a355"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="http://www.php.net/preg_quote">preg_quote</a><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Framework/Url.html#methodgetOption">getOption</a><span class="src-sym">(</span><span class="src-id">self</span><span class="src-sym">::</span><span class="src-id">OPTION_SEPARATEUR_ENTREE</span><span class="src-sym">)</span><span class="src-sym">,&nbsp;</span><span class="src-str">'/'</span><span class="src-sym">)&nbsp;</span>.</div></li>
<li><div class="src-line"><a name="a356"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-str">'/'</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a357"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$parties&nbsp;&nbsp;&nbsp;</span>=&nbsp;<a href="http://www.php.net/preg_split">preg_split</a><span class="src-sym">(</span><span class="src-var">$pattern</span><span class="src-sym">,&nbsp;</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">requete</span><span class="src-sym">,&nbsp;</span>-<span class="src-num">1</span><span class="src-sym">,&nbsp;</span><span class="src-id">PREG_SPLIT_NO_EMPTY</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a358"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$retour&nbsp;&nbsp;</span>=&nbsp;<span class="src-key">array</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a359"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a360"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">foreach&nbsp;</span><span class="src-sym">(</span><span class="src-var">$parties&nbsp;</span><span class="src-key">as&nbsp;</span><span class="src-var">$partie</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a361"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><a href="http://www.php.net/strpos">strpos</a><span class="src-sym">(</span><span class="src-var">$partie</span><span class="src-sym">,&nbsp;</span><span class="src-str">'='</span><span class="src-sym">)&nbsp;</span>!==&nbsp;<span class="src-id">false</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a362"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;list<span class="src-sym">(</span><span class="src-var">$cle</span><span class="src-sym">,&nbsp;</span><span class="src-var">$valeur</span><span class="src-sym">)&nbsp;</span>=&nbsp;<a href="http://www.php.net/explode">explode</a><span class="src-sym">(</span><span class="src-str">'='</span><span class="src-sym">,&nbsp;</span><span class="src-var">$partie</span><span class="src-sym">,&nbsp;</span><span class="src-num">2</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a363"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}&nbsp;</span><span class="src-key">else&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a364"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$cle&nbsp;&nbsp;&nbsp;</span>=&nbsp;<span class="src-var">$partie</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a365"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$valeur&nbsp;</span>=&nbsp;<span class="src-id">null</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a366"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a367"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a368"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Framework/Url.html#methodgetOption">getOption</a><span class="src-sym">(</span><span class="src-id">self</span><span class="src-sym">::</span><span class="src-id">OPTION_ENCODER_CLES</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a369"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$cle&nbsp;</span>=&nbsp;<a href="http://www.php.net/rawurldecode">rawurldecode</a><span class="src-sym">(</span><span class="src-var">$cle</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a370"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a371"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$valeur&nbsp;</span>=&nbsp;<a href="http://www.php.net/rawurldecode">rawurldecode</a><span class="src-sym">(</span><span class="src-var">$valeur</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a372"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a373"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Framework/Url.html#methodgetOption">getOption</a><span class="src-sym">(</span><span class="src-id">self</span><span class="src-sym">::</span><span class="src-id">OPTION_UTILISER_CROCHETS</span><span class="src-sym">)&nbsp;</span>&amp;&amp;</div></li>
<li><div class="src-line"><a name="a374"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="http://www.php.net/preg_match">preg_match</a><span class="src-sym">(</span><span class="src-str">'#^(.*)\[([0-9a-z_-]*)\]#i'</span><span class="src-sym">,&nbsp;</span><span class="src-var">$cle</span><span class="src-sym">,&nbsp;</span><span class="src-var">$matches</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a375"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a376"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$cle&nbsp;</span>=&nbsp;<span class="src-var">$matches</span><span class="src-sym">[</span><span class="src-num">1</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a377"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$idx&nbsp;</span>=&nbsp;<span class="src-var">$matches</span><span class="src-sym">[</span><span class="src-num">2</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a378"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a379"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;On&nbsp;s'assure&nbsp;que&nbsp;c'est&nbsp;bien&nbsp;un&nbsp;tableau</span></div></li>
<li><div class="src-line"><a name="a380"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-key">empty</span><span class="src-sym">(</span><span class="src-var">$retour</span><span class="src-sym">[</span><span class="src-var">$cle</span><span class="src-sym">]</span><span class="src-sym">)&nbsp;</span>||&nbsp;<span class="src-sym">!</span><a href="http://www.php.net/is_array">is_array</a><span class="src-sym">(</span><span class="src-var">$retour</span><span class="src-sym">[</span><span class="src-var">$cle</span><span class="src-sym">]</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a381"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$retour</span><span class="src-sym">[</span><span class="src-var">$cle</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-key">array</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a382"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a383"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a384"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;Ajout&nbsp;des&nbsp;données</span></div></li>
<li><div class="src-line"><a name="a385"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$idx&nbsp;</span>===&nbsp;<span class="src-str">''</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a386"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$retour</span><span class="src-sym">[</span><span class="src-var">$cle</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-var">$valeur</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a387"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}&nbsp;</span><span class="src-key">else&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a388"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$retour</span><span class="src-sym">[</span><span class="src-var">$cle</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$idx</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-var">$valeur</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a389"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a390"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}&nbsp;</span><span class="src-key">elseif&nbsp;</span><span class="src-sym">(</span><span class="src-sym">!</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Framework/Url.html#methodgetOption">getOption</a><span class="src-sym">(</span><span class="src-id">self</span><span class="src-sym">::</span><span class="src-id">OPTION_UTILISER_CROCHETS</span><span class="src-sym">)</span></div></li>
<li><div class="src-line"><a name="a391"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&amp;&amp;&nbsp;<span class="src-sym">!</span><span class="src-key">empty</span><span class="src-sym">(</span><span class="src-var">$retour</span><span class="src-sym">[</span><span class="src-var">$cle</span><span class="src-sym">]</span><span class="src-sym">)</span></div></li>
<li><div class="src-line"><a name="a392"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a393"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$retour</span><span class="src-sym">[</span><span class="src-var">$cle</span><span class="src-sym">]&nbsp;&nbsp;&nbsp;</span>=&nbsp;(array)&nbsp;<span class="src-var">$retour</span><span class="src-sym">[</span><span class="src-var">$cle</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a394"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$retour</span><span class="src-sym">[</span><span class="src-var">$cle</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-var">$valeur</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a395"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}&nbsp;</span><span class="src-key">else&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a396"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$retour</span><span class="src-sym">[</span><span class="src-var">$cle</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-var">$valeur</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a397"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a398"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a399"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a400"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$retour</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a401"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a402"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a403"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a404"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@param&nbsp;</span><span class="src-doc-type">array&nbsp;</span><span class="src-doc-var">$tableau&nbsp;</span><span class="src-doc">(nom&nbsp;=&gt;&nbsp;valeur)&nbsp;tableau</span></div></li>
<li><div class="src-line"><a name="a405"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*</span></div></li>
<li><div class="src-line"><a name="a406"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@return&nbsp;</span><span class="src-doc-type">void&nbsp;</span></div></li>
<li><div class="src-line"><a name="a407"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a408"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">public&nbsp;</span><span class="src-key">function&nbsp;</span><a href="../Framework/Url.html#methodsetVariablesRequete">setVariablesRequete</a><span class="src-sym">(</span><span class="src-key">array&nbsp;</span><span class="src-var">$tableau</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a409"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-sym">!</span><span class="src-var">$tableau</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a410"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">requete&nbsp;</span>=&nbsp;<span class="src-id">false</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a411"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}&nbsp;</span><span class="src-key">else&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a412"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">foreach&nbsp;</span><span class="src-sym">(</span><span class="src-var">$tableau&nbsp;</span><span class="src-key">as&nbsp;</span><span class="src-var">$nom&nbsp;</span>=&gt;&nbsp;<span class="src-var">$valeur</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a413"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">getOption</span><span class="src-sym">(</span><span class="src-id">self</span><span class="src-sym">::</span><span class="src-id">OPTION_ENCODER_CLES</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a414"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$nom&nbsp;</span>=&nbsp;<span class="src-id">rawurlencode</span><span class="src-sym">(</span><span class="src-var">$nom</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a415"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a416"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a417"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><a href="http://www.php.net/is_array">is_array</a><span class="src-sym">(</span><span class="src-var">$valeur</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a418"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">foreach&nbsp;</span><span class="src-sym">(</span><span class="src-var">$valeur&nbsp;</span><span class="src-key">as&nbsp;</span><span class="src-var">$k&nbsp;</span>=&gt;&nbsp;<span class="src-var">$v</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a419"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$parties</span><span class="src-sym">[</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Framework/Url.html#methodgetOption">getOption</a><span class="src-sym">(</span><span class="src-id">self</span><span class="src-sym">::</span><span class="src-id">OPTION_UTILISER_CROCHETS</span><span class="src-sym">)</span></div></li>
<li><div class="src-line"><a name="a420"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;?&nbsp;<a href="http://www.php.net/sprintf">sprintf</a><span class="src-sym">(</span><span class="src-str">'%s[%s]=%s'</span><span class="src-sym">,&nbsp;</span><span class="src-var">$nom</span><span class="src-sym">,&nbsp;</span><span class="src-var">$k</span><span class="src-sym">,&nbsp;</span><span class="src-var">$v</span><span class="src-sym">)</span></div></li>
<li><div class="src-line"><a name="a421"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;:&nbsp;<span class="src-sym">(</span><span class="src-var">$nom&nbsp;</span>.&nbsp;<span class="src-str">'='&nbsp;</span>.&nbsp;<span class="src-var">$v</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a422"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a423"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}&nbsp;</span><span class="src-key">elseif&nbsp;</span><span class="src-sym">(</span><span class="src-sym">!</span><a href="http://www.php.net/is_null">is_null</a><span class="src-sym">(</span><span class="src-var">$valeur</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a424"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$parties</span><span class="src-sym">[</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-var">$nom&nbsp;</span>.&nbsp;<span class="src-str">'='&nbsp;</span>.&nbsp;<span class="src-var">$valeur</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a425"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}&nbsp;</span><span class="src-key">else&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a426"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$parties</span><span class="src-sym">[</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-var">$nom</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a427"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a428"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a429"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">requete&nbsp;</span>=&nbsp;<a href="http://www.php.net/implode">implode</a><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Framework/Url.html#methodgetOption">getOption</a><span class="src-sym">(</span><span class="src-id">self</span><span class="src-sym">::</span><span class="src-id">OPTION_SEPARATEUR_SORTIE</span><span class="src-sym">)</span><span class="src-sym">,</span></div></li>
<li><div class="src-line"><a name="a430"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$parties</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a431"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a432"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a433"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a434"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a435"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@param&nbsp;</span><span class="src-doc-type">string&nbsp;</span><span class="src-doc-var">$nom&nbsp;</span></div></li>
<li><div class="src-line"><a name="a436"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@param&nbsp;</span><span class="src-doc-type">mixed&nbsp;</span><span class="src-doc">&nbsp;</span><span class="src-doc-var">$valeur&nbsp;</span></div></li>
<li><div class="src-line"><a name="a437"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*</span></div></li>
<li><div class="src-line"><a name="a438"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@return&nbsp;</span><span class="src-doc">&nbsp;</span><span class="src-doc-type">array&nbsp;</span></div></li>
<li><div class="src-line"><a name="a439"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a440"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">public&nbsp;</span><span class="src-key">function&nbsp;</span><a href="../Framework/Url.html#methodsetVariableRequete">setVariableRequete</a><span class="src-sym">(</span><span class="src-var">$nom</span><span class="src-sym">,&nbsp;</span><span class="src-var">$valeur</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a441"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$tableau&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Framework/Url.html#methodgetVariablesRequete">getVariablesRequete</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a442"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$tableau</span><span class="src-sym">[</span><span class="src-var">$nom</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-var">$valeur</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a443"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Framework/Url.html#methodsetVariablesRequete">setVariablesRequete</a><span class="src-sym">(</span><span class="src-var">$tableau</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a444"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a445"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a446"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a447"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@param&nbsp;</span><span class="src-doc-type">string&nbsp;</span><span class="src-doc-var">$nom&nbsp;</span></div></li>
<li><div class="src-line"><a name="a448"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*</span></div></li>
<li><div class="src-line"><a name="a449"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@return&nbsp;</span><span class="src-doc-type">void&nbsp;</span></div></li>
<li><div class="src-line"><a name="a450"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a451"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">public&nbsp;</span><span class="src-key">function&nbsp;</span><a href="../Framework/Url.html#methodunsetVariableRequete">unsetVariableRequete</a><span class="src-sym">(</span><span class="src-var">$nom</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a452"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$tableau&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Framework/Url.html#methodgetVariablesRequete">getVariablesRequete</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a453"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;unset<span class="src-sym">(</span><span class="src-var">$tableau</span><span class="src-sym">[</span><span class="src-var">$nom</span><span class="src-sym">]</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a454"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Framework/Url.html#methodsetVariablesRequete">setVariablesRequete</a><span class="src-sym">(</span><span class="src-var">$tableau</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a455"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a456"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a457"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a458"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Renvoie&nbsp;un&nbsp;représentation&nbsp;sous&nbsp;forme&nbsp;de&nbsp;chaine&nbsp;de&nbsp;l'URL</span></div></li>
<li><div class="src-line"><a name="a459"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*</span></div></li>
<li><div class="src-line"><a name="a460"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@return&nbsp;</span><span class="src-doc">&nbsp;</span><span class="src-doc-type">string&nbsp;</span></div></li>
<li><div class="src-line"><a name="a461"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a462"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">public&nbsp;</span><span class="src-key">function&nbsp;</span><a href="../Framework/Url.html#methodgetURL">getURL</a><span class="src-sym">(</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a463"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;Voir&nbsp;RFC&nbsp;3986,&nbsp;section&nbsp;5.3</span></div></li>
<li><div class="src-line"><a name="a464"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$url&nbsp;</span>=&nbsp;<span class="src-str">&quot;&quot;</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a465"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a466"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">schema&nbsp;</span>!==&nbsp;<span class="src-id">false</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a467"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$url&nbsp;</span>.=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">schema&nbsp;</span>.&nbsp;<span class="src-str">':'</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a468"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a469"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a470"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$autorite&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Framework/Url.html#methodgetAutorite">getAutorite</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a471"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$autorite&nbsp;</span>!==&nbsp;<span class="src-id">false</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a472"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$url&nbsp;</span>.=&nbsp;<span class="src-str">'//'&nbsp;</span>.&nbsp;<span class="src-var">$autorite</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a473"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a474"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$url&nbsp;</span>.=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">chemin</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a475"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a476"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">requete&nbsp;</span>!==&nbsp;<span class="src-id">false</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a477"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$url&nbsp;</span>.=&nbsp;<span class="src-str">'?'&nbsp;</span>.&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">requete</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a478"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a479"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a480"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">fragment&nbsp;</span>!==&nbsp;<span class="src-id">false</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a481"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$url&nbsp;</span>.=&nbsp;<span class="src-str">'#'&nbsp;</span>.&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">fragment</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a482"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a483"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a484"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$url</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a485"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a486"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a487"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a488"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Renvoie&nbsp;une&nbsp;représentation&nbsp;de&nbsp;cette&nbsp;URL&nbsp;sous&nbsp;forme&nbsp;de&nbsp;chaine&nbsp;normalisée.&nbsp;Utile&nbsp;pour&nbsp;la</span></div></li>
<li><div class="src-line"><a name="a489"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;comparaison&nbsp;d'URLs</span></div></li>
<li><div class="src-line"><a name="a490"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*</span></div></li>
<li><div class="src-line"><a name="a491"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@return&nbsp;</span><span class="src-doc">&nbsp;</span><span class="src-doc-type">string&nbsp;</span></div></li>
<li><div class="src-line"><a name="a492"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a493"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">public&nbsp;</span><span class="src-key">function&nbsp;</span><a href="../Framework/Url.html#methodgetURLNormalisee">getURLNormalisee</a><span class="src-sym">(</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a494"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$url&nbsp;</span>=&nbsp;<span class="src-key">clone&nbsp;</span><span class="src-var">$this</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a495"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$url</span><span class="src-sym">-&gt;</span><a href="../Framework/Url.html#methodnormaliser">normaliser</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a496"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$url</span><span class="src-sym">-&gt;</span><span class="src-id">getUrl</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a497"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a498"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a499"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a500"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Renvoie&nbsp;une&nbsp;instance&nbsp;normalisée&nbsp;de&nbsp;Url</span></div></li>
<li><div class="src-line"><a name="a501"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*</span></div></li>
<li><div class="src-line"><a name="a502"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@return&nbsp;</span><span class="src-doc">&nbsp;</span><span class="src-doc-type">Url&nbsp;</span></div></li>
<li><div class="src-line"><a name="a503"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a504"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">public&nbsp;</span><span class="src-key">function&nbsp;</span><a href="../Framework/Url.html#methodnormaliser">normaliser</a><span class="src-sym">(</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a505"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;See&nbsp;RFC&nbsp;3886,&nbsp;section&nbsp;6</span></div></li>
<li><div class="src-line"><a name="a506"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a507"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;les&nbsp;cchémas&nbsp;sont&nbsp;insesibles&nbsp;à&nbsp;la&nbsp;casse</span></div></li>
<li><div class="src-line"><a name="a508"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">schema</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a509"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">schema&nbsp;</span>=&nbsp;<a href="http://www.php.net/strtolower">strtolower</a><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">schema</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a510"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a511"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a512"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;les&nbsp;noms&nbsp;d'hotes&nbsp;sont&nbsp;insensibles&nbsp;à&nbsp;la&nbsp;casse</span></div></li>
<li><div class="src-line"><a name="a513"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">hote</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a514"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">hote&nbsp;</span>=&nbsp;<a href="http://www.php.net/strtolower">strtolower</a><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">hote</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a515"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a516"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a517"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;Supprimer&nbsp;le&nbsp;numéro&nbsp;de&nbsp;port&nbsp;par&nbsp;défaut&nbsp;pour&nbsp;les&nbsp;schemas&nbsp;connus&nbsp;(RFC&nbsp;3986,&nbsp;section&nbsp;6.2.3)</span></div></li>
<li><div class="src-line"><a name="a518"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">port&nbsp;</span>&amp;&amp;</div></li>
<li><div class="src-line"><a name="a519"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">schema&nbsp;</span>&amp;&amp;</div></li>
<li><div class="src-line"><a name="a520"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">port&nbsp;</span>==&nbsp;<a href="http://www.php.net/getservbyname">getservbyname</a><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">schema</span><span class="src-sym">,&nbsp;</span><span class="src-str">'tcp'</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a521"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a522"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">port&nbsp;</span>=&nbsp;<span class="src-id">false</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a523"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a524"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a525"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;normalisation&nbsp;dans&nbsp;le&nbsp;cas&nbsp;d'un&nbsp;encodage&nbsp;avec&nbsp;%XX&nbsp;pourcentage&nbsp;(RFC&nbsp;3986,&nbsp;section&nbsp;6.2.2.1)</span></div></li>
<li><div class="src-line"><a name="a526"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">foreach&nbsp;</span><span class="src-sym">(</span><span class="src-key">array</span><span class="src-sym">(</span><span class="src-str">'infoUtilisateur'</span><span class="src-sym">,&nbsp;</span><span class="src-str">'hote'</span><span class="src-sym">,&nbsp;</span><span class="src-str">'chemin'</span><span class="src-sym">)&nbsp;</span><span class="src-key">as&nbsp;</span><span class="src-var">$partie</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a527"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">$partie</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a528"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">$partie&nbsp;&nbsp;</span>=&nbsp;<a href="http://www.php.net/preg_replace">preg_replace</a><span class="src-sym">(</span><span class="src-str">'/%[0-9a-f]{2}/ie'</span><span class="src-sym">,&nbsp;</span><span class="src-str">'strtoupper(&quot;\0&quot;)'</span><span class="src-sym">,&nbsp;</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">$partie</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a529"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a530"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a531"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a532"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;normalisation&nbsp;des&nbsp;segments&nbsp;du&nbsp;chemin&nbsp;(RFC&nbsp;3986,&nbsp;section&nbsp;6.2.2.3)</span></div></li>
<li><div class="src-line"><a name="a533"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">chemin&nbsp;</span>=&nbsp;<span class="src-id">self</span><span class="src-sym">::</span><span class="src-id">supprimerSegmentsAPoints</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">chemin</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a534"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a535"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;normalisation&nbsp;basée&nbsp;sur&nbsp;le&nbsp;schéma&nbsp;(RFC&nbsp;3986,&nbsp;section&nbsp;6.2.3)</span></div></li>
<li><div class="src-line"><a name="a536"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">hote&nbsp;</span>&amp;&amp;&nbsp;<span class="src-sym">!</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">chemin</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a537"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">chemin&nbsp;</span>=&nbsp;<span class="src-str">'/'</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a538"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a539"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a540"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a541"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a542"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Renvoie&nbsp;vrai&nbsp;ou&nbsp;faux&nbsp;suivant&nbsp;que&nbsp;l'instance&nbsp;en&nbsp;cours&nbsp;représente&nbsp;une&nbsp;URL&nbsp;relative&nbsp;ou&nbsp;absolue.</span></div></li>
<li><div class="src-line"><a name="a543"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*</span></div></li>
<li><div class="src-line"><a name="a544"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@return&nbsp;</span><span class="src-doc">&nbsp;</span><span class="src-doc-type">bool&nbsp;</span></div></li>
<li><div class="src-line"><a name="a545"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a546"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">public&nbsp;</span><span class="src-key">function&nbsp;</span><a href="../Framework/Url.html#methodetreAbsolue">etreAbsolue</a><span class="src-sym">(</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a547"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span>(bool)&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">schema</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a548"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a549"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a550"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a551"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Renvoie&nbsp;une&nbsp;instance&nbsp;de&nbsp;Url&nbsp;représentant&nbsp;une&nbsp;URL&nbsp;absolue&nbsp;relative&nbsp;à</span></div></li>
<li><div class="src-line"><a name="a552"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;cette&nbsp;URL.</span></div></li>
<li><div class="src-line"><a name="a553"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*</span></div></li>
<li><div class="src-line"><a name="a554"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@param&nbsp;</span><span class="src-doc-type">Url</span><span class="src-doc">|</span><span class="src-doc-type">string</span><span class="src-doc-var">$reference&nbsp;</span><span class="src-doc">URL&nbsp;relative</span></div></li>
<li><div class="src-line"><a name="a555"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*</span></div></li>
<li><div class="src-line"><a name="a556"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@return&nbsp;</span><span class="src-doc-type">Url&nbsp;</span></div></li>
<li><div class="src-line"><a name="a557"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a558"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">public&nbsp;</span><span class="src-key">function&nbsp;</span><a href="../Framework/Url.html#methodresoudre">resoudre</a><span class="src-sym">(</span><span class="src-var">$reference</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a559"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><a href="http://www.php.net/is_string">is_string</a><span class="src-sym">(</span><span class="src-var">$reference</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a560"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$reference&nbsp;</span>=&nbsp;<span class="src-key">new&nbsp;</span><span class="src-id">self</span><span class="src-sym">(</span><span class="src-var">$reference</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a561"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a562"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-sym">!</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Framework/Url.html#methodetreAbsolue">etreAbsolue</a><span class="src-sym">(</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a563"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;throw&nbsp;<span class="src-key">new&nbsp;</span><span class="src-id">Exception</span><span class="src-sym">(</span><span class="src-str">'L\'URL&nbsp;de&nbsp;base&nbsp;doit&nbsp;être&nbsp;absolue&nbsp;!'</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a564"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a565"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a566"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;Un&nbsp;parseur&nbsp;non&nbsp;strict&nbsp;peut&nbsp;choisir&nbsp;d'ignorer&nbsp;un&nbsp;schema&nbsp;dans&nbsp;la&nbsp;référence</span></div></li>
<li><div class="src-line"><a name="a567"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;si&nbsp;celui&nbsp;ci&nbsp;est&nbsp;identique&nbsp;au&nbsp;schéma&nbsp;de&nbsp;base&nbsp;de&nbsp;l'URI.</span></div></li>
<li><div class="src-line"><a name="a568"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-sym">!</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Framework/Url.html#methodgetOption">getOption</a><span class="src-sym">(</span><span class="src-id">self</span><span class="src-sym">::</span><span class="src-id">OPTION_STRICTE</span><span class="src-sym">)&nbsp;</span>&amp;&amp;&nbsp;<span class="src-var">$reference</span><span class="src-sym">-&gt;</span><span class="src-id">schema&nbsp;</span>==&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">schema</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a569"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$reference</span><span class="src-sym">-&gt;</span><span class="src-id">schema&nbsp;</span>=&nbsp;<span class="src-id">false</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a570"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a571"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a572"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$cible&nbsp;</span>=&nbsp;<span class="src-key">new&nbsp;</span><span class="src-id">self</span><span class="src-sym">(</span><span class="src-str">''</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a573"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$reference</span><span class="src-sym">-&gt;</span><span class="src-id">schema&nbsp;</span>!==&nbsp;<span class="src-id">false</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a574"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$cible</span><span class="src-sym">-&gt;</span><span class="src-id">schema&nbsp;</span>=&nbsp;<span class="src-var">$reference</span><span class="src-sym">-&gt;</span><span class="src-id">schema</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a575"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$cible</span><span class="src-sym">-&gt;</span><a href="../Framework/Url.html#methodsetAutorite">setAutorite</a><span class="src-sym">(</span><span class="src-var">$reference</span><span class="src-sym">-&gt;</span><a href="../Framework/Url.html#methodgetAutorite">getAutorite</a><span class="src-sym">(</span><span class="src-sym">))</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a576"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$cible</span><span class="src-sym">-&gt;</span><span class="src-id">chemin&nbsp;&nbsp;</span>=&nbsp;<span class="src-id">self</span><span class="src-sym">::</span><span class="src-id">supprimerSegmentsAPoints</span><span class="src-sym">(</span><span class="src-var">$reference</span><span class="src-sym">-&gt;</span><span class="src-id">chemin</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a577"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$cible</span><span class="src-sym">-&gt;</span><span class="src-id">requete&nbsp;</span>=&nbsp;<span class="src-var">$reference</span><span class="src-sym">-&gt;</span><span class="src-id">requete</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a578"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}&nbsp;</span><span class="src-key">else&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a579"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$autorite&nbsp;</span>=&nbsp;<span class="src-var">$reference</span><span class="src-sym">-&gt;</span><a href="../Framework/Url.html#methodgetAutorite">getAutorite</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a580"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$autorite&nbsp;</span>!==&nbsp;<span class="src-id">false</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a581"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$cible</span><span class="src-sym">-&gt;</span><a href="../Framework/Url.html#methodsetAutorite">setAutorite</a><span class="src-sym">(</span><span class="src-var">$autorite</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a582"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$cible</span><span class="src-sym">-&gt;</span><span class="src-id">chemin&nbsp;&nbsp;</span>=&nbsp;<span class="src-id">self</span><span class="src-sym">::</span><span class="src-id">supprimerSegmentsAPoints</span><span class="src-sym">(</span><span class="src-var">$reference</span><span class="src-sym">-&gt;</span><span class="src-id">chemin</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a583"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$cible</span><span class="src-sym">-&gt;</span><span class="src-id">requete&nbsp;</span>=&nbsp;<span class="src-var">$reference</span><span class="src-sym">-&gt;</span><span class="src-id">requete</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a584"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}&nbsp;</span><span class="src-key">else&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a585"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$reference</span><span class="src-sym">-&gt;</span><span class="src-id">chemin&nbsp;</span>==&nbsp;<span class="src-str">''</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a586"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$cible</span><span class="src-sym">-&gt;</span><span class="src-id">chemin&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">chemin</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a587"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$reference</span><span class="src-sym">-&gt;</span><span class="src-id">requete&nbsp;</span>!==&nbsp;<span class="src-id">false</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a588"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$cible</span><span class="src-sym">-&gt;</span><span class="src-id">requete&nbsp;</span>=&nbsp;<span class="src-var">$reference</span><span class="src-sym">-&gt;</span><span class="src-id">requete</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a589"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}&nbsp;</span><span class="src-key">else&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a590"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$cible</span><span class="src-sym">-&gt;</span><span class="src-id">requete&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">requete</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a591"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a592"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}&nbsp;</span><span class="src-key">else&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a593"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><a href="http://www.php.net/substr">substr</a><span class="src-sym">(</span><span class="src-var">$reference</span><span class="src-sym">-&gt;</span><span class="src-id">chemin</span><span class="src-sym">,&nbsp;</span><span class="src-num">0</span><span class="src-sym">,&nbsp;</span><span class="src-num">1</span><span class="src-sym">)&nbsp;</span>==&nbsp;<span class="src-str">'/'</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a594"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$cible</span><span class="src-sym">-&gt;</span><span class="src-id">chemin&nbsp;</span>=&nbsp;<span class="src-id">self</span><span class="src-sym">::</span><span class="src-id">supprimerSegmentsAPoints</span><span class="src-sym">(</span><span class="src-var">$reference</span><span class="src-sym">-&gt;</span><span class="src-id">chemin</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a595"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}&nbsp;</span><span class="src-key">else&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a596"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;Concaténation&nbsp;chemins&nbsp;(RFC&nbsp;3986,&nbsp;section&nbsp;5.2.3)</span></div></li>
<li><div class="src-line"><a name="a597"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">hote&nbsp;</span>!==&nbsp;<span class="src-id">false&nbsp;</span>&amp;&amp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">chemin&nbsp;</span>==&nbsp;<span class="src-str">''</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a598"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$cible</span><span class="src-sym">-&gt;</span><span class="src-id">chemin&nbsp;</span>=&nbsp;<span class="src-str">'/'&nbsp;</span>.&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">chemin</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a599"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}&nbsp;</span><span class="src-key">else&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a600"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$i&nbsp;</span>=&nbsp;<a href="http://www.php.net/strrpos">strrpos</a><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">chemin</span><span class="src-sym">,&nbsp;</span><span class="src-str">'/'</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a601"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$i&nbsp;</span>!==&nbsp;<span class="src-id">false</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a602"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$cible</span><span class="src-sym">-&gt;</span><span class="src-id">chemin&nbsp;</span>=&nbsp;<a href="http://www.php.net/substr">substr</a><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">chemin</span><span class="src-sym">,&nbsp;</span><span class="src-num">0</span><span class="src-sym">,&nbsp;</span><span class="src-var">$i&nbsp;</span>+&nbsp;<span class="src-num">1</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a603"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a604"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$cible</span><span class="src-sym">-&gt;</span><span class="src-id">chemin&nbsp;</span>.=&nbsp;<span class="src-var">$reference</span><span class="src-sym">-&gt;</span><span class="src-id">chemin</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a605"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a606"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$cible</span><span class="src-sym">-&gt;</span><span class="src-id">chemin&nbsp;</span>=&nbsp;<span class="src-id">self</span><span class="src-sym">::</span><span class="src-id">supprimerSegmentsAPoints</span><span class="src-sym">(</span><span class="src-var">$cible</span><span class="src-sym">-&gt;</span><span class="src-id">chemin</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a607"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a608"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$cible</span><span class="src-sym">-&gt;</span><span class="src-id">requete&nbsp;</span>=&nbsp;<span class="src-var">$reference</span><span class="src-sym">-&gt;</span><span class="src-id">requete</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a609"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a610"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$cible</span><span class="src-sym">-&gt;</span><a href="../Framework/Url.html#methodsetAutorite">setAutorite</a><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Framework/Url.html#methodgetAutorite">getAutorite</a><span class="src-sym">(</span><span class="src-sym">))</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a611"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a612"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$cible</span><span class="src-sym">-&gt;</span><span class="src-id">schema&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">schema</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a613"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a614"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a615"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$cible</span><span class="src-sym">-&gt;</span><span class="src-id">fragment&nbsp;</span>=&nbsp;<span class="src-var">$reference</span><span class="src-sym">-&gt;</span><span class="src-id">fragment</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a616"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a617"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$cible</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a618"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a619"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a620"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a621"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;La&nbsp;suppression&nbsp;des&nbsp;segments&nbsp;à&nbsp;points&nbsp;est&nbsp;décrite&nbsp;dans&nbsp;la&nbsp;RFC&nbsp;3986,&nbsp;section&nbsp;5.2.4,&nbsp;e.g.</span></div></li>
<li><div class="src-line"><a name="a622"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;&quot;/foo/../bar/baz&quot;&nbsp;=&gt;&nbsp;&quot;/bar/baz&quot;</span></div></li>
<li><div class="src-line"><a name="a623"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*</span></div></li>
<li><div class="src-line"><a name="a624"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@param&nbsp;</span><span class="src-doc-type">string&nbsp;</span><span class="src-doc-var">$chemin&nbsp;</span><span class="src-doc">un&nbsp;chemin</span></div></li>
<li><div class="src-line"><a name="a625"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*</span></div></li>
<li><div class="src-line"><a name="a626"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@return&nbsp;</span><span class="src-doc-type">string&nbsp;</span><span class="src-doc">un&nbsp;chemin</span></div></li>
<li><div class="src-line"><a name="a627"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a628"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">private&nbsp;</span><span class="src-key">static&nbsp;</span><span class="src-key">function&nbsp;</span><span class="src-id">supprimerSegmentsAPoints</span><span class="src-sym">(</span><span class="src-var">$chemin</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a629"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$sortie&nbsp;</span>=&nbsp;<span class="src-str">''</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a630"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a631"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;Assurons&nbsp;de&nbsp;ne&nbsp;pas&nbsp;nous&nbsp;retrouver&nbsp;piégés&nbsp;dans&nbsp;une&nbsp;boucle&nbsp;infinie&nbsp;due&nbsp;à&nbsp;un&nbsp;bug&nbsp;de</span></div></li>
<li><div class="src-line"><a name="a632"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;cette&nbsp;méthode</span></div></li>
<li><div class="src-line"><a name="a633"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$j&nbsp;</span>=&nbsp;<span class="src-num">0</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a634"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">while&nbsp;</span><span class="src-sym">(</span><span class="src-var">$chemin&nbsp;</span>&amp;&amp;&nbsp;<span class="src-var">$j</span>++&nbsp;&lt;&nbsp;<span class="src-num">100</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a635"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;Étape&nbsp;A</span></div></li>
<li><div class="src-line"><a name="a636"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><a href="http://www.php.net/substr">substr</a><span class="src-sym">(</span><span class="src-var">$chemin</span><span class="src-sym">,&nbsp;</span><span class="src-num">0</span><span class="src-sym">,&nbsp;</span><span class="src-num">2</span><span class="src-sym">)&nbsp;</span>==&nbsp;<span class="src-str">'./'</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a637"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$chemin&nbsp;</span>=&nbsp;<a href="http://www.php.net/substr">substr</a><span class="src-sym">(</span><span class="src-var">$chemin</span><span class="src-sym">,&nbsp;</span><span class="src-num">2</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a638"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}&nbsp;</span><span class="src-key">elseif&nbsp;</span><span class="src-sym">(</span><a href="http://www.php.net/substr">substr</a><span class="src-sym">(</span><span class="src-var">$chemin</span><span class="src-sym">,&nbsp;</span><span class="src-num">0</span><span class="src-sym">,&nbsp;</span><span class="src-num">3</span><span class="src-sym">)&nbsp;</span>==&nbsp;<span class="src-str">'../'</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a639"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$chemin&nbsp;</span>=&nbsp;<a href="http://www.php.net/substr">substr</a><span class="src-sym">(</span><span class="src-var">$chemin</span><span class="src-sym">,&nbsp;</span><span class="src-num">3</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a640"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a641"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;Étape&nbsp;B</span></div></li>
<li><div class="src-line"><a name="a642"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}&nbsp;</span><span class="src-key">elseif&nbsp;</span><span class="src-sym">(</span><a href="http://www.php.net/substr">substr</a><span class="src-sym">(</span><span class="src-var">$chemin</span><span class="src-sym">,&nbsp;</span><span class="src-num">0</span><span class="src-sym">,&nbsp;</span><span class="src-num">3</span><span class="src-sym">)&nbsp;</span>==&nbsp;<span class="src-str">'/./'&nbsp;</span>||&nbsp;<span class="src-var">$chemin&nbsp;</span>==&nbsp;<span class="src-str">'/.'</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a643"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$chemin&nbsp;</span>=&nbsp;<span class="src-str">'/'&nbsp;</span>.&nbsp;<a href="http://www.php.net/substr">substr</a><span class="src-sym">(</span><span class="src-var">$chemin</span><span class="src-sym">,&nbsp;</span><span class="src-num">3</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a644"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a645"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;Étape&nbsp;C</span></div></li>
<li><div class="src-line"><a name="a646"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}&nbsp;</span><span class="src-key">elseif&nbsp;</span><span class="src-sym">(</span><a href="http://www.php.net/substr">substr</a><span class="src-sym">(</span><span class="src-var">$chemin</span><span class="src-sym">,&nbsp;</span><span class="src-num">0</span><span class="src-sym">,&nbsp;</span><span class="src-num">4</span><span class="src-sym">)&nbsp;</span>==&nbsp;<span class="src-str">'/../'&nbsp;</span>||&nbsp;<span class="src-var">$chemin&nbsp;</span>==&nbsp;<span class="src-str">'/..'</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a647"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$chemin&nbsp;</span>=&nbsp;<span class="src-str">'/'&nbsp;</span>.&nbsp;<a href="http://www.php.net/substr">substr</a><span class="src-sym">(</span><span class="src-var">$chemin</span><span class="src-sym">,&nbsp;</span><span class="src-num">4</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a648"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$i&nbsp;</span>=&nbsp;<a href="http://www.php.net/strrpos">strrpos</a><span class="src-sym">(</span><span class="src-var">$sortie</span><span class="src-sym">,&nbsp;</span><span class="src-str">'/'</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a649"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$sortie&nbsp;</span>=&nbsp;<span class="src-var">$i&nbsp;</span>===&nbsp;<span class="src-id">false&nbsp;</span>?&nbsp;<span class="src-str">''&nbsp;</span>:&nbsp;<a href="http://www.php.net/substr">substr</a><span class="src-sym">(</span><span class="src-var">$sortie</span><span class="src-sym">,&nbsp;</span><span class="src-num">0</span><span class="src-sym">,&nbsp;</span><span class="src-var">$i</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a650"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a651"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;Étape&nbsp;D</span></div></li>
<li><div class="src-line"><a name="a652"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}&nbsp;</span><span class="src-key">elseif&nbsp;</span><span class="src-sym">(</span><span class="src-var">$chemin&nbsp;</span>==&nbsp;<span class="src-str">'.'&nbsp;</span>||&nbsp;<span class="src-var">$chemin&nbsp;</span>==&nbsp;<span class="src-str">'..'</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a653"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$chemin&nbsp;</span>=&nbsp;<span class="src-str">''</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a654"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a655"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;Étape&nbsp;E</span></div></li>
<li><div class="src-line"><a name="a656"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}&nbsp;</span><span class="src-key">else&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a657"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$i&nbsp;</span>=&nbsp;<a href="http://www.php.net/strpos">strpos</a><span class="src-sym">(</span><span class="src-var">$chemin</span><span class="src-sym">,&nbsp;</span><span class="src-str">'/'</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a658"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$i&nbsp;</span>===&nbsp;<span class="src-num">0</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a659"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$i&nbsp;</span>=&nbsp;<a href="http://www.php.net/strpos">strpos</a><span class="src-sym">(</span><span class="src-var">$chemin</span><span class="src-sym">,&nbsp;</span><span class="src-str">'/'</span><span class="src-sym">,&nbsp;</span><span class="src-num">1</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a660"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a661"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$i&nbsp;</span>===&nbsp;<span class="src-id">false</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a662"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$i&nbsp;</span>=&nbsp;<a href="http://www.php.net/strlen">strlen</a><span class="src-sym">(</span><span class="src-var">$chemin</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a663"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a664"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$sortie&nbsp;</span>.=&nbsp;<a href="http://www.php.net/substr">substr</a><span class="src-sym">(</span><span class="src-var">$chemin</span><span class="src-sym">,&nbsp;</span><span class="src-num">0</span><span class="src-sym">,&nbsp;</span><span class="src-var">$i</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a665"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$chemin&nbsp;</span>=&nbsp;<a href="http://www.php.net/substr">substr</a><span class="src-sym">(</span><span class="src-var">$chemin</span><span class="src-sym">,&nbsp;</span><span class="src-var">$i</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a666"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a667"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a668"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a669"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$sortie</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a670"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a671"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a672"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a673"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Renvoie&nbsp;une&nbsp;instance&nbsp;de&nbsp;Url&nbsp;representant&nbsp;l'URL&nbsp;canonique&nbsp;du&nbsp;script&nbsp;PHP</span></div></li>
<li><div class="src-line"><a name="a674"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;en&nbsp;cours&nbsp;d'éxécution</span></div></li>
<li><div class="src-line"><a name="a675"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*</span></div></li>
<li><div class="src-line"><a name="a676"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@return&nbsp;</span><span class="src-doc">&nbsp;</span><span class="src-doc-type">string&nbsp;</span></div></li>
<li><div class="src-line"><a name="a677"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a678"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">public&nbsp;</span><span class="src-key">static&nbsp;</span><span class="src-key">function&nbsp;</span><a href="../Framework/Url.html#methodgetCanonique">getCanonique</a><span class="src-sym">(</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a679"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-sym">!</span>isset<span class="src-sym">(</span><span class="src-var">$_SERVER</span><span class="src-sym">[</span><span class="src-str">'REQUEST_METHOD'</span><span class="src-sym">]</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a680"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;ALERT&nbsp;-&nbsp;pas&nbsp;d'URL&nbsp;en&nbsp;cours</span></div></li>
<li><div class="src-line"><a name="a681"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;throw&nbsp;<span class="src-key">new&nbsp;</span><span class="src-id">Exception</span><span class="src-sym">(</span><span class="src-str">'Le&nbsp;script&nbsp;n\'a&nbsp;pas&nbsp;été&nbsp;appellé&nbsp;à&nbsp;travers&nbsp;un&nbsp;serveur&nbsp;web'</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a682"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a683"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a684"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;on&nbsp;part&nbsp;d'une&nbsp;URL&nbsp;relative</span></div></li>
<li><div class="src-line"><a name="a685"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$url&nbsp;</span>=&nbsp;<span class="src-key">new&nbsp;</span><span class="src-id">self</span><span class="src-sym">(</span><span class="src-var">$_SERVER</span><span class="src-sym">[</span><span class="src-str">'PHP_SELF'</span><span class="src-sym">]</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a686"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$url</span><span class="src-sym">-&gt;</span><span class="src-id">schema&nbsp;</span>=&nbsp;isset<span class="src-sym">(</span><span class="src-var">$_SERVER</span><span class="src-sym">[</span><span class="src-str">'HTTPS'</span><span class="src-sym">]</span><span class="src-sym">)&nbsp;</span>?&nbsp;<span class="src-str">'https'&nbsp;</span>:&nbsp;<span class="src-str">'http'</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a687"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$url</span><span class="src-sym">-&gt;</span><span class="src-id">hote&nbsp;</span>=&nbsp;<span class="src-var">$_SERVER</span><span class="src-sym">[</span><span class="src-str">'SERVER_NAME'</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a688"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$port&nbsp;</span>=&nbsp;<a href="http://www.php.net/intval">intval</a><span class="src-sym">(</span><span class="src-var">$_SERVER</span><span class="src-sym">[</span><span class="src-str">'SERVER_PORT'</span><span class="src-sym">]</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a689"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$url</span><span class="src-sym">-&gt;</span><span class="src-id">schema&nbsp;</span>==&nbsp;<span class="src-str">'http'&nbsp;</span>&amp;&amp;&nbsp;<span class="src-var">$port&nbsp;</span>!=&nbsp;<span class="src-num">80&nbsp;</span>||</div></li>
<li><div class="src-line"><a name="a690"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$url</span><span class="src-sym">-&gt;</span><span class="src-id">schema&nbsp;</span>==&nbsp;<span class="src-str">'https'&nbsp;</span>&amp;&amp;&nbsp;<span class="src-var">$port&nbsp;</span>!=&nbsp;<span class="src-num">443</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a691"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a692"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$url</span><span class="src-sym">-&gt;</span><span class="src-id">port&nbsp;</span>=&nbsp;<span class="src-var">$port</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a693"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a694"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$url</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a695"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a696"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a697"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a698"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Renvoie&nbsp;l'URL&nbsp;utilisée&nbsp;pour&nbsp;récupérer&nbsp;la&nbsp;requête&nbsp;en&nbsp;cours</span></div></li>
<li><div class="src-line"><a name="a699"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*</span></div></li>
<li><div class="src-line"><a name="a700"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@return&nbsp;</span><span class="src-doc">&nbsp;</span><span class="src-doc-type">string&nbsp;</span></div></li>
<li><div class="src-line"><a name="a701"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a702"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">public&nbsp;</span><span class="src-key">static&nbsp;</span><span class="src-key">function&nbsp;</span><a href="../Framework/Url.html#methodgetURLDemande">getURLDemande</a><span class="src-sym">(</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a703"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-id">self</span><span class="src-sym">::</span><span class="src-id">getDemande</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">-&gt;</span><span class="src-id">getUrl</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a704"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a705"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a706"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a707"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Renvoie&nbsp;une&nbsp;instance&nbsp;de&nbsp;Url&nbsp;representant&nbsp;l'URL&nbsp;utilisée&nbsp;pour</span></div></li>
<li><div class="src-line"><a name="a708"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;récupérer&nbsp;la&nbsp;requête&nbsp;en&nbsp;cours</span></div></li>
<li><div class="src-line"><a name="a709"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*</span></div></li>
<li><div class="src-line"><a name="a710"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@return&nbsp;</span><span class="src-doc">&nbsp;</span><span class="src-doc-type">Url&nbsp;</span></div></li>
<li><div class="src-line"><a name="a711"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a712"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">public&nbsp;</span><span class="src-key">static&nbsp;</span><span class="src-key">function&nbsp;</span><a href="../Framework/Url.html#methodgetDemande">getDemande</a><span class="src-sym">(</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a713"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-sym">!</span>isset<span class="src-sym">(</span><span class="src-var">$_SERVER</span><span class="src-sym">[</span><span class="src-str">'REQUEST_METHOD'</span><span class="src-sym">]</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a714"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;ALERTE&nbsp;-&nbsp;pas&nbsp;d'URL&nbsp;en&nbsp;cours</span></div></li>
<li><div class="src-line"><a name="a715"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;throw&nbsp;<span class="src-key">new&nbsp;</span><span class="src-id">Exception</span><span class="src-sym">(</span><span class="src-str">'Le&nbsp;script&nbsp;n\'a&nbsp;pas&nbsp;été&nbsp;appellé&nbsp;à&nbsp;travers&nbsp;un&nbsp;serveur&nbsp;web'</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a716"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a717"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a718"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;On&nbsp;part&nbsp;d'une&nbsp;URL&nbsp;relative</span></div></li>
<li><div class="src-line"><a name="a719"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$url&nbsp;</span>=&nbsp;<span class="src-key">new&nbsp;</span><span class="src-id">self</span><span class="src-sym">(</span><span class="src-var">$_SERVER</span><span class="src-sym">[</span><span class="src-str">'REQUEST_URI'</span><span class="src-sym">]</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a720"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$url</span><span class="src-sym">-&gt;</span><span class="src-id">schema&nbsp;</span>=&nbsp;isset<span class="src-sym">(</span><span class="src-var">$_SERVER</span><span class="src-sym">[</span><span class="src-str">'HTTPS'</span><span class="src-sym">]</span><span class="src-sym">)&nbsp;</span>?&nbsp;<span class="src-str">'https'&nbsp;</span>:&nbsp;<span class="src-str">'http'</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a721"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;On&nbsp;met&nbsp;à&nbsp;jour&nbsp;les&nbsp;valeurs&nbsp;de&nbsp;l'hote&nbsp;et&nbsp;si&nbsp;possible&nbsp;du&nbsp;port</span></div></li>
<li><div class="src-line"><a name="a722"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$url</span><span class="src-sym">-&gt;</span><a href="../Framework/Url.html#methodsetAutorite">setAutorite</a><span class="src-sym">(</span><span class="src-var">$_SERVER</span><span class="src-sym">[</span><span class="src-str">'HTTP_hote'</span><span class="src-sym">]</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a723"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$url</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a724"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a725"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a726"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a727"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Met&nbsp;à&nbsp;jour&nbsp;la&nbsp;valeur&nbsp;de&nbsp;l'option&nbsp;spécifiée.</span></div></li>
<li><div class="src-line"><a name="a728"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*</span></div></li>
<li><div class="src-line"><a name="a729"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@param&nbsp;</span><span class="src-doc-type">string&nbsp;</span><span class="src-doc-var">$nomOption&nbsp;</span><span class="src-doc">une&nbsp;des&nbsp;constantes&nbsp;commençant&nbsp;par&nbsp;self::OPTION_</span></div></li>
<li><div class="src-line"><a name="a730"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@param&nbsp;</span><span class="src-doc-type">mixed&nbsp;</span><span class="src-doc">&nbsp;</span><span class="src-doc-var">$valeur&nbsp;</span><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;valeur&nbsp;de&nbsp;l'option</span></div></li>
<li><div class="src-line"><a name="a731"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*</span></div></li>
<li><div class="src-line"><a name="a732"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@return&nbsp;</span><span class="src-doc-type">void&nbsp;</span></div></li>
<li><div class="src-line"><a name="a733"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@see</span><span class="src-doc">&nbsp;&nbsp;self::OPTION_STRICTE</span></div></li>
<li><div class="src-line"><a name="a734"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@see</span><span class="src-doc">&nbsp;&nbsp;self::OPTION_UTILISER_CROCHETS</span></div></li>
<li><div class="src-line"><a name="a735"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@see</span><span class="src-doc">&nbsp;&nbsp;self::OPTION_ENCODER_CLES</span></div></li>
<li><div class="src-line"><a name="a736"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a737"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">function&nbsp;</span><a href="../Framework/Url.html#methodsetOption">setOption</a><span class="src-sym">(</span><span class="src-var">$nomOption</span><span class="src-sym">,&nbsp;</span><span class="src-var">$valeur</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a738"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-sym">!</span><a href="http://www.php.net/array_key_exists">array_key_exists</a><span class="src-sym">(</span><span class="src-var">$nomOption</span><span class="src-sym">,&nbsp;</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">options</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a739"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-id">false</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a740"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a741"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">options</span><span class="src-sym">[</span><span class="src-var">$nomOption</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-var">$valeur</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a742"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a743"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a744"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a745"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Renvoie&nbsp;la&nbsp;valeur&nbsp;de&nbsp;l'option&nbsp;specifiée.</span></div></li>
<li><div class="src-line"><a name="a746"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*</span></div></li>
<li><div class="src-line"><a name="a747"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@param&nbsp;</span><span class="src-doc-type">string&nbsp;</span><span class="src-doc-var">$nomOption&nbsp;</span><span class="src-doc">Nom&nbsp;de&nbsp;l'option&nbsp;demandée</span></div></li>
<li><div class="src-line"><a name="a748"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*</span></div></li>
<li><div class="src-line"><a name="a749"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@return&nbsp;</span><span class="src-doc">&nbsp;</span><span class="src-doc-type">mixed&nbsp;</span></div></li>
<li><div class="src-line"><a name="a750"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a751"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">function&nbsp;</span><a href="../Framework/Url.html#methodgetOption">getOption</a><span class="src-sym">(</span><span class="src-var">$nomOption</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a752"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span>isset<span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">options</span><span class="src-sym">[</span><span class="src-var">$nomOption</span><span class="src-sym">]</span><span class="src-sym">)</span></div></li>
<li><div class="src-line"><a name="a753"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;?&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">options</span><span class="src-sym">[</span><span class="src-var">$nomOption</span><span class="src-sym">]&nbsp;</span>:&nbsp;<span class="src-id">false</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a754"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a755"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a756"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">public&nbsp;</span><span class="src-key">function&nbsp;</span><a href="../Framework/Url.html#method__toString">__toString</a><span class="src-sym">(</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a757"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Framework/Url.html#methodgetURL">getURL</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a758"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a759"></a><span class="src-sym">}</span></div></li>
</ol>
</div>
<div class="credit">
<hr />
Documentation generated on Thu, 04 Mar 2010 19:27:38 +0100 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.3</a>
</div>
</td></tr></table>
</td>
</tr>
</table>
 
</body>
</html>
/tags/v0.3-aleaume/doc/HTMLSmartyConverter/__filesource/fsource_Framework__Application.php.html
New file
0,0 → 1,135
<html>
<head>
<title>File Source for Application.php</title>
<meta http-equiv='Content-Type' content='text/html; charset=UTF-8'/>
<link rel="stylesheet" type="text/css" href="../media/style.css">
</head>
<body>
 
<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%">
<tr>
<td class="header_top">Framework</td>
</tr>
<tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr>
<tr>
<td class="header_menu">
[ <a href="../classtrees_Framework.html" class="menu">class tree: Framework</a> ]
[ <a href="../elementindex_Framework.html" class="menu">index: Framework</a> ]
[ <a href="../elementindex.html" class="menu">all elements</a> ]
</td>
</tr>
<tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr>
</table>
 
<table width="100%" border="0" cellpadding="0" cellspacing="0">
<tr valign="top">
<td width="200" class="menu">
<b>Packages:</b><br />
<a href="../li_Framework.html">Framework</a><br />
<br /><br />
</td>
<td>
<table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top">
 
<h1 align="center">Source for file Application.php</h1>
<p>Documentation is available at <a href="../Framework/_Application.php.html">Application.php</a></p>
<div class="src-code">
<ol><li><div class="src-line"><a name="a1"></a><span class="src-php">&lt;?php</span></div></li>
<li><div class="src-line"><a name="a2"></a><span class="src-comm">//&nbsp;declare(encoding='UTF-8');</span></div></li>
<li><div class="src-line"><a name="a3"></a><span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a4"></a><span class="src-doc">&nbsp;*&nbsp;Classe&nbsp;fournissant&nbsp;des&nbsp;informations&nbsp;au&nbsp;Framework&nbsp;sur&nbsp;l'application.</span></div></li>
<li><div class="src-line"><a name="a5"></a><span class="src-doc">&nbsp;*</span></div></li>
<li><div class="src-line"><a name="a6"></a><span class="src-doc">&nbsp;*&nbsp;PHP&nbsp;version&nbsp;5</span></div></li>
<li><div class="src-line"><a name="a7"></a><span class="src-doc">&nbsp;*</span></div></li>
<li><div class="src-line"><a name="a8"></a><span class="src-doc">&nbsp;*&nbsp;</span><span class="src-doc-coretag">@category</span><span class="src-doc">&nbsp;Debogage</span></div></li>
<li><div class="src-line"><a name="a9"></a><span class="src-doc">&nbsp;*&nbsp;</span><span class="src-doc-coretag">@package</span><span class="src-doc">&nbsp;Framework</span></div></li>
<li><div class="src-line"><a name="a10"></a><span class="src-doc">&nbsp;//&nbsp;Auteur&nbsp;principal&nbsp;:</span></div></li>
<li><div class="src-line"><a name="a11"></a><span class="src-doc">&nbsp;*&nbsp;</span><span class="src-doc-coretag">@author</span><span class="src-doc">&nbsp;Jean-Pascal&nbsp;MILCENT&nbsp;&lt;jpm@tela-botanica.org&gt;</span></div></li>
<li><div class="src-line"><a name="a12"></a><span class="src-doc">&nbsp;//&nbsp;Autres&nbsp;auteurs&nbsp;:</span></div></li>
<li><div class="src-line"><a name="a13"></a><span class="src-doc">&nbsp;*&nbsp;</span><span class="src-doc-coretag">@license</span><span class="src-doc">&nbsp;GPL&nbsp;v3&nbsp;&lt;http://www.gnu.org/licenses/gpl.txt&gt;</span></div></li>
<li><div class="src-line"><a name="a14"></a><span class="src-doc">&nbsp;*&nbsp;</span><span class="src-doc-coretag">@license</span><span class="src-doc">&nbsp;CECILL&nbsp;v2&nbsp;&lt;http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt&gt;</span></div></li>
<li><div class="src-line"><a name="a15"></a><span class="src-doc">&nbsp;*&nbsp;</span><span class="src-doc-coretag">@version</span><span class="src-doc">&nbsp;$$Id:&nbsp;Application.php&nbsp;153&nbsp;2010-03-04&nbsp;10:48:32Z&nbsp;jpm&nbsp;$$</span></div></li>
<li><div class="src-line"><a name="a16"></a><span class="src-doc">&nbsp;*&nbsp;</span><span class="src-doc-coretag">@copyright</span><span class="src-doc">&nbsp;1999-2009&nbsp;Tela&nbsp;Botanica&nbsp;(accueil@tela-botanica.org)</span></div></li>
<li><div class="src-line"><a name="a17"></a><span class="src-doc">&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a18"></a><span class="src-key">class&nbsp;</span><a href="../Framework/Application.html">Application</a>&nbsp;<span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a19"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a20"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a21"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;tableau&nbsp;d'informations&nbsp;sur&nbsp;l'application</span></div></li>
<li><div class="src-line"><a name="a22"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a23"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">private&nbsp;</span><span class="src-key">static&nbsp;</span><span class="src-var">$info&nbsp;</span>=&nbsp;<span class="src-id">null</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a24"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a25"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;chemin&nbsp;de&nbsp;base&nbsp;de&nbsp;l'application</span></div></li>
<li><div class="src-line"><a name="a26"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a27"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">private&nbsp;</span><span class="src-key">static&nbsp;</span><span class="src-var">$chemin&nbsp;</span>=&nbsp;<span class="src-id">null</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a28"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a29"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a30"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Modificateur&nbsp;pour&nbsp;le&nbsp;chemin&nbsp;de&nbsp;base</span></div></li>
<li><div class="src-line"><a name="a31"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@param&nbsp;</span><span class="src-doc-type">string&nbsp;</span><span class="src-doc-var">$chemin_fichier_principal&nbsp;</span><span class="src-doc">chemin&nbsp;de&nbsp;base</span></div></li>
<li><div class="src-line"><a name="a32"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a33"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">public&nbsp;</span><span class="src-key">static&nbsp;</span><span class="src-key">function&nbsp;</span><a href="../Framework/Application.html#methodsetChemin">setChemin</a><span class="src-sym">(</span><span class="src-var">$chemin_fichier_principal</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a34"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-id">self</span><span class="src-sym">::</span><span class="src-var">$chemin&nbsp;</span>===&nbsp;<span class="src-id">null</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a35"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-sym">!</span><a href="http://www.php.net/file_exists">file_exists</a><span class="src-sym">(</span><span class="src-var">$chemin_fichier_principal</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a36"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="http://www.php.net/trigger_error">trigger_error</a><span class="src-sym">(</span><span class="src-str">&quot;Le&nbsp;fichier&nbsp;indiqué&nbsp;n'existe&nbsp;pas.&nbsp;Utilisez&nbsp;__FILE__&nbsp;dans&nbsp;la&nbsp;méthode&nbsp;set().&quot;</span><span class="src-sym">,&nbsp;</span><span class="src-id">E_USER_ERROR</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a37"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}&nbsp;</span><span class="src-key">else&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a38"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-id">self</span><span class="src-sym">::</span><span class="src-var">$chemin&nbsp;</span>=&nbsp;<span class="src-id">dirname</span><span class="src-sym">(</span><span class="src-var">$chemin_fichier_principal</span><span class="src-sym">)</span>.<span class="src-id"><a href="../Framework/_autoload.inc.php.html#defineDS">DS</a></span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a39"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a40"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}&nbsp;</span><span class="src-key">else&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a41"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="http://www.php.net/trigger_error">trigger_error</a><span class="src-sym">(</span><span class="src-str">&quot;Le&nbsp;chemin&nbsp;de&nbsp;l'application&nbsp;a&nbsp;déjà&nbsp;été&nbsp;enregistré&nbsp;auprès&nbsp;du&nbsp;Framework&quot;</span><span class="src-sym">,&nbsp;</span><span class="src-id">E_USER_WARNING</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a42"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a43"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a44"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a45"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a46"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;accesseur&nbsp;pour&nbsp;le&nbsp;chemin</span></div></li>
<li><div class="src-line"><a name="a47"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@return&nbsp;</span><span class="src-doc-type">string&nbsp;</span><span class="src-doc">le&nbsp;chemin</span></div></li>
<li><div class="src-line"><a name="a48"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a49"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">public&nbsp;</span><span class="src-key">static&nbsp;</span><span class="src-key">function&nbsp;</span><a href="../Framework/Application.html#methodgetChemin">getChemin</a><span class="src-sym">(</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a50"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-id">self</span><span class="src-sym">::</span><span class="src-var">$chemin</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a51"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a52"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a53"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**&nbsp;Le&nbsp;tableau&nbsp;des&nbsp;informations&nbsp;sur&nbsp;l'application&nbsp;possède&nbsp;les&nbsp;clés&nbsp;suivantes&nbsp;:</span></div></li>
<li><div class="src-line"><a name="a54"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;-&nbsp;nom&nbsp;:&nbsp;nom&nbsp;de&nbsp;l'application</span></div></li>
<li><div class="src-line"><a name="a55"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;-&nbsp;abr&nbsp;:&nbsp;abréviation&nbsp;de&nbsp;l'application</span></div></li>
<li><div class="src-line"><a name="a56"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;-&nbsp;encodage&nbsp;:&nbsp;encodage&nbsp;de&nbsp;l'application&nbsp;(ISO-8859-15,&nbsp;UTF-8...)</span></div></li>
<li><div class="src-line"><a name="a57"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*</span></div></li>
<li><div class="src-line"><a name="a58"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@param&nbsp;</span><span class="src-doc-type">array&nbsp;</span><span class="src-doc-var">$info&nbsp;</span><span class="src-doc">tableau&nbsp;fournissant&nbsp;des&nbsp;informations&nbsp;sur&nbsp;l'application</span></div></li>
<li><div class="src-line"><a name="a59"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@return&nbsp;</span><span class="src-doc-type">void&nbsp;</span></div></li>
<li><div class="src-line"><a name="a60"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a61"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">public&nbsp;</span><span class="src-key">static&nbsp;</span><span class="src-key">function&nbsp;</span><a href="../Framework/Application.html#methodsetInfo">setInfo</a><span class="src-sym">(</span><span class="src-var">$info</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a62"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-id">self</span><span class="src-sym">::</span><span class="src-var">$info&nbsp;</span>===&nbsp;<span class="src-id">null</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a63"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-id">self</span><span class="src-sym">::</span><span class="src-var">$info&nbsp;</span>=&nbsp;<span class="src-var">$info</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a64"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}&nbsp;</span><span class="src-key">else&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a65"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-id">trigger_error</span><span class="src-sym">(</span><span class="src-str">&quot;Le&nbsp;informations&nbsp;de&nbsp;l'application&nbsp;ont&nbsp;déjà&nbsp;été&nbsp;enregistrées&nbsp;auprès&nbsp;du&nbsp;Framework&quot;</span><span class="src-sym">,&nbsp;</span><span class="src-id">E_USER_WARNING</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a66"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a67"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a68"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a69"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a70"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;accesseur&nbsp;pour&nbsp;le&nbsp;tableau&nbsp;d'infos</span></div></li>
<li><div class="src-line"><a name="a71"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@param&nbsp;</span><span class="src-doc-type">string&nbsp;</span><span class="src-doc-var">$cle&nbsp;</span><span class="src-doc">la&nbsp;clé&nbsp;à&nbsp;laquelle&nbsp;on&nbsp;veut&nbsp;accéder</span></div></li>
<li><div class="src-line"><a name="a72"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a73"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">public&nbsp;</span><span class="src-key">static&nbsp;</span><span class="src-key">function&nbsp;</span><a href="../Framework/Application.html#methodgetInfo">getInfo</a><span class="src-sym">(</span><span class="src-var">$cle&nbsp;</span>=&nbsp;<span class="src-id">null</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a74"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$cle&nbsp;</span>!==&nbsp;<span class="src-id">null</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a75"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span>isset<span class="src-sym">(</span><span class="src-id">self</span><span class="src-sym">::</span><span class="src-var">$info</span><span class="src-sym">[</span><span class="src-var">$cle</span><span class="src-sym">]</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a76"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-id">self</span><span class="src-sym">::</span><span class="src-var">$info</span><span class="src-sym">[</span><span class="src-var">$cle</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a77"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a78"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}&nbsp;</span><span class="src-key">else&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a79"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-id">self</span><span class="src-sym">::</span><span class="src-var">$info</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a80"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a81"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a82"></a><span class="src-sym">}</span></div></li>
</ol>
</div>
<div class="credit">
<hr />
Documentation generated on Thu, 04 Mar 2010 19:27:28 +0100 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.3</a>
</div>
</td></tr></table>
</td>
</tr>
</table>
 
</body>
</html>
/tags/v0.3-aleaume/doc/HTMLSmartyConverter/__filesource/fsource_Framework__SquelettePhp.php.html
New file
0,0 → 1,127
<html>
<head>
<title>File Source for SquelettePhp.php</title>
<meta http-equiv='Content-Type' content='text/html; charset=UTF-8'/>
<link rel="stylesheet" type="text/css" href="../media/style.css">
</head>
<body>
 
<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%">
<tr>
<td class="header_top">Framework</td>
</tr>
<tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr>
<tr>
<td class="header_menu">
[ <a href="../classtrees_Framework.html" class="menu">class tree: Framework</a> ]
[ <a href="../elementindex_Framework.html" class="menu">index: Framework</a> ]
[ <a href="../elementindex.html" class="menu">all elements</a> ]
</td>
</tr>
<tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr>
</table>
 
<table width="100%" border="0" cellpadding="0" cellspacing="0">
<tr valign="top">
<td width="200" class="menu">
<b>Packages:</b><br />
<a href="../li_Framework.html">Framework</a><br />
<br /><br />
</td>
<td>
<table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top">
 
<h1 align="center">Source for file SquelettePhp.php</h1>
<p>Documentation is available at <a href="../Framework/_SquelettePhp.php.html">SquelettePhp.php</a></p>
<div class="src-code">
<ol><li><div class="src-line"><a name="a1"></a><span class="src-php">&lt;?php</span></div></li>
<li><div class="src-line"><a name="a2"></a><span class="src-comm">//&nbsp;declare(encoding='UTF-8');</span></div></li>
<li><div class="src-line"><a name="a3"></a><span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a4"></a><span class="src-doc">&nbsp;*&nbsp;Classe&nbsp;SquelettePhp,&nbsp;traitant&nbsp;les&nbsp;squelette&nbsp;Php&nbsp;utilisant&nbsp;la&nbsp;syntaxe&nbsp;courte&nbsp;php&nbsp;ou&nbsp;pas.</span></div></li>
<li><div class="src-line"><a name="a5"></a><span class="src-doc">&nbsp;*&nbsp;Ces&nbsp;méthodes&nbsp;sont&nbsp;statiques.</span></div></li>
<li><div class="src-line"><a name="a6"></a><span class="src-doc">&nbsp;*</span></div></li>
<li><div class="src-line"><a name="a7"></a><span class="src-doc">&nbsp;*&nbsp;</span><span class="src-doc-coretag">@category</span><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;php5</span></div></li>
<li><div class="src-line"><a name="a8"></a><span class="src-doc">&nbsp;*&nbsp;</span><span class="src-doc-coretag">@package</span><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Framework</span></div></li>
<li><div class="src-line"><a name="a9"></a><span class="src-doc">&nbsp;*&nbsp;</span><span class="src-doc-coretag">@author</span><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Jean-Pascal&nbsp;MILCENT&nbsp;&lt;jpm@tela-botanica.org&gt;</span></div></li>
<li><div class="src-line"><a name="a10"></a><span class="src-doc">&nbsp;*&nbsp;</span><span class="src-doc-coretag">@copyright</span><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;2010&nbsp;Tela-Botanica</span></div></li>
<li><div class="src-line"><a name="a11"></a><span class="src-doc">&nbsp;*&nbsp;</span><span class="src-doc-coretag">@license</span><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;http://www.cecill.info/licences/Licence_CeCILL_V2-fr.txt&nbsp;Licence&nbsp;CECILL</span></div></li>
<li><div class="src-line"><a name="a12"></a><span class="src-doc">&nbsp;*&nbsp;</span><span class="src-doc-coretag">@license</span><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;http://www.gnu.org/licenses/gpl.html&nbsp;Licence&nbsp;GNU-GPL</span></div></li>
<li><div class="src-line"><a name="a13"></a><span class="src-doc">&nbsp;*&nbsp;</span><span class="src-doc-coretag">@version</span><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;SVN:&nbsp;$$Id:&nbsp;SquelettePhp.php&nbsp;153&nbsp;2010-03-04&nbsp;10:48:32Z&nbsp;jpm&nbsp;$$</span></div></li>
<li><div class="src-line"><a name="a14"></a><span class="src-doc">&nbsp;*&nbsp;</span><span class="src-doc-coretag">@link</span><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;/doc/framework/</span></div></li>
<li><div class="src-line"><a name="a15"></a><span class="src-doc">&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a16"></a><span class="src-key">class&nbsp;</span><a href="../Framework/SquelettePhp.html">SquelettePhp</a>&nbsp;<span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a17"></a>&nbsp;&nbsp;&nbsp;&nbsp;</div></li>
<li><div class="src-line"><a name="a18"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a19"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Fonction&nbsp;prenant&nbsp;en&nbsp;paramètre&nbsp;un&nbsp;chemin&nbsp;de&nbsp;fichier&nbsp;squelette&nbsp;et&nbsp;un&nbsp;tableau&nbsp;associatif&nbsp;de&nbsp;données,</span></div></li>
<li><div class="src-line"><a name="a20"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;en&nbsp;extrait&nbsp;les&nbsp;variables,&nbsp;charge&nbsp;le&nbsp;squelette&nbsp;et&nbsp;retourne&nbsp;le&nbsp;résultat&nbsp;des&nbsp;deux&nbsp;combinés.</span></div></li>
<li><div class="src-line"><a name="a21"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*</span></div></li>
<li><div class="src-line"><a name="a22"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@param&nbsp;</span><span class="src-doc-type">String&nbsp;</span><span class="src-doc-var">$fichier&nbsp;</span><span class="src-doc">&nbsp;&nbsp;&nbsp;le&nbsp;chemin&nbsp;du&nbsp;fichier&nbsp;du&nbsp;squelette</span></div></li>
<li><div class="src-line"><a name="a23"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@param&nbsp;</span><span class="src-doc-type">Array&nbsp;</span><span class="src-doc">&nbsp;</span><span class="src-doc-var">$donnees&nbsp;</span><span class="src-doc">&nbsp;&nbsp;&nbsp;un&nbsp;tableau&nbsp;associatif&nbsp;contenant&nbsp;les&nbsp;variables&nbsp;a&nbsp;injecter&nbsp;dans&nbsp;le&nbsp;squelette.</span></div></li>
<li><div class="src-line"><a name="a24"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*</span></div></li>
<li><div class="src-line"><a name="a25"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@return&nbsp;</span><span class="src-doc-type">boolean&nbsp;</span><span class="src-doc">false&nbsp;si&nbsp;la&nbsp;vue&nbsp;n'existe&nbsp;pas,&nbsp;sinon&nbsp;la&nbsp;chaine&nbsp;résultat.</span></div></li>
<li><div class="src-line"><a name="a26"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a27"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">public&nbsp;</span><span class="src-key">static&nbsp;</span><span class="src-key">function&nbsp;</span><a href="../Framework/SquelettePhp.html#methodanalyser">analyser</a><span class="src-sym">(</span><span class="src-var">$fichier</span><span class="src-sym">,&nbsp;</span><span class="src-key">Array&nbsp;</span><span class="src-var">$donnees&nbsp;</span>=&nbsp;<span class="src-key">array</span><span class="src-sym">(</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a28"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$sortie&nbsp;</span>=&nbsp;<span class="src-id">false</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a29"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><a href="http://www.php.net/file_exists">file_exists</a><span class="src-sym">(</span><span class="src-var">$fichier</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a30"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;Extraction&nbsp;des&nbsp;variables&nbsp;du&nbsp;tableau&nbsp;de&nbsp;données</span></div></li>
<li><div class="src-line"><a name="a31"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="http://www.php.net/extract">extract</a><span class="src-sym">(</span><span class="src-var">$donnees</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a32"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;Démarage&nbsp;de&nbsp;la&nbsp;bufferisation&nbsp;de&nbsp;sortie</span></div></li>
<li><div class="src-line"><a name="a33"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="http://www.php.net/ob_start">ob_start</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a34"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;Si&nbsp;les&nbsp;tags&nbsp;courts&nbsp;sont&nbsp;activés</span></div></li>
<li><div class="src-line"><a name="a35"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span>(bool)&nbsp;<span class="src-sym">@</span><a href="http://www.php.net/ini_get">ini_get</a><span class="src-sym">(</span><span class="src-str">'short_open_tag'</span><span class="src-sym">)&nbsp;</span>===&nbsp;<span class="src-id">true</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a36"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;Simple&nbsp;inclusion&nbsp;du&nbsp;squelette</span></div></li>
<li><div class="src-line"><a name="a37"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-inc">include&nbsp;</span><span class="src-var">$fichier</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a38"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}&nbsp;</span><span class="src-key">else&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a39"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;Sinon,&nbsp;remplacement&nbsp;des&nbsp;tags&nbsp;courts&nbsp;par&nbsp;la&nbsp;syntaxe&nbsp;classique&nbsp;avec&nbsp;echo</span></div></li>
<li><div class="src-line"><a name="a40"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$html_et_code_php&nbsp;</span>=&nbsp;<span class="src-id">self</span><span class="src-sym">::</span><span class="src-id">traiterTagsCourts</span><span class="src-sym">(</span><span class="src-var">$fichier</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a41"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;Pour&nbsp;évaluer&nbsp;du&nbsp;php&nbsp;mélangé&nbsp;dans&nbsp;du&nbsp;html&nbsp;il&nbsp;est&nbsp;nécessaire&nbsp;de&nbsp;fermer&nbsp;la&nbsp;balise&nbsp;php&nbsp;ouverte&nbsp;par&nbsp;eval</span></div></li>
<li><div class="src-line"><a name="a42"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$html_et_code_php&nbsp;</span>=&nbsp;<span class="src-str">'?&gt;'</span>.<span class="src-var">$html_et_code_php</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a43"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;Interprétation&nbsp;du&nbsp;html&nbsp;et&nbsp;du&nbsp;php&nbsp;dans&nbsp;le&nbsp;buffer</span></div></li>
<li><div class="src-line"><a name="a44"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;echo&nbsp;eval<span class="src-sym">(</span><span class="src-var">$html_et_code_php</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a45"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a46"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;Récupèration&nbsp;du&nbsp;contenu&nbsp;du&nbsp;buffer</span></div></li>
<li><div class="src-line"><a name="a47"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$sortie&nbsp;</span>=&nbsp;<a href="http://www.php.net/ob_get_contents">ob_get_contents</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a48"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;Suppression&nbsp;du&nbsp;buffer</span></div></li>
<li><div class="src-line"><a name="a49"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">@</span><a href="http://www.php.net/ob_end_clean">ob_end_clean</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a50"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}&nbsp;</span><span class="src-key">else&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a51"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$msg&nbsp;</span>=&nbsp;<span class="src-str">&quot;</span><span class="src-str">Le&nbsp;fichier&nbsp;du&nbsp;squelette&nbsp;'<span class="src-var">$fichier</span>'&nbsp;n'existe&nbsp;pas.</span><span class="src-str">&quot;</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a52"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="http://www.php.net/trigger_error">trigger_error</a><span class="src-sym">(</span><span class="src-var">$msg</span><span class="src-sym">,&nbsp;</span><span class="src-id">E_USER_WARNING</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a53"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a54"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;Retourne&nbsp;le&nbsp;contenu</span></div></li>
<li><div class="src-line"><a name="a55"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$sortie</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a56"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a57"></a>&nbsp;&nbsp;&nbsp;&nbsp;</div></li>
<li><div class="src-line"><a name="a58"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a59"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Fonction&nbsp;chargeant&nbsp;le&nbsp;contenu&nbsp;du&nbsp;squelette&nbsp;et&nbsp;remplaçant&nbsp;les&nbsp;tags&nbsp;court&nbsp;php&nbsp;(&lt;?=&nbsp;...)&nbsp;par&nbsp;un&nbsp;tag&nbsp;long&nbsp;avec&nbsp;echo.</span></div></li>
<li><div class="src-line"><a name="a60"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*</span></div></li>
<li><div class="src-line"><a name="a61"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@param&nbsp;</span><span class="src-doc-type">String&nbsp;</span><span class="src-doc-var">$chemin_squelette&nbsp;</span><span class="src-doc">le&nbsp;chemin&nbsp;du&nbsp;fichier&nbsp;du&nbsp;squelette</span></div></li>
<li><div class="src-line"><a name="a62"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*</span></div></li>
<li><div class="src-line"><a name="a63"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@return&nbsp;</span><span class="src-doc-type">string&nbsp;</span><span class="src-doc">le&nbsp;contenu&nbsp;du&nbsp;fichier&nbsp;du&nbsp;squelette&nbsp;php&nbsp;avec&nbsp;les&nbsp;tags&nbsp;courts&nbsp;remplacés.</span></div></li>
<li><div class="src-line"><a name="a64"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a65"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">private&nbsp;</span><span class="src-key">static&nbsp;</span><span class="src-key">function&nbsp;</span><span class="src-id">traiterTagsCourts</span><span class="src-sym">(</span><span class="src-var">$chemin_squelette</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a66"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$contenu&nbsp;</span>=&nbsp;<a href="http://www.php.net/file_get_contents">file_get_contents</a><span class="src-sym">(</span><span class="src-var">$chemin_squelette</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a67"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;Remplacement&nbsp;de&nbsp;tags&nbsp;courts&nbsp;par&nbsp;un&nbsp;tag&nbsp;long&nbsp;avec&nbsp;echo</span></div></li>
<li><div class="src-line"><a name="a68"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$contenu&nbsp;</span>=&nbsp;<a href="http://www.php.net/str_replace">str_replace</a><span class="src-sym">(</span><span class="src-str">'&lt;?='</span><span class="src-sym">,&nbsp;</span><span class="src-str">'&lt;?php&nbsp;echo&nbsp;'</span><span class="src-sym">,&nbsp;&nbsp;</span><span class="src-var">$contenu</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a69"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;Ajout&nbsp;systématique&nbsp;d'un&nbsp;point&nbsp;virgule&nbsp;avant&nbsp;la&nbsp;fermeture&nbsp;php</span></div></li>
<li><div class="src-line"><a name="a70"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$contenu&nbsp;</span>=&nbsp;<a href="http://www.php.net/preg_replace">preg_replace</a><span class="src-sym">(</span><span class="src-str">&quot;/;*\s*\?&gt;/&quot;</span><span class="src-sym">,&nbsp;</span><span class="src-str">&quot;;&nbsp;?&gt;&quot;</span><span class="src-sym">,&nbsp;</span><span class="src-var">$contenu</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a71"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$contenu</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a72"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a73"></a><span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a74"></a><span class="src-php">?&gt;</span></div></li>
</ol>
</div>
<div class="credit">
<hr />
Documentation generated on Thu, 04 Mar 2010 19:27:36 +0100 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.3</a>
</div>
</td></tr></table>
</td>
</tr>
</table>
 
</body>
</html>
/tags/v0.3-aleaume/doc/HTMLSmartyConverter/__filesource/fsource_Framework__Registre.php.html
New file
0,0 → 1,147
<html>
<head>
<title>File Source for Registre.php</title>
<meta http-equiv='Content-Type' content='text/html; charset=UTF-8'/>
<link rel="stylesheet" type="text/css" href="../media/style.css">
</head>
<body>
 
<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%">
<tr>
<td class="header_top">Framework</td>
</tr>
<tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr>
<tr>
<td class="header_menu">
[ <a href="../classtrees_Framework.html" class="menu">class tree: Framework</a> ]
[ <a href="../elementindex_Framework.html" class="menu">index: Framework</a> ]
[ <a href="../elementindex.html" class="menu">all elements</a> ]
</td>
</tr>
<tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr>
</table>
 
<table width="100%" border="0" cellpadding="0" cellspacing="0">
<tr valign="top">
<td width="200" class="menu">
<b>Packages:</b><br />
<a href="../li_Framework.html">Framework</a><br />
<br /><br />
</td>
<td>
<table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top">
 
<h1 align="center">Source for file Registre.php</h1>
<p>Documentation is available at <a href="../Framework/_Registre.php.html">Registre.php</a></p>
<div class="src-code">
<ol><li><div class="src-line"><a name="a1"></a><span class="src-php">&lt;?php</span></div></li>
<li><div class="src-line"><a name="a2"></a><span class="src-comm">//&nbsp;declare(encoding='UTF-8');</span></div></li>
<li><div class="src-line"><a name="a3"></a><span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a4"></a><span class="src-doc">&nbsp;*&nbsp;Classe&nbsp;registre,&nbsp;qui&nbsp;permet&nbsp;un&nbsp;accès&nbsp;à&nbsp;différentes&nbsp;variables&nbsp;à&nbsp;travers&nbsp;les&nbsp;autres&nbsp;classes.</span></div></li>
<li><div class="src-line"><a name="a5"></a><span class="src-doc">&nbsp;*&nbsp;C'est&nbsp;un&nbsp;singleton</span></div></li>
<li><div class="src-line"><a name="a6"></a><span class="src-doc">&nbsp;*</span></div></li>
<li><div class="src-line"><a name="a7"></a><span class="src-doc">*&nbsp;PHP&nbsp;Version&nbsp;5</span></div></li>
<li><div class="src-line"><a name="a8"></a><span class="src-doc">*</span></div></li>
<li><div class="src-line"><a name="a9"></a><span class="src-doc">*&nbsp;</span><span class="src-doc-coretag">@category</span><span class="src-doc">&nbsp;&nbsp;Class</span></div></li>
<li><div class="src-line"><a name="a10"></a><span class="src-doc">*&nbsp;</span><span class="src-doc-coretag">@package</span><span class="src-doc">&nbsp;&nbsp;&nbsp;Framework</span></div></li>
<li><div class="src-line"><a name="a11"></a><span class="src-doc">*&nbsp;</span><span class="src-doc-coretag">@author</span><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;Jean-Pascal&nbsp;Milcent&nbsp;&lt;jmp@tela-botanica.org&gt;</span></div></li>
<li><div class="src-line"><a name="a12"></a><span class="src-doc">*&nbsp;</span><span class="src-doc-coretag">@copyright</span><span class="src-doc">&nbsp;2009&nbsp;Tela-Botanica</span></div></li>
<li><div class="src-line"><a name="a13"></a><span class="src-doc">*&nbsp;</span><span class="src-doc-coretag">@license</span><span class="src-doc">&nbsp;&nbsp;&nbsp;http://www.cecill.info/licences/Licence_CeCILL_V2-fr.txt&nbsp;Licence&nbsp;CECILL</span></div></li>
<li><div class="src-line"><a name="a14"></a><span class="src-doc">*&nbsp;</span><span class="src-doc-coretag">@license</span><span class="src-doc">&nbsp;&nbsp;&nbsp;http://www.gnu.org/licenses/gpl.html&nbsp;Licence&nbsp;GNU-GPL</span></div></li>
<li><div class="src-line"><a name="a15"></a><span class="src-doc">*&nbsp;</span><span class="src-doc-coretag">@version</span><span class="src-doc">&nbsp;&nbsp;&nbsp;SVN:&nbsp;$$Id:&nbsp;Registre.php&nbsp;120&nbsp;2009-09-01&nbsp;12:21:14Z&nbsp;aurelien&nbsp;$$</span></div></li>
<li><div class="src-line"><a name="a16"></a><span class="src-doc">*&nbsp;</span><span class="src-doc-coretag">@link</span><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;/doc/framework/</span></div></li>
<li><div class="src-line"><a name="a17"></a><span class="src-doc">*</span></div></li>
<li><div class="src-line"><a name="a18"></a><span class="src-doc">*/</span></div></li>
<li><div class="src-line"><a name="a19"></a><span class="src-key">class&nbsp;</span><a href="../Framework/Registre.html">Registre</a>&nbsp;<span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a20"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a21"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a22"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Tableau&nbsp;associatif&nbsp;stockant&nbsp;les&nbsp;variables</span></div></li>
<li><div class="src-line"><a name="a23"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a24"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">private&nbsp;</span><span class="src-var">$stockage&nbsp;</span>=&nbsp;<span class="src-key">array</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a25"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a26"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;La&nbsp;classe&nbsp;registre&nbsp;se&nbsp;contient&nbsp;elle-même,&nbsp;(pour&nbsp;le&nbsp;pattern&nbsp;singleton)</span></div></li>
<li><div class="src-line"><a name="a27"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a28"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">private&nbsp;</span><span class="src-key">static&nbsp;</span><span class="src-var">$registre</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a29"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a30"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a31"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Constructeur&nbsp;par&nbsp;défaut,&nbsp;privé,&nbsp;car&nbsp;on&nbsp;accède&nbsp;à&nbsp;la&nbsp;classe&nbsp;par&nbsp;le&nbsp;getInstance</span></div></li>
<li><div class="src-line"><a name="a32"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a33"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">private&nbsp;</span><span class="src-key">function&nbsp;</span><span class="src-id">__construct</span><span class="src-sym">(</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a34"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a35"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a36"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a37"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Fonction&nbsp;qui&nbsp;renvoie&nbsp;l'instance&nbsp;de&nbsp;classe&nbsp;en&nbsp;assurant&nbsp;son&nbsp;unicité,&nbsp;c'est&nbsp;l'unique&nbsp;méthode&nbsp;qui&nbsp;doit&nbsp;être</span></div></li>
<li><div class="src-line"><a name="a38"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;utilisée&nbsp;pour&nbsp;récupérer&nbsp;l'objet&nbsp;Registre</span></div></li>
<li><div class="src-line"><a name="a39"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a40"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">public&nbsp;</span><span class="src-key">static&nbsp;</span><span class="src-key">function&nbsp;</span><a href="../Framework/Registre.html#methodgetInstance">getInstance</a><span class="src-sym">(</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a41"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-id">self</span><span class="src-sym">::</span><span class="src-var">$registre&nbsp;</span>instanceof&nbsp;<span class="src-id">Registre</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a42"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-id">self</span><span class="src-sym">::</span><span class="src-var">$registre</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a43"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a44"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-id">self</span><span class="src-sym">::</span><span class="src-var">$registre&nbsp;</span>=&nbsp;<span class="src-key">new&nbsp;</span><span class="src-id">Registre</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a45"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-id">self</span><span class="src-sym">::</span><span class="src-var">$registre</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a46"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a47"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a48"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a49"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Ajoute&nbsp;un&nbsp;objet&nbsp;au&nbsp;tableau&nbsp;selon&nbsp;un&nbsp;intitulé&nbsp;donné</span></div></li>
<li><div class="src-line"><a name="a50"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@param&nbsp;</span><span class="src-doc-type">string&nbsp;</span><span class="src-doc">l'intitulé&nbsp;sous&nbsp;lequel&nbsp;l'objet&nbsp;sera&nbsp;conservé</span></div></li>
<li><div class="src-line"><a name="a51"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@param&nbsp;</span><span class="src-doc-type">mixed&nbsp;</span><span class="src-doc">l'objet&nbsp;à&nbsp;conserver</span></div></li>
<li><div class="src-line"><a name="a52"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a53"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">public&nbsp;</span><span class="src-key">function&nbsp;</span><a href="../Framework/Registre.html#methodset">set</a><span class="src-sym">(</span><span class="src-var">$intitule</span><span class="src-sym">,&nbsp;</span><span class="src-var">$objet</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a54"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-id">is_array</span><span class="src-sym">(</span><span class="src-var">$objet</span><span class="src-sym">)&nbsp;</span>&amp;&amp;&nbsp;isset<span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">stockage</span><span class="src-sym">[</span><span class="src-var">$intitule</span><span class="src-sym">]</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a55"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">stockage</span><span class="src-sym">[</span><span class="src-var">$intitule</span><span class="src-sym">]&nbsp;</span>=&nbsp;<a href="http://www.php.net/array_merge">array_merge</a><span class="src-sym">(</span>(array)&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">stockage</span><span class="src-sym">[</span><span class="src-var">$intitule</span><span class="src-sym">]</span><span class="src-sym">,&nbsp;</span>(array)&nbsp;<span class="src-var">$objet</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a56"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$message&nbsp;</span>=&nbsp;<span class="src-str">&quot;</span><span class="src-str">Le&nbsp;tableau&nbsp;<span class="src-var">$intitule</span>&nbsp;présent&nbsp;dans&nbsp;le&nbsp;registre&nbsp;a&nbsp;été&nbsp;fusionné&nbsp;avec&nbsp;un&nbsp;nouveau&nbsp;tableau&nbsp;de&nbsp;même&nbsp;intitulé&nbsp;!</span><span class="src-str">&quot;</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a57"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="http://www.php.net/trigger_error">trigger_error</a><span class="src-sym">(</span><span class="src-var">$message</span><span class="src-sym">,&nbsp;</span><span class="src-id">E_USER_WARNING</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a58"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}&nbsp;</span><span class="src-key">else&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a59"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">stockage</span><span class="src-sym">[</span><span class="src-var">$intitule</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-var">$objet</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a60"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a61"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a62"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a63"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a64"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Renvoie&nbsp;l'objet&nbsp;associé&nbsp;à&nbsp;l'intitulé&nbsp;donné&nbsp;en&nbsp;paramètre</span></div></li>
<li><div class="src-line"><a name="a65"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@return&nbsp;</span><span class="src-doc-type">mixed&nbsp;</span><span class="src-doc">l'objet&nbsp;associé&nbsp;à&nbsp;l'intitulé&nbsp;ou&nbsp;null&nbsp;s'il&nbsp;n'est&nbsp;pas&nbsp;présent</span></div></li>
<li><div class="src-line"><a name="a66"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a67"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">public&nbsp;</span><span class="src-key">function&nbsp;</span><a href="../Framework/Registre.html#methodget">get</a><span class="src-sym">(</span><span class="src-var">$intitule</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a68"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span>isset<span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">stockage</span><span class="src-sym">[</span><span class="src-var">$intitule</span><span class="src-sym">]</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a69"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">stockage</span><span class="src-sym">[</span><span class="src-var">$intitule</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a70"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a71"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-id">null</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a72"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a73"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a74"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a75"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Détruit&nbsp;l'objet&nbsp;associé&nbsp;à&nbsp;l'intitulé,&nbsp;n'a&nbsp;pas&nbsp;d'effet&nbsp;si&nbsp;il&nbsp;n'y&nbsp;a&nbsp;pas&nbsp;d'objet&nbsp;associé</span></div></li>
<li><div class="src-line"><a name="a76"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a77"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">public&nbsp;</span><span class="src-key">function&nbsp;</span><a href="../Framework/Registre.html#methoddetruire">detruire</a><span class="src-sym">(</span><span class="src-var">$intitule</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a78"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span>isset<span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">stockage</span><span class="src-sym">[</span><span class="src-var">$intitule</span><span class="src-sym">]</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a79"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;unset<span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">stockage</span><span class="src-sym">[</span><span class="src-var">$intitule</span><span class="src-sym">]</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a80"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a81"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a82"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a83"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a84"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Teste&nbsp;si&nbsp;un&nbsp;objet&nbsp;est&nbsp;présent&nbsp;sous&nbsp;un&nbsp;intitulé&nbsp;donné</span></div></li>
<li><div class="src-line"><a name="a85"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@return&nbsp;</span><span class="src-doc-type">boolean&nbsp;</span><span class="src-doc">true&nbsp;si&nbsp;un&nbsp;objet&nbsp;associé&nbsp;à&nbsp;cet&nbsp;intitulé&nbsp;est&nbsp;présent,&nbsp;false&nbsp;sinon</span></div></li>
<li><div class="src-line"><a name="a86"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a87"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">public&nbsp;</span><span class="src-key">function&nbsp;</span><a href="../Framework/Registre.html#methodexiste">existe</a><span class="src-sym">(</span><span class="src-var">$intitule</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a88"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if</span><span class="src-sym">(</span>isset<span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">stockage</span><span class="src-sym">[</span><span class="src-var">$intitule</span><span class="src-sym">]</span><span class="src-sym">))</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a89"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-id">true</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a90"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a91"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-id">false</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a92"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a93"></a><span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a94"></a><span class="src-php">?&gt;</span></div></li>
</ol>
</div>
<div class="credit">
<hr />
Documentation generated on Thu, 04 Mar 2010 19:27:35 +0100 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.3</a>
</div>
</td></tr></table>
</td>
</tr>
</table>
 
</body>
</html>
/tags/v0.3-aleaume/doc/HTMLSmartyConverter/__filesource/fsource_Framework__Chronometre.php.html
New file
0,0 → 1,205
<html>
<head>
<title>File Source for Chronometre.php</title>
<meta http-equiv='Content-Type' content='text/html; charset=UTF-8'/>
<link rel="stylesheet" type="text/css" href="../media/style.css">
</head>
<body>
 
<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%">
<tr>
<td class="header_top">Framework</td>
</tr>
<tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr>
<tr>
<td class="header_menu">
[ <a href="../classtrees_Framework.html" class="menu">class tree: Framework</a> ]
[ <a href="../elementindex_Framework.html" class="menu">index: Framework</a> ]
[ <a href="../elementindex.html" class="menu">all elements</a> ]
</td>
</tr>
<tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr>
</table>
 
<table width="100%" border="0" cellpadding="0" cellspacing="0">
<tr valign="top">
<td width="200" class="menu">
<b>Packages:</b><br />
<a href="../li_Framework.html">Framework</a><br />
<br /><br />
</td>
<td>
<table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top">
 
<h1 align="center">Source for file Chronometre.php</h1>
<p>Documentation is available at <a href="../Framework/_Chronometre.php.html">Chronometre.php</a></p>
<div class="src-code">
<ol><li><div class="src-line"><a name="a1"></a><span class="src-php">&lt;?php</span></div></li>
<li><div class="src-line"><a name="a2"></a><span class="src-comm">//&nbsp;declare(encoding='UTF-8');</span></div></li>
<li><div class="src-line"><a name="a3"></a><span class="src-doc">/**&nbsp;Classe&nbsp;Chronometre()&nbsp;-&nbsp;Permet&nbsp;de&nbsp;stocker&nbsp;et&nbsp;d'afficher</span></div></li>
<li><div class="src-line"><a name="a4"></a><span class="src-doc">&nbsp;*&nbsp;les&nbsp;temps&nbsp;d'éxécution&nbsp;de&nbsp;script.</span></div></li>
<li><div class="src-line"><a name="a5"></a><span class="src-doc">&nbsp;*</span></div></li>
<li><div class="src-line"><a name="a6"></a><span class="src-doc">&nbsp;*&nbsp;Cette&nbsp;classe&nbsp;permet&nbsp;de&nbsp;réaliser&nbsp;un&nbsp;ensemble</span></div></li>
<li><div class="src-line"><a name="a7"></a><span class="src-doc">&nbsp;*&nbsp;de&nbsp;mesure&nbsp;de&nbsp;temps&nbsp;prises&nbsp;à</span></div></li>
<li><div class="src-line"><a name="a8"></a><span class="src-doc">&nbsp;*&nbsp;différents&nbsp;endroits&nbsp;d'un&nbsp;script.</span></div></li>
<li><div class="src-line"><a name="a9"></a><span class="src-doc">&nbsp;*&nbsp;Ces&nbsp;mesures&nbsp;peuvent&nbsp;ensuite&nbsp;être&nbsp;affichées&nbsp;au</span></div></li>
<li><div class="src-line"><a name="a10"></a><span class="src-doc">&nbsp;*&nbsp;sein&nbsp;d'un&nbsp;tableau&nbsp;XHTML.</span></div></li>
<li><div class="src-line"><a name="a11"></a><span class="src-doc">&nbsp;*</span></div></li>
<li><div class="src-line"><a name="a12"></a><span class="src-doc">&nbsp;*</span></div></li>
<li><div class="src-line"><a name="a13"></a><span class="src-doc">&nbsp;*&nbsp;PHP&nbsp;Version&nbsp;5</span></div></li>
<li><div class="src-line"><a name="a14"></a><span class="src-doc">&nbsp;*</span></div></li>
<li><div class="src-line"><a name="a15"></a><span class="src-doc">&nbsp;*&nbsp;</span><span class="src-doc-coretag">@category</span><span class="src-doc">&nbsp;&nbsp;PHP</span></div></li>
<li><div class="src-line"><a name="a16"></a><span class="src-doc">&nbsp;*&nbsp;</span><span class="src-doc-coretag">@package</span><span class="src-doc">&nbsp;&nbsp;&nbsp;Framework</span></div></li>
<li><div class="src-line"><a name="a17"></a><span class="src-doc">&nbsp;*&nbsp;</span><span class="src-doc-coretag">@author</span><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;Jean-Pascal&nbsp;MILCENT&nbsp;&lt;jpm@tela-botanica.org&gt;</span></div></li>
<li><div class="src-line"><a name="a18"></a><span class="src-doc">&nbsp;*&nbsp;</span><span class="src-doc-coretag">@copyright</span><span class="src-doc">&nbsp;2009&nbsp;Tela-Botanica</span></div></li>
<li><div class="src-line"><a name="a19"></a><span class="src-doc">&nbsp;*&nbsp;</span><span class="src-doc-coretag">@license</span><span class="src-doc">&nbsp;&nbsp;&nbsp;http://www.cecill.info/licences/Licence_CeCILL_V2-fr.txt&nbsp;Licence&nbsp;CECILL</span></div></li>
<li><div class="src-line"><a name="a20"></a><span class="src-doc">&nbsp;*&nbsp;</span><span class="src-doc-coretag">@version</span><span class="src-doc">&nbsp;&nbsp;&nbsp;Release:&nbsp;&lt;package_version&gt;</span></div></li>
<li><div class="src-line"><a name="a21"></a><span class="src-doc">&nbsp;*&nbsp;</span><span class="src-doc-coretag">@link</span><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;/doc/framework/</span></div></li>
<li><div class="src-line"><a name="a22"></a><span class="src-doc">&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a23"></a><span class="src-key">class&nbsp;</span><a href="../Framework/Chronometre.html">Chronometre</a>&nbsp;<span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a24"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">/***&nbsp;Attributs&nbsp;:&nbsp;***/</span></div></li>
<li><div class="src-line"><a name="a25"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">private&nbsp;</span><span class="src-var">$_temps&nbsp;</span>=&nbsp;<span class="src-key">array</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a26"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a27"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**&nbsp;Constructeur&nbsp;:&nbsp;**/</span></div></li>
<li><div class="src-line"><a name="a28"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">public&nbsp;</span><span class="src-key">function&nbsp;</span><a href="../Framework/Chronometre.html#method__construct">__construct</a><span class="src-sym">(</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a29"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Framework/Chronometre.html#methodsetTemps">setTemps</a><span class="src-sym">(</span><span class="src-key">array</span><span class="src-sym">(</span><span class="src-str">'depart'&nbsp;</span>=&gt;&nbsp;<a href="http://www.php.net/microtime">microtime</a><span class="src-sym">(</span><span class="src-sym">)))</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a30"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a31"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a32"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**&nbsp;Accesseurs&nbsp;:</span></div></li>
<li><div class="src-line"><a name="a33"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*</span></div></li>
<li><div class="src-line"><a name="a34"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@param&nbsp;</span><span class="src-doc-type">string&nbsp;</span><span class="src-doc-var">$cle&nbsp;</span><span class="src-doc">la&nbsp;cle&nbsp;associée&nbsp;à&nbsp;un&nbsp;chronomètre&nbsp;particulier</span></div></li>
<li><div class="src-line"><a name="a35"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*</span></div></li>
<li><div class="src-line"><a name="a36"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@return&nbsp;</span><span class="src-doc-type">int&nbsp;</span><span class="src-doc">le&nbsp;temps&nbsp;écoulé</span></div></li>
<li><div class="src-line"><a name="a37"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a38"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">public&nbsp;</span><span class="src-key">function&nbsp;</span><a href="../Framework/Chronometre.html#methodgetTemps">getTemps</a><span class="src-sym">(</span><span class="src-var">$cle&nbsp;</span>=&nbsp;<span class="src-id">null</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a39"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$temps&nbsp;</span>=&nbsp;<span class="src-str">''</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a40"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-sym">!</span><a href="http://www.php.net/is_null">is_null</a><span class="src-sym">(</span><span class="src-var">$cle</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a41"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$temps&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">_temps</span><span class="src-sym">[</span><span class="src-var">$cle</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a42"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}&nbsp;</span><span class="src-key">else&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a43"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$temps&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">_temps</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a44"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a45"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$temps</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a46"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a47"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a48"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**&nbsp;Setteur&nbsp;pour&nbsp;la&nbsp;variable&nbsp;temps</span></div></li>
<li><div class="src-line"><a name="a49"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*</span></div></li>
<li><div class="src-line"><a name="a50"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@param&nbsp;</span><span class="src-doc-type">array()&nbsp;</span><span class="src-doc-var">$moment&nbsp;</span><span class="src-doc">ajoute&nbsp;des&nbsp;points&nbsp;de&nbsp;chronométrage&nbsp;au&nbsp;tableau&nbsp;_temps</span></div></li>
<li><div class="src-line"><a name="a51"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*</span></div></li>
<li><div class="src-line"><a name="a52"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@return&nbsp;</span><span class="src-doc-type">null&nbsp;</span></div></li>
<li><div class="src-line"><a name="a53"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a54"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">public&nbsp;</span><span class="src-key">function&nbsp;</span><a href="../Framework/Chronometre.html#methodsetTemps">setTemps</a><span class="src-sym">(</span><span class="src-var">$moment&nbsp;</span>=&nbsp;<span class="src-key">array&nbsp;</span><span class="src-sym">(</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a55"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="http://www.php.net/array_push">array_push</a><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">_temps</span><span class="src-sym">,&nbsp;</span><span class="src-var">$moment</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a56"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a57"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a58"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">/***&nbsp;Méthodes&nbsp;:&nbsp;***/</span></div></li>
<li><div class="src-line"><a name="a59"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a60"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**&nbsp;Méthode&nbsp;afficherChrono()&nbsp;-</span></div></li>
<li><div class="src-line"><a name="a61"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Permet&nbsp;d'afficher&nbsp;les&nbsp;temps&nbsp;d'éxécution&nbsp;de&nbsp;différentes&nbsp;parties&nbsp;d'un&nbsp;script.</span></div></li>
<li><div class="src-line"><a name="a62"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;*</span></div></li>
<li><div class="src-line"><a name="a63"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Cette&nbsp;fonction&nbsp;permet&nbsp;d'afficher&nbsp;un&nbsp;ensemble&nbsp;de</span></div></li>
<li><div class="src-line"><a name="a64"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;mesure&nbsp;de&nbsp;temps&nbsp;prises&nbsp;à&nbsp;différents&nbsp;endroits&nbsp;d'un&nbsp;script.</span></div></li>
<li><div class="src-line"><a name="a65"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Ces&nbsp;mesures&nbsp;sont&nbsp;affichées&nbsp;au&nbsp;sein&nbsp;d'un&nbsp;tableau&nbsp;XHTML</span></div></li>
<li><div class="src-line"><a name="a66"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;dont&nbsp;on&nbsp;peut&nbsp;controler&nbsp;l'indentation&nbsp;des&nbsp;balises.</span></div></li>
<li><div class="src-line"><a name="a67"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Pour&nbsp;un&nbsp;site&nbsp;en&nbsp;production,&nbsp;il&nbsp;suffit&nbsp;d'ajouter&nbsp;un&nbsp;style</span></div></li>
<li><div class="src-line"><a name="a68"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;#chrono&nbsp;{display:none;}&nbsp;dans&nbsp;la&nbsp;css.&nbsp;De&nbsp;cette&nbsp;façon,</span></div></li>
<li><div class="src-line"><a name="a69"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;le&nbsp;tableau&nbsp;ne&nbsp;s'affichera&nbsp;pas.&nbsp;Le&nbsp;webmaster&nbsp;lui&nbsp;pourra</span></div></li>
<li><div class="src-line"><a name="a70"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;rajouter&nbsp;sa&nbsp;propre&nbsp;feuille&nbsp;de&nbsp;style&nbsp;affichant&nbsp;le&nbsp;tableau.</span></div></li>
<li><div class="src-line"><a name="a71"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Le&nbsp;développeur&nbsp;initial&nbsp;de&nbsp;cette&nbsp;fonction&nbsp;est&nbsp;Loic&nbsp;d'Anterroches.</span></div></li>
<li><div class="src-line"><a name="a72"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Elle&nbsp;a&nbsp;été&nbsp;modifiée&nbsp;par&nbsp;Jean-Pascal&nbsp;Milcent.</span></div></li>
<li><div class="src-line"><a name="a73"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Elle&nbsp;utilise&nbsp;une&nbsp;variable&nbsp;gobale&nbsp;:&nbsp;$_CHRONO_</span></div></li>
<li><div class="src-line"><a name="a74"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;*</span></div></li>
<li><div class="src-line"><a name="a75"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@author</span><span class="src-doc">&nbsp;&nbsp;&nbsp;Loic&nbsp;d'Anterroches</span></div></li>
<li><div class="src-line"><a name="a76"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@author</span><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Jean-Pascal&nbsp;MILCENT&nbsp;&lt;jpm@tela-botanica.org&gt;</span></div></li>
<li><div class="src-line"><a name="a77"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;*</span></div></li>
<li><div class="src-line"><a name="a78"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@param&nbsp;</span><span class="src-doc">&nbsp;&nbsp;&nbsp;</span><span class="src-doc-type">int&nbsp;</span><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="src-doc-var">$indentation_origine&nbsp;</span><span class="src-doc">l'indentation&nbsp;de&nbsp;base.</span></div></li>
<li><div class="src-line"><a name="a79"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@param&nbsp;</span><span class="src-doc">&nbsp;&nbsp;&nbsp;</span><span class="src-doc-type">int&nbsp;</span><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="src-doc-var">$indentation&nbsp;</span><span class="src-doc">le&nbsp;pas&nbsp;d'indentation.</span></div></li>
<li><div class="src-line"><a name="a80"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@return&nbsp;</span><span class="src-doc">&nbsp;&nbsp;</span><span class="src-doc-type">string&nbsp;</span><span class="src-doc">&nbsp;la&nbsp;chaine&nbsp;XHTML&nbsp;de&nbsp;mesure&nbsp;des&nbsp;temps.</span></div></li>
<li><div class="src-line"><a name="a81"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a82"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">public&nbsp;</span><span class="src-key">function&nbsp;</span><a href="../Framework/Chronometre.html#methodafficherChrono">afficherChrono</a><span class="src-sym">(</span><span class="src-var">$indentation_origine&nbsp;</span>=&nbsp;<span class="src-num">8</span><span class="src-sym">,&nbsp;</span><span class="src-var">$indentation&nbsp;</span>=&nbsp;<span class="src-num">4</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a83"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;Création&nbsp;du&nbsp;chrono&nbsp;de&nbsp;fin</span></div></li>
<li><div class="src-line"><a name="a84"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'_SCRIPT_'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'chrono'</span><span class="src-sym">]</span><span class="src-sym">-&gt;</span><span class="src-id">setTemps</span><span class="src-sym">(</span><span class="src-key">array&nbsp;</span><span class="src-sym">(</span></div></li>
<li><div class="src-line"><a name="a85"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-str">'fin'&nbsp;</span>=&gt;&nbsp;<a href="http://www.php.net/microtime">microtime</a><span class="src-sym">(</span><span class="src-sym">)</span></div></li>
<li><div class="src-line"><a name="a86"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">))</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a87"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a88"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;Début&nbsp;création&nbsp;de&nbsp;l'affichage</span></div></li>
<li><div class="src-line"><a name="a89"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$sortie&nbsp;</span>=&nbsp;<a href="http://www.php.net/str_repeat">str_repeat</a><span class="src-sym">(</span><span class="src-str">'&nbsp;'</span><span class="src-sym">,&nbsp;</span><span class="src-var">$indentation_origine</span><span class="src-sym">)&nbsp;</span>.</div></li>
<li><div class="src-line"><a name="a90"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-str">'&lt;table&nbsp;id=&quot;chrono&quot;&nbsp;lang=&quot;fr&quot;&nbsp;summary=&quot;Résultat&nbsp;du</span></div></li>
<li><div class="src-line"><a name="a91"></a><span class="src-str">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;chronométrage&nbsp;du&nbsp;programme&nbsp;affichant&nbsp;la&nbsp;page&nbsp;actuelle.&quot;&gt;'&nbsp;</span>.&nbsp;<span class="src-str">&quot;\n&quot;</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a92"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$sortie&nbsp;</span>.=&nbsp;<a href="http://www.php.net/str_repeat">str_repeat</a><span class="src-sym">(</span><span class="src-str">'&nbsp;'</span><span class="src-sym">,&nbsp;</span><span class="src-sym">(</span><span class="src-var">$indentation_origine&nbsp;</span>+&nbsp;<span class="src-sym">(</span><span class="src-var">$indentation&nbsp;</span>*&nbsp;<span class="src-num">1</span><span class="src-sym">)))&nbsp;</span>.</div></li>
<li><div class="src-line"><a name="a93"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-str">'&lt;caption&gt;Chronométrage&lt;/caption&gt;'&nbsp;</span>.&nbsp;<span class="src-str">&quot;\n&quot;</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a94"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$sortie&nbsp;</span>.=&nbsp;<a href="http://www.php.net/str_repeat">str_repeat</a><span class="src-sym">(</span><span class="src-str">'&nbsp;'</span><span class="src-sym">,&nbsp;</span><span class="src-sym">(</span><span class="src-var">$indentation_origine&nbsp;</span>+&nbsp;<span class="src-sym">(</span><span class="src-var">$indentation&nbsp;</span>*&nbsp;<span class="src-num">1</span><span class="src-sym">)))&nbsp;</span>.</div></li>
<li><div class="src-line"><a name="a95"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-str">'&lt;thead&gt;'&nbsp;</span>.&nbsp;<span class="src-str">&quot;\n&quot;</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a96"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$sortie&nbsp;</span>.=&nbsp;<a href="http://www.php.net/str_repeat">str_repeat</a><span class="src-sym">(</span><span class="src-str">'&nbsp;'</span><span class="src-sym">,&nbsp;</span><span class="src-sym">(</span><span class="src-var">$indentation_origine&nbsp;</span>+&nbsp;<span class="src-sym">(</span><span class="src-var">$indentation&nbsp;</span>*&nbsp;<span class="src-num">2</span><span class="src-sym">)))&nbsp;</span>.</div></li>
<li><div class="src-line"><a name="a97"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-str">'&lt;tr&gt;&lt;th&gt;Action&lt;/th&gt;&lt;th&gt;Temps&nbsp;écoulé&nbsp;(en&nbsp;s.)&lt;/th&gt;</span></div></li>
<li><div class="src-line"><a name="a98"></a><span class="src-str">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;th&gt;Cumul&nbsp;du&nbsp;temps&nbsp;écoulé&nbsp;(en&nbsp;s.)&lt;/th&gt;&lt;/tr&gt;'&nbsp;</span>.&nbsp;<span class="src-str">&quot;\n&quot;</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a99"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$sortie&nbsp;</span>.=&nbsp;<a href="http://www.php.net/str_repeat">str_repeat</a><span class="src-sym">(</span><span class="src-str">'&nbsp;'</span><span class="src-sym">,&nbsp;</span><span class="src-sym">(</span><span class="src-var">$indentation_origine&nbsp;</span>+&nbsp;<span class="src-sym">(</span><span class="src-var">$indentation&nbsp;</span>*&nbsp;<span class="src-num">1</span><span class="src-sym">)))&nbsp;</span>.</div></li>
<li><div class="src-line"><a name="a100"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-str">'&lt;/thead&gt;'&nbsp;</span>.&nbsp;<span class="src-str">&quot;\n&quot;</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a101"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a102"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$tbody&nbsp;</span>=&nbsp;<a href="http://www.php.net/str_repeat">str_repeat</a><span class="src-sym">(</span><span class="src-str">'&nbsp;'</span><span class="src-sym">,&nbsp;</span><span class="src-sym">(</span><span class="src-var">$indentation_origine&nbsp;</span>+&nbsp;<span class="src-sym">(</span><span class="src-var">$indentation&nbsp;</span>*&nbsp;<span class="src-num">1</span><span class="src-sym">)))&nbsp;</span>.</div></li>
<li><div class="src-line"><a name="a103"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-str">'&lt;tbody&gt;'&nbsp;</span>.&nbsp;<span class="src-str">&quot;\n&quot;</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a104"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a105"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$total_tps_ecoule&nbsp;</span>=&nbsp;<span class="src-num">0</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a106"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a107"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;Récupération&nbsp;de&nbsp;la&nbsp;premiére&nbsp;mesure</span></div></li>
<li><div class="src-line"><a name="a108"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$tab_depart&nbsp;</span>=&nbsp;<span class="src-sym">&amp;&nbsp;</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Framework/Chronometre.html#methodgetTemps">getTemps</a><span class="src-sym">(</span><span class="src-num">0</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a109"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;list&nbsp;<span class="src-sym">(</span><span class="src-var">$usec</span><span class="src-sym">,&nbsp;</span><span class="src-var">$sec</span><span class="src-sym">)&nbsp;</span>=&nbsp;<a href="http://www.php.net/explode">explode</a><span class="src-sym">(</span><span class="src-str">'&nbsp;'</span><span class="src-sym">,&nbsp;</span><span class="src-var">$tab_depart</span><span class="src-sym">[</span><span class="src-str">'depart'</span><span class="src-sym">]</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a110"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a111"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;Ce&nbsp;temps&nbsp;correspond&nbsp;à&nbsp;tps_fin</span></div></li>
<li><div class="src-line"><a name="a112"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$tps_debut&nbsp;</span>=&nbsp;<span class="src-sym">(</span>(float)&nbsp;<span class="src-var">$usec&nbsp;</span>+&nbsp;(float)&nbsp;<span class="src-var">$sec</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a113"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a114"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">foreach&nbsp;</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Framework/Chronometre.html#methodgetTemps">getTemps</a><span class="src-sym">(</span><span class="src-sym">)&nbsp;</span><span class="src-key">as&nbsp;</span><span class="src-var">$tab_temps</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a115"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">foreach&nbsp;</span><span class="src-sym">(</span><span class="src-var">$tab_temps&nbsp;</span><span class="src-key">as&nbsp;</span><span class="src-var">$cle&nbsp;</span>=&gt;&nbsp;<span class="src-var">$valeur</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a116"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;list&nbsp;<span class="src-sym">(</span><span class="src-var">$usec</span><span class="src-sym">,&nbsp;</span><span class="src-var">$sec</span><span class="src-sym">)&nbsp;</span>=&nbsp;<a href="http://www.php.net/explode">explode</a><span class="src-sym">(</span><span class="src-str">'&nbsp;'</span><span class="src-sym">,&nbsp;</span><span class="src-var">$valeur</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a117"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$tps_fin&nbsp;</span>=&nbsp;<span class="src-sym">(</span>(float)&nbsp;<span class="src-var">$usec&nbsp;</span>+&nbsp;(float)&nbsp;<span class="src-var">$sec</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a118"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a119"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$tps_ecoule&nbsp;</span>=&nbsp;<a href="http://www.php.net/abs">abs</a><span class="src-sym">(</span><span class="src-var">$tps_fin&nbsp;</span>-&nbsp;<span class="src-var">$tps_debut</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a120"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$total_tps_ecoule&nbsp;</span>+=&nbsp;<span class="src-var">$tps_ecoule</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a121"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a122"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$tbody&nbsp;</span>.=&nbsp;<a href="http://www.php.net/str_repeat">str_repeat</a><span class="src-sym">(</span><span class="src-str">'&nbsp;'</span><span class="src-sym">,</span></div></li>
<li><div class="src-line"><a name="a123"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">(</span><span class="src-var">$indentation_origine&nbsp;</span>+&nbsp;<span class="src-sym">(</span><span class="src-var">$indentation&nbsp;</span>*&nbsp;<span class="src-num">2</span><span class="src-sym">)))&nbsp;</span>.</div></li>
<li><div class="src-line"><a name="a124"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-str">'&lt;tr&gt;'&nbsp;</span>.</div></li>
<li><div class="src-line"><a name="a125"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-str">'&lt;th&gt;'&nbsp;</span>.&nbsp;<span class="src-var">$cle&nbsp;</span>.&nbsp;<span class="src-str">'&lt;/th&gt;'&nbsp;</span>.</div></li>
<li><div class="src-line"><a name="a126"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-str">'&lt;td&gt;'&nbsp;</span>.&nbsp;<a href="http://www.php.net/number_format">number_format</a><span class="src-sym">(</span><span class="src-var">$tps_ecoule</span><span class="src-sym">,&nbsp;</span><span class="src-num">3</span><span class="src-sym">,&nbsp;</span><span class="src-str">','</span><span class="src-sym">,&nbsp;</span><span class="src-str">'&nbsp;'</span><span class="src-sym">)&nbsp;</span>.&nbsp;<span class="src-str">'&lt;/td&gt;'&nbsp;</span>.</div></li>
<li><div class="src-line"><a name="a127"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-str">'&lt;td&gt;'&nbsp;</span>.&nbsp;<a href="http://www.php.net/number_format">number_format</a><span class="src-sym">(</span><span class="src-var">$total_tps_ecoule</span><span class="src-sym">,&nbsp;</span><span class="src-num">3</span><span class="src-sym">,&nbsp;</span><span class="src-str">','</span><span class="src-sym">,&nbsp;</span><span class="src-str">'&nbsp;'</span><span class="src-sym">)&nbsp;</span>.&nbsp;<span class="src-str">'&lt;/td&gt;'&nbsp;</span>.</div></li>
<li><div class="src-line"><a name="a128"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-str">'&lt;/tr&gt;'&nbsp;</span>.&nbsp;<span class="src-str">&quot;\n&quot;</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a129"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$tps_debut&nbsp;</span>=&nbsp;<span class="src-var">$tps_fin</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a130"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a131"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a132"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$tbody&nbsp;</span>.=&nbsp;<a href="http://www.php.net/str_repeat">str_repeat</a><span class="src-sym">(</span><span class="src-str">'&nbsp;'</span><span class="src-sym">,&nbsp;</span><span class="src-sym">(</span><span class="src-var">$indentation_origine&nbsp;</span>+&nbsp;<span class="src-sym">(</span><span class="src-var">$indentation&nbsp;</span>*&nbsp;<span class="src-num">1</span><span class="src-sym">)))&nbsp;</span>.</div></li>
<li><div class="src-line"><a name="a133"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-str">'&lt;/tbody&gt;'&nbsp;</span>.&nbsp;<span class="src-str">&quot;\n&quot;</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a134"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a135"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$sortie&nbsp;</span>.=&nbsp;<a href="http://www.php.net/str_repeat">str_repeat</a><span class="src-sym">(</span><span class="src-str">'&nbsp;'</span><span class="src-sym">,&nbsp;</span><span class="src-sym">(</span><span class="src-var">$indentation_origine&nbsp;</span>+&nbsp;<span class="src-sym">(</span><span class="src-var">$indentation&nbsp;</span>*&nbsp;<span class="src-num">1</span><span class="src-sym">)))&nbsp;</span>.</div></li>
<li><div class="src-line"><a name="a136"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-str">'&lt;tfoot&gt;'&nbsp;</span>.&nbsp;<span class="src-str">&quot;\n&quot;</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a137"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$sortie&nbsp;</span>.=&nbsp;<a href="http://www.php.net/str_repeat">str_repeat</a><span class="src-sym">(</span><span class="src-str">'&nbsp;'</span><span class="src-sym">,&nbsp;</span><span class="src-sym">(</span><span class="src-var">$indentation_origine&nbsp;</span>+&nbsp;<span class="src-sym">(</span><span class="src-var">$indentation&nbsp;</span>*&nbsp;<span class="src-num">2</span><span class="src-sym">)))&nbsp;</span>.</div></li>
<li><div class="src-line"><a name="a138"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-str">'&lt;tr&gt;'&nbsp;</span>.</div></li>
<li><div class="src-line"><a name="a139"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-str">'&lt;th&gt;'&nbsp;</span>.&nbsp;<span class="src-str">'Total&nbsp;du&nbsp;temps&nbsp;écoulé&nbsp;(en&nbsp;s.)'&nbsp;</span>.&nbsp;<span class="src-str">'&lt;/th&gt;'&nbsp;</span>.</div></li>
<li><div class="src-line"><a name="a140"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-str">'&lt;td&nbsp;colspan=&quot;2&quot;&gt;'&nbsp;</span>.</div></li>
<li><div class="src-line"><a name="a141"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="http://www.php.net/number_format">number_format</a><span class="src-sym">(</span><span class="src-var">$total_tps_ecoule</span><span class="src-sym">,&nbsp;</span><span class="src-num">3</span><span class="src-sym">,&nbsp;</span><span class="src-str">','</span><span class="src-sym">,&nbsp;</span><span class="src-str">'&nbsp;'</span><span class="src-sym">)&nbsp;</span>.&nbsp;<span class="src-str">'&lt;/td&gt;'&nbsp;</span>.</div></li>
<li><div class="src-line"><a name="a142"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-str">'&lt;/tr&gt;'&nbsp;</span>.&nbsp;<span class="src-str">&quot;\n&quot;</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a143"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$sortie&nbsp;</span>.=&nbsp;<a href="http://www.php.net/str_repeat">str_repeat</a><span class="src-sym">(</span><span class="src-str">'&nbsp;'</span><span class="src-sym">,&nbsp;</span><span class="src-sym">(</span><span class="src-var">$indentation_origine&nbsp;</span>+&nbsp;<span class="src-sym">(</span><span class="src-var">$indentation&nbsp;</span>*&nbsp;<span class="src-num">1</span><span class="src-sym">)))&nbsp;</span>.</div></li>
<li><div class="src-line"><a name="a144"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-str">'&lt;/tfoot&gt;'&nbsp;</span>.&nbsp;<span class="src-str">&quot;\n&quot;</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a145"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$sortie&nbsp;</span>.=&nbsp;<span class="src-var">$tbody</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a146"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$sortie&nbsp;</span>.=&nbsp;<a href="http://www.php.net/str_repeat">str_repeat</a><span class="src-sym">(</span><span class="src-str">'&nbsp;'</span><span class="src-sym">,&nbsp;</span><span class="src-var">$indentation_origine</span><span class="src-sym">)&nbsp;</span>.</div></li>
<li><div class="src-line"><a name="a147"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-str">'&lt;/table&gt;'&nbsp;</span>.&nbsp;<span class="src-str">&quot;\n&quot;</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a148"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a149"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$sortie</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a150"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a151"></a><span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a152"></a><span class="src-php">?&gt;</span></div></li>
</ol>
</div>
<div class="credit">
<hr />
Documentation generated on Thu, 04 Mar 2010 19:27:29 +0100 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.3</a>
</div>
</td></tr></table>
</td>
</tr>
</table>
 
</body>
</html>
/tags/v0.3-aleaume/doc/HTMLSmartyConverter/__filesource/fsource_Framework__Config.php.html
New file
0,0 → 1,322
<html>
<head>
<title>File Source for Config.php</title>
<meta http-equiv='Content-Type' content='text/html; charset=UTF-8'/>
<link rel="stylesheet" type="text/css" href="../media/style.css">
</head>
<body>
 
<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%">
<tr>
<td class="header_top">Framework</td>
</tr>
<tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr>
<tr>
<td class="header_menu">
[ <a href="../classtrees_Framework.html" class="menu">class tree: Framework</a> ]
[ <a href="../elementindex_Framework.html" class="menu">index: Framework</a> ]
[ <a href="../elementindex.html" class="menu">all elements</a> ]
</td>
</tr>
<tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr>
</table>
 
<table width="100%" border="0" cellpadding="0" cellspacing="0">
<tr valign="top">
<td width="200" class="menu">
<b>Packages:</b><br />
<a href="../li_Framework.html">Framework</a><br />
<br /><br />
</td>
<td>
<table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top">
 
<h1 align="center">Source for file Config.php</h1>
<p>Documentation is available at <a href="../Framework/_Config.php.html">Config.php</a></p>
<div class="src-code">
<ol><li><div class="src-line"><a name="a1"></a><span class="src-php">&lt;?php</span></div></li>
<li><div class="src-line"><a name="a2"></a><span class="src-comm">//&nbsp;declare(encoding='UTF-8');</span></div></li>
<li><div class="src-line"><a name="a3"></a><span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a4"></a><span class="src-doc">&nbsp;*&nbsp;Config&nbsp;permet&nbsp;de&nbsp;charger&nbsp;automatiquement&nbsp;les&nbsp;fichiers&nbsp;ini&nbsp;du&nbsp;Framework&nbsp;et&nbsp;de&nbsp;l'application.</span></div></li>
<li><div class="src-line"><a name="a5"></a><span class="src-doc">&nbsp;*&nbsp;Elle&nbsp;offre&nbsp;l'accès&nbsp;en&nbsp;lecture&nbsp;seule&nbsp;aux&nbsp;paramètres&nbsp;de&nbsp;config.</span></div></li>
<li><div class="src-line"><a name="a6"></a><span class="src-doc">&nbsp;*&nbsp;C'est&nbsp;une&nbsp;Singleton.</span></div></li>
<li><div class="src-line"><a name="a7"></a><span class="src-doc">&nbsp;*</span></div></li>
<li><div class="src-line"><a name="a8"></a><span class="src-doc">&nbsp;*&nbsp;PHP&nbsp;Version&nbsp;5</span></div></li>
<li><div class="src-line"><a name="a9"></a><span class="src-doc">&nbsp;*</span></div></li>
<li><div class="src-line"><a name="a10"></a><span class="src-doc">&nbsp;*&nbsp;</span><span class="src-doc-coretag">@category</span><span class="src-doc">&nbsp;&nbsp;PHP</span></div></li>
<li><div class="src-line"><a name="a11"></a><span class="src-doc">&nbsp;*&nbsp;</span><span class="src-doc-coretag">@package</span><span class="src-doc">&nbsp;&nbsp;&nbsp;Framework</span></div></li>
<li><div class="src-line"><a name="a12"></a><span class="src-doc">&nbsp;*&nbsp;</span><span class="src-doc-coretag">@author</span><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;Jean-Pascal&nbsp;MILCENT&nbsp;&lt;jpm@tela-botanica.org&gt;</span></div></li>
<li><div class="src-line"><a name="a13"></a><span class="src-doc">&nbsp;*&nbsp;</span><span class="src-doc-coretag">@copyright</span><span class="src-doc">&nbsp;2009&nbsp;Tela-Botanica</span></div></li>
<li><div class="src-line"><a name="a14"></a><span class="src-doc">&nbsp;*&nbsp;</span><span class="src-doc-coretag">@license</span><span class="src-doc">&nbsp;&nbsp;&nbsp;GPL-v3&nbsp;et&nbsp;CECILL-v2</span></div></li>
<li><div class="src-line"><a name="a15"></a><span class="src-doc">&nbsp;*&nbsp;</span><span class="src-doc-coretag">@version</span><span class="src-doc">&nbsp;&nbsp;&nbsp;SVN:&nbsp;&lt;svn_id&gt;</span></div></li>
<li><div class="src-line"><a name="a16"></a><span class="src-doc">&nbsp;*&nbsp;</span><span class="src-doc-coretag">@link</span><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;/doc/framework/</span></div></li>
<li><div class="src-line"><a name="a17"></a><span class="src-doc">&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a18"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a19"></a><span class="src-key">class&nbsp;</span><a href="../Framework/Config.html">Config</a>&nbsp;<span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a20"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a21"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a22"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;instance&nbsp;de&nbsp;la&nbsp;classe&nbsp;pointant&nbsp;sur&nbsp;elle&nbsp;même&nbsp;(pour&nbsp;le&nbsp;pattern&nbsp;singleton)</span></div></li>
<li><div class="src-line"><a name="a23"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a24"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">private&nbsp;</span><span class="src-key">static&nbsp;</span><span class="src-var">$instance&nbsp;</span>=&nbsp;<span class="src-id">null</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a25"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a26"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a27"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;paramètres&nbsp;de&nbsp;configuration</span></div></li>
<li><div class="src-line"><a name="a28"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a29"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">private&nbsp;</span><span class="src-key">static&nbsp;</span><span class="src-var">$parametres&nbsp;</span>=&nbsp;<span class="src-key">array</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a30"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a31"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a32"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Constructeur&nbsp;vide</span></div></li>
<li><div class="src-line"><a name="a33"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a34"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">private&nbsp;</span><span class="src-key">function&nbsp;</span><span class="src-id">__construct</span><span class="src-sym">(</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a35"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;Définition&nbsp;de&nbsp;paramètres&nbsp;avant&nbsp;chargement&nbsp;du&nbsp;config.ini</span></div></li>
<li><div class="src-line"><a name="a36"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-id">self</span><span class="src-sym">::</span><span class="src-var">$parametres&nbsp;</span>=&nbsp;<span class="src-key">array</span><span class="src-sym">(</span></div></li>
<li><div class="src-line"><a name="a37"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-str">'fw_fichier_config'&nbsp;</span>=&gt;&nbsp;<span class="src-str">'config%s.ini'</span><span class="src-sym">,</span></div></li>
<li><div class="src-line"><a name="a38"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-str">'fw_chemin'&nbsp;</span>=&gt;&nbsp;<span class="src-id">dirname</span><span class="src-sym">(</span>__FILE__<span class="src-sym">)</span>.<span class="src-id"><a href="../Framework/_autoload.inc.php.html#defineDS">DS</a></span></div></li>
<li><div class="src-line"><a name="a39"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a40"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a41"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;Chargement&nbsp;du&nbsp;fichier&nbsp;config.ini&nbsp;du&nbsp;Framework</span></div></li>
<li><div class="src-line"><a name="a42"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$existe&nbsp;</span>=&nbsp;<span class="src-id">self</span><span class="src-sym">::</span><span class="src-id">parserFichierIni</span><span class="src-sym">(</span><span class="src-id">self</span><span class="src-sym">::</span><span class="src-var">$parametres</span><span class="src-sym">[</span><span class="src-str">'fw_chemin'</span><span class="src-sym">]</span>.<span class="src-id">sprintf</span><span class="src-sym">(</span><span class="src-id">self</span><span class="src-sym">::</span><span class="src-var">$parametres</span><span class="src-sym">[</span><span class="src-str">'fw_fichier_config'</span><span class="src-sym">]</span><span class="src-sym">,&nbsp;</span><span class="src-str">''</span><span class="src-sym">))</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a43"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$existe&nbsp;</span>===&nbsp;<span class="src-id">false</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a44"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="http://www.php.net/trigger_error">trigger_error</a><span class="src-sym">(</span><span class="src-str">&quot;Veuillez&nbsp;configurer&nbsp;le&nbsp;Framework&nbsp;en&nbsp;renommant&nbsp;le&nbsp;fichier&nbsp;config.defaut.ini&nbsp;en&nbsp;config.ini.&quot;</span><span class="src-sym">,&nbsp;</span><span class="src-id">E_USER_ERROR</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a45"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a46"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a47"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;Chargement&nbsp;du&nbsp;fichier&nbsp;config.ini&nbsp;par&nbsp;défaut&nbsp;de&nbsp;l'application</span></div></li>
<li><div class="src-line"><a name="a48"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$chemin_config_defaut_appli&nbsp;</span>=&nbsp;<span class="src-id">self</span><span class="src-sym">::</span><span class="src-var">$parametres</span><span class="src-sym">[</span><span class="src-str">'chemin_configurations'</span><span class="src-sym">]</span>.<span class="src-id">sprintf</span><span class="src-sym">(</span><span class="src-id">self</span><span class="src-sym">::</span><span class="src-var">$parametres</span><span class="src-sym">[</span><span class="src-str">'fw_fichier_config'</span><span class="src-sym">]</span><span class="src-sym">,&nbsp;</span><span class="src-str">''</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a49"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-id">self</span><span class="src-sym">::</span><span class="src-id">parserFichierIni</span><span class="src-sym">(</span><span class="src-var">$chemin_config_defaut_appli</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a50"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a51"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;Chargement&nbsp;des&nbsp;fichiers&nbsp;config.ini&nbsp;contextuels</span></div></li>
<li><div class="src-line"><a name="a52"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-id">PHP_SAPI&nbsp;</span>==&nbsp;<span class="src-str">'cli'</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span><span class="src-comm">//&nbsp;mode&nbsp;console</span></div></li>
<li><div class="src-line"><a name="a53"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">foreach&nbsp;</span><span class="src-sym">(</span><span class="src-var">$_SERVER</span><span class="src-sym">[</span><span class="src-str">'argv'</span><span class="src-sym">]&nbsp;</span><span class="src-key">as&nbsp;</span><span class="src-var">$cle&nbsp;</span>=&gt;&nbsp;<span class="src-var">$valeur</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a54"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$valeur&nbsp;</span>==&nbsp;<span class="src-str">'-contexte'</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a55"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-id">chargerFichierContexte</span><span class="src-sym">(</span><span class="src-var">$_SERVER</span><span class="src-sym">[</span><span class="src-str">'argv'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-sym">(</span><span class="src-var">$cle</span>+<span class="src-num">1</span><span class="src-sym">)</span><span class="src-sym">]</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a56"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">break</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a57"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a58"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a59"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}&nbsp;</span><span class="src-key">else&nbsp;</span><span class="src-sym">{</span><span class="src-comm">//&nbsp;mode&nbsp;web</span></div></li>
<li><div class="src-line"><a name="a60"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;Pour&nbsp;Papyrus</span></div></li>
<li><div class="src-line"><a name="a61"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><a href="http://www.php.net/defined">defined</a><span class="src-sym">(</span><span class="src-str">'PAP_VERSION'</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a62"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-id">self</span><span class="src-sym">::</span><span class="src-id">chargerFichierContexte</span><span class="src-sym">(</span><span class="src-str">'papyrus'</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a63"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a64"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;Via&nbsp;le&nbsp;fichie&nbsp;.ini&nbsp;par&nbsp;défaut&nbsp;de&nbsp;l'appli</span></div></li>
<li><div class="src-line"><a name="a65"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-id"><a href="../Framework/Config.html">Config</a></span><span class="src-sym">::</span><span class="src-id">existeValeur</span><span class="src-sym">(</span><span class="src-str">'info.contexte'</span><span class="src-sym">,&nbsp;</span><span class="src-id">self</span><span class="src-sym">::</span><span class="src-var">$parametres</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a66"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-id">self</span><span class="src-sym">::</span><span class="src-id">chargerFichierContexte</span><span class="src-sym">(</span><span class="src-id"><a href="../Framework/Config.html">Config</a></span><span class="src-sym">::</span><a href="../Framework/Config.html#methodget">get</a><span class="src-sym">(</span><span class="src-str">'info.contexte'</span><span class="src-sym">))</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a67"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a68"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a69"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;Chargement&nbsp;du&nbsp;contexte&nbsp;présent&nbsp;dans&nbsp;le&nbsp;GET</span></div></li>
<li><div class="src-line"><a name="a70"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span>isset<span class="src-sym">(</span><span class="src-var">$_GET</span><span class="src-sym">[</span><span class="src-str">'contexte'</span><span class="src-sym">]</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a71"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-id">self</span><span class="src-sym">::</span><span class="src-id">chargerFichierContexte</span><span class="src-sym">(</span><span class="src-var">$_GET</span><span class="src-sym">[</span><span class="src-str">'contexte'</span><span class="src-sym">]</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a72"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a73"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a74"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;Chargement&nbsp;du&nbsp;contexte&nbsp;présent&nbsp;dans&nbsp;le&nbsp;POST</span></div></li>
<li><div class="src-line"><a name="a75"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span>isset<span class="src-sym">(</span><span class="src-var">$_POST</span><span class="src-sym">[</span><span class="src-str">'contexte'</span><span class="src-sym">]</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a76"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-id">self</span><span class="src-sym">::</span><span class="src-id">chargerFichierContexte</span><span class="src-sym">(</span><span class="src-var">$_POST</span><span class="src-sym">[</span><span class="src-str">'contexte'</span><span class="src-sym">]</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a77"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a78"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a79"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a80"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a81"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a82"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Charge&nbsp;le&nbsp;fichier&nbsp;de&nbsp;config&nbsp;correspondant&nbsp;au&nbsp;contexte</span></div></li>
<li><div class="src-line"><a name="a83"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@param&nbsp;</span><span class="src-doc-type">string&nbsp;</span><span class="src-doc-var">$contexte&nbsp;</span><span class="src-doc">le&nbsp;contexte</span></div></li>
<li><div class="src-line"><a name="a84"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a85"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">private&nbsp;</span><span class="src-key">static&nbsp;</span><span class="src-key">function&nbsp;</span><span class="src-id">chargerFichierContexte</span><span class="src-sym">(</span><span class="src-var">$contexte</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a86"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$chemin_config_appli_contextuel&nbsp;</span>=&nbsp;<span class="src-id">self</span><span class="src-sym">::</span><span class="src-var">$parametres</span><span class="src-sym">[</span><span class="src-str">'chemin_configurations'</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a87"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$chemin_config_appli_contextuel&nbsp;</span>.=&nbsp;<span class="src-id">sprintf</span><span class="src-sym">(</span><span class="src-id">self</span><span class="src-sym">::</span><span class="src-var">$parametres</span><span class="src-sym">[</span><span class="src-str">'fw_fichier_config'</span><span class="src-sym">]</span><span class="src-sym">,&nbsp;</span><span class="src-str">'_'</span>.<span class="src-var">$contexte</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a88"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-id">self</span><span class="src-sym">::</span><span class="src-id">parserFichierIni</span><span class="src-sym">(</span><span class="src-var">$chemin_config_appli_contextuel</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a89"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a90"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a91"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a92"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Parse&nbsp;le&nbsp;fichier&nbsp;ini&nbsp;donné&nbsp;en&nbsp;paramètre</span></div></li>
<li><div class="src-line"><a name="a93"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@param&nbsp;</span><span class="src-doc-type">string&nbsp;</span><span class="src-doc-var">$fichier_ini&nbsp;</span><span class="src-doc">nom&nbsp;du&nbsp;fichier&nbsp;ini&nbsp;à&nbsp;parser</span></div></li>
<li><div class="src-line"><a name="a94"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@return&nbsp;</span><span class="src-doc-type">array&nbsp;</span><span class="src-doc">tableau&nbsp;contenant&nbsp;les&nbsp;paramètres&nbsp;du&nbsp;fichier&nbsp;ini</span></div></li>
<li><div class="src-line"><a name="a95"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a96"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">private&nbsp;</span><span class="src-key">static&nbsp;</span><span class="src-key">function&nbsp;</span><span class="src-id">parserFichierIni</span><span class="src-sym">(</span><span class="src-var">$fichier_ini</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a97"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$retour&nbsp;</span>=&nbsp;<span class="src-id">false</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a98"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><a href="http://www.php.net/file_exists">file_exists</a><span class="src-sym">(</span><span class="src-var">$fichier_ini</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a99"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$ini&nbsp;</span>=&nbsp;<a href="http://www.php.net/parse_ini_file">parse_ini_file</a><span class="src-sym">(</span><span class="src-var">$fichier_ini</span><span class="src-sym">,&nbsp;</span><span class="src-id">true</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a100"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$ini&nbsp;</span>=&nbsp;<span class="src-id">self</span><span class="src-sym">::</span><span class="src-id">analyserTableauIni</span><span class="src-sym">(</span><span class="src-var">$ini</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a101"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-id">self</span><span class="src-sym">::</span><span class="src-id">fusionner</span><span class="src-sym">(</span><span class="src-var">$ini</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a102"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$retour&nbsp;</span>=&nbsp;<span class="src-id">true</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a103"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a104"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$retour</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a105"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a106"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a107"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a108"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;fusionne&nbsp;un&nbsp;tableau&nbsp;de&nbsp;paramètres&nbsp;avec&nbsp;le&nbsp;tableau&nbsp;de&nbsp;paramètres&nbsp;global</span></div></li>
<li><div class="src-line"><a name="a109"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@param&nbsp;</span><span class="src-doc-type">array&nbsp;</span><span class="src-doc-var">$ini&nbsp;</span><span class="src-doc">le&nbsp;tableau&nbsp;à&nbsp;fusionner</span></div></li>
<li><div class="src-line"><a name="a110"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a111"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">private&nbsp;</span><span class="src-key">static&nbsp;</span><span class="src-key">function&nbsp;</span><span class="src-id">fusionner</span><span class="src-sym">(</span><span class="src-key">array&nbsp;</span><span class="src-var">$ini</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a112"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-id">self</span><span class="src-sym">::</span><span class="src-var">$parametres&nbsp;</span>=&nbsp;<span class="src-id">array_merge</span><span class="src-sym">(</span><span class="src-id">self</span><span class="src-sym">::</span><span class="src-var">$parametres</span><span class="src-sym">,&nbsp;</span><span class="src-var">$ini</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a113"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a114"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a115"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a116"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;renvoie&nbsp;la&nbsp;valeur&nbsp;demandé&nbsp;grâce&nbsp;une&nbsp;chaine&nbsp;de&nbsp;paramètres</span></div></li>
<li><div class="src-line"><a name="a117"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@param&nbsp;</span><span class="src-doc-type">string&nbsp;</span><span class="src-doc-var">$param&nbsp;</span><span class="src-doc">la&nbsp;chaine&nbsp;de&nbsp;paramètres</span></div></li>
<li><div class="src-line"><a name="a118"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@param&nbsp;</span><span class="src-doc-type">array&nbsp;</span><span class="src-doc-var">$config&nbsp;</span><span class="src-doc">le&nbsp;tableau&nbsp;de&nbsp;paramètre</span></div></li>
<li><div class="src-line"><a name="a119"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@return&nbsp;</span><span class="src-doc-type">string&nbsp;</span><span class="src-doc">la&nbsp;valeur&nbsp;de&nbsp;la&nbsp;chaine&nbsp;demandée</span></div></li>
<li><div class="src-line"><a name="a120"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a121"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">private&nbsp;</span><span class="src-key">static&nbsp;</span><span class="src-key">function&nbsp;</span><span class="src-id">getValeur</span><span class="src-sym">(</span><span class="src-var">$param</span><span class="src-sym">,&nbsp;</span><span class="src-var">$config</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a122"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$param&nbsp;</span>===&nbsp;<span class="src-id">null</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a123"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-id">null</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a124"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}&nbsp;</span><span class="src-key">else&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a125"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><a href="http://www.php.net/strpos">strpos</a><span class="src-sym">(</span><span class="src-var">$param</span><span class="src-sym">,&nbsp;</span><span class="src-str">'.'</span><span class="src-sym">)&nbsp;</span>!==&nbsp;<span class="src-id">false</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a126"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$pieces&nbsp;</span>=&nbsp;<a href="http://www.php.net/explode">explode</a><span class="src-sym">(</span><span class="src-str">'.'</span><span class="src-sym">,&nbsp;</span><span class="src-var">$param</span><span class="src-sym">,&nbsp;</span><span class="src-num">2</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a127"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><a href="http://www.php.net/strlen">strlen</a><span class="src-sym">(</span><span class="src-var">$pieces</span><span class="src-sym">[</span><span class="src-num">0</span><span class="src-sym">]</span><span class="src-sym">)&nbsp;</span>&amp;&amp;&nbsp;<a href="http://www.php.net/strlen">strlen</a><span class="src-sym">(</span><span class="src-var">$pieces</span><span class="src-sym">[</span><span class="src-num">1</span><span class="src-sym">]</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a128"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span>isset<span class="src-sym">(</span><span class="src-var">$config</span><span class="src-sym">[</span><span class="src-var">$pieces</span><span class="src-sym">[</span><span class="src-num">0</span><span class="src-sym">]]</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a129"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><a href="http://www.php.net/is_array">is_array</a><span class="src-sym">(</span><span class="src-var">$config</span><span class="src-sym">[</span><span class="src-var">$pieces</span><span class="src-sym">[</span><span class="src-num">0</span><span class="src-sym">]]</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a130"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-id">self</span><span class="src-sym">::</span><span class="src-id">getValeur</span><span class="src-sym">(</span><span class="src-var">$pieces</span><span class="src-sym">[</span><span class="src-num">1</span><span class="src-sym">]</span><span class="src-sym">,&nbsp;</span><span class="src-var">$config</span><span class="src-sym">[</span><span class="src-var">$pieces</span><span class="src-sym">[</span><span class="src-num">0</span><span class="src-sym">]]</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a131"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a132"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a133"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a134"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}&nbsp;</span><span class="src-key">else&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a135"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span>isset<span class="src-sym">(</span><span class="src-var">$config</span><span class="src-sym">[</span><span class="src-var">$param</span><span class="src-sym">]</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a136"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$config</span><span class="src-sym">[</span><span class="src-var">$param</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a137"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a138"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a139"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-id">null</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a140"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a141"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a142"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a143"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a144"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Teste&nbsp;si&nbsp;param&nbsp;existe&nbsp;dans&nbsp;le&nbsp;tableau&nbsp;config</span></div></li>
<li><div class="src-line"><a name="a145"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@param&nbsp;</span><span class="src-doc-type">string&nbsp;</span><span class="src-doc-var">$param&nbsp;</span><span class="src-doc">nom&nbsp;du&nbsp;paramètre</span></div></li>
<li><div class="src-line"><a name="a146"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@param&nbsp;</span><span class="src-doc-type">array&nbsp;</span><span class="src-doc">tableau&nbsp;de&nbsp;configuration</span></div></li>
<li><div class="src-line"><a name="a147"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a148"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">private&nbsp;</span><span class="src-key">static&nbsp;</span><span class="src-key">function&nbsp;</span><span class="src-id">existeValeur</span><span class="src-sym">(</span><span class="src-var">$param</span><span class="src-sym">,&nbsp;</span><span class="src-var">$config</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a149"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$retour&nbsp;</span>=&nbsp;<span class="src-id">false</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a150"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-id">self</span><span class="src-sym">::</span><span class="src-id">getValeur</span><span class="src-sym">(</span><span class="src-var">$param</span><span class="src-sym">,&nbsp;</span><span class="src-var">$config</span><span class="src-sym">)&nbsp;</span>!==&nbsp;<span class="src-id">null</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a151"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$retour&nbsp;</span>=&nbsp;<span class="src-id">true</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a152"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a153"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$retour</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a154"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a155"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a156"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a157"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Vérifie&nbsp;si&nbsp;l'instance&nbsp;de&nbsp;classe&nbsp;à&nbsp;été&nbsp;crée,&nbsp;si&nbsp;non&nbsp;la&nbsp;crée</span></div></li>
<li><div class="src-line"><a name="a158"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a159"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">private&nbsp;</span><span class="src-key">static&nbsp;</span><span class="src-key">function&nbsp;</span><span class="src-id">verifierCreationInstance</span><span class="src-sym">(</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a160"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-key">empty</span><span class="src-sym">(</span><span class="src-id">self</span><span class="src-sym">::</span><span class="src-var">$instance</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a161"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-id">self</span><span class="src-sym">::</span><span class="src-var">$instance&nbsp;</span>=&nbsp;<span class="src-key">new&nbsp;</span><span class="src-id">Config</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a162"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a163"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a164"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a165"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a166"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;analyse&nbsp;un&nbsp;tableau&nbsp;de&nbsp;paramètres</span></div></li>
<li><div class="src-line"><a name="a167"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@param&nbsp;</span><span class="src-doc-type">array&nbsp;</span><span class="src-doc-var">$config&nbsp;</span><span class="src-doc">le&nbsp;tableau&nbsp;de&nbsp;paramètres</span></div></li>
<li><div class="src-line"><a name="a168"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@return&nbsp;</span><span class="src-doc-type">array&nbsp;</span><span class="src-doc">le&nbsp;tableau&nbsp;analysé</span></div></li>
<li><div class="src-line"><a name="a169"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a170"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">private&nbsp;</span><span class="src-key">static&nbsp;</span><span class="src-key">function&nbsp;</span><span class="src-id">analyserTableauIni</span><span class="src-sym">(</span><span class="src-var">$config&nbsp;</span>=&nbsp;<span class="src-key">array</span><span class="src-sym">(</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a171"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">foreach&nbsp;</span><span class="src-sym">(</span><span class="src-var">$config&nbsp;</span><span class="src-key">as&nbsp;</span><span class="src-var">$cle&nbsp;</span>=&gt;&nbsp;<span class="src-var">$valeur</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a172"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><a href="http://www.php.net/is_array">is_array</a><span class="src-sym">(</span><span class="src-var">$valeur</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a173"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$config</span><span class="src-sym">[</span><span class="src-var">$cle</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-id">self</span><span class="src-sym">::</span><span class="src-id">analyserTableauIni</span><span class="src-sym">(</span><span class="src-var">$valeur</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a174"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}&nbsp;</span><span class="src-key">else&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a175"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-id">self</span><span class="src-sym">::</span><span class="src-id">evaluerReferences</span><span class="src-sym">(</span><span class="src-var">$config</span><span class="src-sym">,&nbsp;</span><span class="src-var">$cle</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a176"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-id">self</span><span class="src-sym">::</span><span class="src-id">evaluerPhp</span><span class="src-sym">(</span><span class="src-var">$config</span><span class="src-sym">,&nbsp;</span><span class="src-var">$cle</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a177"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-id">self</span><span class="src-sym">::</span><span class="src-id">evaluerCle</span><span class="src-sym">(</span><span class="src-var">$config</span><span class="src-sym">,&nbsp;</span><span class="src-var">$cle</span><span class="src-sym">,&nbsp;</span><span class="src-var">$config</span><span class="src-sym">[</span><span class="src-var">$cle</span><span class="src-sym">]</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a178"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a179"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a180"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$config</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a181"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a182"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a183"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a184"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;dans&nbsp;le&nbsp;cas&nbsp;des&nbsp;chaine&nbsp;de&nbsp;configuration&nbsp;à&nbsp;sous&nbsp;clé&nbsp;(ex.:&nbsp;cle.souscle)</span></div></li>
<li><div class="src-line"><a name="a185"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;evalue&nbsp;les&nbsp;valeurs&nbsp;correspondantes&nbsp;et&nbsp;crée&nbsp;les&nbsp;sous&nbsp;tableaux&nbsp;associés</span></div></li>
<li><div class="src-line"><a name="a186"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@param&nbsp;</span><span class="src-doc-type">array&nbsp;</span><span class="src-doc-var">$config&nbsp;</span><span class="src-doc">tableau&nbsp;de&nbsp;configuration&nbsp;(par&nbsp;référence)</span></div></li>
<li><div class="src-line"><a name="a187"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@param&nbsp;</span><span class="src-doc-type">string&nbsp;</span><span class="src-doc-var">$cle&nbsp;</span><span class="src-doc">la&nbsp;cle&nbsp;dans&nbsp;le&nbsp;tableau</span></div></li>
<li><div class="src-line"><a name="a188"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@param&nbsp;</span><span class="src-doc-type">string&nbsp;</span><span class="src-doc-var">$valeur&nbsp;</span><span class="src-doc">la&nbsp;valeur&nbsp;à&nbsp;affecter</span></div></li>
<li><div class="src-line"><a name="a189"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a190"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">private&nbsp;</span><span class="src-key">static&nbsp;</span><span class="src-key">function&nbsp;</span><span class="src-id">evaluerCle</span><span class="src-sym">(</span><span class="src-sym">&amp;</span><span class="src-var">$config</span><span class="src-sym">,&nbsp;</span><span class="src-var">$cle</span><span class="src-sym">,&nbsp;</span><span class="src-var">$valeur</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a191"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><a href="http://www.php.net/strpos">strpos</a><span class="src-sym">(</span><span class="src-var">$cle</span><span class="src-sym">,&nbsp;</span><span class="src-str">'.'</span><span class="src-sym">)&nbsp;</span>!==&nbsp;<span class="src-id">false</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a192"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;unset<span class="src-sym">(</span><span class="src-var">$config</span><span class="src-sym">[</span><span class="src-var">$cle</span><span class="src-sym">]</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a193"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$pieces&nbsp;</span>=&nbsp;<a href="http://www.php.net/explode">explode</a><span class="src-sym">(</span><span class="src-str">'.'</span><span class="src-sym">,&nbsp;</span><span class="src-var">$cle</span><span class="src-sym">,&nbsp;</span><span class="src-num">2</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a194"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><a href="http://www.php.net/strlen">strlen</a><span class="src-sym">(</span><span class="src-var">$pieces</span><span class="src-sym">[</span><span class="src-num">0</span><span class="src-sym">]</span><span class="src-sym">)&nbsp;</span>&amp;&amp;&nbsp;<a href="http://www.php.net/strlen">strlen</a><span class="src-sym">(</span><span class="src-var">$pieces</span><span class="src-sym">[</span><span class="src-num">1</span><span class="src-sym">]</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a195"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-sym">!</span>isset<span class="src-sym">(</span><span class="src-var">$config</span><span class="src-sym">[</span><span class="src-var">$pieces</span><span class="src-sym">[</span><span class="src-num">0</span><span class="src-sym">]]</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a196"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$pieces</span><span class="src-sym">[</span><span class="src-num">0</span><span class="src-sym">]&nbsp;</span>===&nbsp;<span class="src-str">'0'&nbsp;</span>&amp;&amp;&nbsp;<span class="src-sym">!</span><span class="src-key">empty</span><span class="src-sym">(</span><span class="src-var">$config</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a197"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;convert&nbsp;the&nbsp;current&nbsp;values&nbsp;in&nbsp;$config&nbsp;into&nbsp;an&nbsp;array</span></div></li>
<li><div class="src-line"><a name="a198"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$config&nbsp;</span>=&nbsp;<span class="src-key">array</span><span class="src-sym">(</span><span class="src-var">$pieces</span><span class="src-sym">[</span><span class="src-num">0</span><span class="src-sym">]&nbsp;</span>=&gt;&nbsp;<span class="src-var">$config</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a199"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}&nbsp;</span><span class="src-key">else&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a200"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$config</span><span class="src-sym">[</span><span class="src-var">$pieces</span><span class="src-sym">[</span><span class="src-num">0</span><span class="src-sym">]]&nbsp;</span>=&nbsp;<span class="src-key">array</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a201"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a202"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}&nbsp;</span><span class="src-key">elseif&nbsp;</span><span class="src-sym">(</span><span class="src-sym">!</span><a href="http://www.php.net/is_array">is_array</a><span class="src-sym">(</span><span class="src-var">$config</span><span class="src-sym">[</span><span class="src-var">$pieces</span><span class="src-sym">[</span><span class="src-num">0</span><span class="src-sym">]]</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a203"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;throw&nbsp;<span class="src-key">new&nbsp;</span><span class="src-id">ErrorException</span><span class="src-sym">(</span><span class="src-str">&quot;</span><span class="src-str">Ne&nbsp;peut&nbsp;pas&nbsp;créer&nbsp;de&nbsp;sous-clé&nbsp;pour&nbsp;'{<span class="src-var">$pieces</span><span class="src-sym">[</span><span class="src-num">0</span><span class="src-sym">]</span><span class="src-sym">}</span>'&nbsp;car&nbsp;la&nbsp;clé&nbsp;existe&nbsp;déjà</span><span class="src-str">&quot;</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a204"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a205"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$config</span><span class="src-sym">[</span><span class="src-var">$pieces</span><span class="src-sym">[</span><span class="src-num">0</span><span class="src-sym">]]&nbsp;</span>=&nbsp;<span class="src-id">self</span><span class="src-sym">::</span><span class="src-id">evaluerCle</span><span class="src-sym">(</span><span class="src-var">$config</span><span class="src-sym">[</span><span class="src-var">$pieces</span><span class="src-sym">[</span><span class="src-num">0</span><span class="src-sym">]]</span><span class="src-sym">,&nbsp;</span><span class="src-var">$pieces</span><span class="src-sym">[</span><span class="src-num">1</span><span class="src-sym">]</span><span class="src-sym">,&nbsp;</span><span class="src-var">$valeur</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a206"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}&nbsp;</span><span class="src-key">else&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a207"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;throw&nbsp;<span class="src-key">new&nbsp;</span><span class="src-id">ErrorException</span><span class="src-sym">(</span><span class="src-str">&quot;</span><span class="src-str">Clé&nbsp;invalide&nbsp;'<span class="src-var">$cle</span>'</span><span class="src-str">&quot;</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a208"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a209"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}&nbsp;</span><span class="src-key">else&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a210"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$config</span><span class="src-sym">[</span><span class="src-var">$cle</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-var">$valeur</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a211"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a212"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$config</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a213"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a214"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a215"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a216"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Evalue&nbsp;les&nbsp;valeurs&nbsp;de&nbsp;références&nbsp;à&nbsp;une&nbsp;clé&nbsp;dans&nbsp;le&nbsp;tableau&nbsp;config&nbsp;(cas&nbsp;du&nbsp;ref:cle)</span></div></li>
<li><div class="src-line"><a name="a217"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@param&nbsp;</span><span class="src-doc-type">array&nbsp;</span><span class="src-doc-var">$config&nbsp;</span><span class="src-doc">tableau&nbsp;de&nbsp;configuration</span></div></li>
<li><div class="src-line"><a name="a218"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@param&nbsp;</span><span class="src-doc-type">string&nbsp;</span><span class="src-doc-var">$cle&nbsp;</span><span class="src-doc">la&nbsp;clé&nbsp;dont&nbsp;il&nbsp;faut&nbsp;évaluer&nbsp;les&nbsp;références</span></div></li>
<li><div class="src-line"><a name="a219"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a220"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">private&nbsp;</span><span class="src-key">static&nbsp;</span><span class="src-key">function&nbsp;</span><span class="src-id">evaluerReferences</span><span class="src-sym">(</span><span class="src-sym">&amp;</span><span class="src-var">$config</span><span class="src-sym">,&nbsp;</span><span class="src-var">$cle</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a221"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><a href="http://www.php.net/preg_match_all">preg_match_all</a><span class="src-sym">(</span><span class="src-str">'/{ref:([A-Za-z0-9_-]+)}/'</span><span class="src-sym">,&nbsp;</span><span class="src-var">$config</span><span class="src-sym">[</span><span class="src-var">$cle</span><span class="src-sym">]</span><span class="src-sym">,&nbsp;</span><span class="src-var">$correspondances</span><span class="src-sym">,&nbsp;&nbsp;</span><span class="src-id">PREG_SET_ORDER</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a222"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">foreach&nbsp;</span><span class="src-sym">(</span><span class="src-var">$correspondances&nbsp;</span><span class="src-key">as&nbsp;</span><span class="src-var">$ref</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a223"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$config</span><span class="src-sym">[</span><span class="src-var">$cle</span><span class="src-sym">]&nbsp;</span>=&nbsp;<a href="http://www.php.net/str_replace">str_replace</a><span class="src-sym">(</span><span class="src-var">$ref</span><span class="src-sym">[</span><span class="src-num">0</span><span class="src-sym">]</span><span class="src-sym">,&nbsp;</span><span class="src-id">self</span><span class="src-sym">::</span><span class="src-id">getValeur</span><span class="src-sym">(</span><span class="src-var">$ref</span><span class="src-sym">[</span><span class="src-num">1</span><span class="src-sym">]</span><span class="src-sym">,&nbsp;</span><span class="src-var">$config</span><span class="src-sym">)</span><span class="src-sym">,&nbsp;</span><span class="src-var">$config</span><span class="src-sym">[</span><span class="src-var">$cle</span><span class="src-sym">]</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a224"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a225"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a226"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a227"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a228"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a229"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Evalue&nbsp;le&nbsp;code&nbsp;php&nbsp;contenu&nbsp;dans&nbsp;un&nbsp;clé&nbsp;tu&nbsp;tableau&nbsp;config</span></div></li>
<li><div class="src-line"><a name="a230"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@param&nbsp;</span><span class="src-doc-type">array&nbsp;</span><span class="src-doc-var">$config&nbsp;</span><span class="src-doc">tableau&nbsp;de&nbsp;configuration&nbsp;(par&nbsp;référence)</span></div></li>
<li><div class="src-line"><a name="a231"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@param&nbsp;</span><span class="src-doc-type">string&nbsp;</span><span class="src-doc-var">$cle&nbsp;</span><span class="src-doc">le&nbsp;clé&nbsp;du&nbsp;tableau&nbsp;dont&nbsp;il&nbsp;faut&nbsp;évaluer&nbsp;la&nbsp;valeur</span></div></li>
<li><div class="src-line"><a name="a232"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a233"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">private&nbsp;</span><span class="src-key">static&nbsp;</span><span class="src-key">function&nbsp;</span><span class="src-id">evaluerPhp</span><span class="src-sym">(</span><span class="src-sym">&amp;</span><span class="src-var">$config</span><span class="src-sym">,&nbsp;</span><span class="src-var">$cle</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a234"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><a href="http://www.php.net/preg_match">preg_match</a><span class="src-sym">(</span><span class="src-str">'/^php:(.+)$/'</span><span class="src-sym">,&nbsp;</span><span class="src-var">$config</span><span class="src-sym">[</span><span class="src-var">$cle</span><span class="src-sym">]</span><span class="src-sym">,&nbsp;</span><span class="src-var">$correspondances</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a235"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;eval<span class="src-sym">(</span><span class="src-str">'$config[&quot;'</span>.<span class="src-var">$cle</span>.<span class="src-str">'&quot;]&nbsp;=&nbsp;'</span>.<span class="src-var">$correspondances</span><span class="src-sym">[</span><span class="src-num">1</span><span class="src-sym">]</span>.<span class="src-str">';'</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a236"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a237"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a238"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a239"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a240"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Charge&nbsp;un&nbsp;fichier&nbsp;ini&nbsp;dans&nbsp;le&nbsp;tableau&nbsp;des&nbsp;paramètres&nbsp;de&nbsp;l'appli</span></div></li>
<li><div class="src-line"><a name="a241"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@param&nbsp;</span><span class="src-doc-type">string&nbsp;</span><span class="src-doc-var">$fichier_ini&nbsp;</span><span class="src-doc">le&nbsp;nom&nbsp;du&nbsp;fichier&nbsp;à&nbsp;charger</span></div></li>
<li><div class="src-line"><a name="a242"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@return&nbsp;</span><span class="src-doc-type">array&nbsp;</span><span class="src-doc">le&nbsp;fichier&nbsp;ini&nbsp;parsé</span></div></li>
<li><div class="src-line"><a name="a243"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a244"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">public&nbsp;</span><span class="src-key">static&nbsp;</span><span class="src-key">function&nbsp;</span><a href="../Framework/Config.html#methodcharger">charger</a><span class="src-sym">(</span><span class="src-var">$fichier_ini</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a245"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-id">self</span><span class="src-sym">::</span><span class="src-id">verifierCreationInstance</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a246"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-id">self</span><span class="src-sym">::</span><span class="src-id">parserFichierIni</span><span class="src-sym">(</span><span class="src-var">$fichier_ini</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a247"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a248"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a249"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a250"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Acesseur&nbsp;pour&nbsp;la&nbsp;valeur&nbsp;d'un&nbsp;paramètre</span></div></li>
<li><div class="src-line"><a name="a251"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@param&nbsp;</span><span class="src-doc-type">string&nbsp;</span><span class="src-doc-var">$param&nbsp;</span><span class="src-doc">le&nbsp;nom&nbsp;du&nbsp;paramètre</span></div></li>
<li><div class="src-line"><a name="a252"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@return&nbsp;</span><span class="src-doc-type">string&nbsp;</span><span class="src-doc">la&nbsp;valeur&nbsp;du&nbsp;paramètre</span></div></li>
<li><div class="src-line"><a name="a253"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a254"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">public&nbsp;</span><span class="src-key">static&nbsp;</span><span class="src-key">function&nbsp;</span><a href="../Framework/Config.html#methodget">get</a><span class="src-sym">(</span><span class="src-var">$param&nbsp;</span>=&nbsp;<span class="src-id">null</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a255"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-id">self</span><span class="src-sym">::</span><span class="src-id">verifierCreationInstance</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a256"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-id">self</span><span class="src-sym">::</span><span class="src-id">getValeur</span><span class="src-sym">(</span><span class="src-var">$param</span><span class="src-sym">,&nbsp;</span><span class="src-id">self</span><span class="src-sym">::</span><span class="src-var">$parametres</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a257"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a258"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a259"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a260"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Vérifie&nbsp;si&nbsp;la&nbsp;valeur&nbsp;d'un&nbsp;paramètre&nbsp;existe</span></div></li>
<li><div class="src-line"><a name="a261"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@param&nbsp;</span><span class="src-doc-type">string&nbsp;</span><span class="src-doc-var">$param&nbsp;</span><span class="src-doc">le&nbsp;nom&nbsp;du&nbsp;paramètre</span></div></li>
<li><div class="src-line"><a name="a262"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@return&nbsp;</span><span class="src-doc-type">boolean&nbsp;</span><span class="src-doc">vrai&nbsp;si&nbsp;le&nbsp;paramètre&nbsp;existe,&nbsp;false&nbsp;sinon</span></div></li>
<li><div class="src-line"><a name="a263"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a264"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">public&nbsp;</span><span class="src-key">static&nbsp;</span><span class="src-key">function&nbsp;</span><span class="src-id">existe</span><span class="src-sym">(</span><span class="src-var">$param</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a265"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-id">self</span><span class="src-sym">::</span><span class="src-id">verifierCreationInstance</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a266"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-id">self</span><span class="src-sym">::</span><span class="src-id">existeValeur</span><span class="src-sym">(</span><span class="src-var">$param</span><span class="src-sym">,&nbsp;</span><span class="src-id">self</span><span class="src-sym">::</span><span class="src-var">$parametres</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a267"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a268"></a><span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a269"></a><span class="src-php">?&gt;</span></div></li>
</ol>
</div>
<div class="credit">
<hr />
Documentation generated on Thu, 04 Mar 2010 19:27:30 +0100 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.3</a>
</div>
</td></tr></table>
</td>
</tr>
</table>
 
</body>
</html>
/tags/v0.3-aleaume/doc/HTMLSmartyConverter/__filesource/fsource_Framework__Modele.php.html
New file
0,0 → 1,393
<html>
<head>
<title>File Source for Modele.php</title>
<meta http-equiv='Content-Type' content='text/html; charset=UTF-8'/>
<link rel="stylesheet" type="text/css" href="../media/style.css">
</head>
<body>
 
<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%">
<tr>
<td class="header_top">Framework</td>
</tr>
<tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr>
<tr>
<td class="header_menu">
[ <a href="../classtrees_Framework.html" class="menu">class tree: Framework</a> ]
[ <a href="../elementindex_Framework.html" class="menu">index: Framework</a> ]
[ <a href="../elementindex.html" class="menu">all elements</a> ]
</td>
</tr>
<tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr>
</table>
 
<table width="100%" border="0" cellpadding="0" cellspacing="0">
<tr valign="top">
<td width="200" class="menu">
<b>Packages:</b><br />
<a href="../li_Framework.html">Framework</a><br />
<br /><br />
</td>
<td>
<table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top">
 
<h1 align="center">Source for file Modele.php</h1>
<p>Documentation is available at <a href="../Framework/_Modele.php.html">Modele.php</a></p>
<div class="src-code">
<ol><li><div class="src-line"><a name="a1"></a><span class="src-php">&lt;?php</span></div></li>
<li><div class="src-line"><a name="a2"></a><span class="src-comm">//&nbsp;declare(encoding='UTF-8');</span></div></li>
<li><div class="src-line"><a name="a3"></a><span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a4"></a><span class="src-doc">*&nbsp;Classe&nbsp;modèle,&nbsp;donc&nbsp;d'accés&nbsp;au&nbsp;données,&nbsp;elle&nbsp;ne&nbsp;devrait&nbsp;pas&nbsp;être&nbsp;appelée&nbsp;de&nbsp;l'extérieur.</span></div></li>
<li><div class="src-line"><a name="a5"></a><span class="src-doc">*&nbsp;Elle&nbsp;fait&nbsp;office&nbsp;d'abstraction&nbsp;légère&nbsp;de&nbsp;base&nbsp;de&nbsp;données&nbsp;en&nbsp;utilisant&nbsp;diveres&nbsp;possibilités</span></div></li>
<li><div class="src-line"><a name="a6"></a><span class="src-doc">*&nbsp;d'abstraction&nbsp;de&nbsp;base&nbsp;de&nbsp;données&nbsp;(PDO,&nbsp;mysql,&nbsp;mysqli,&nbsp;sqlite)</span></div></li>
<li><div class="src-line"><a name="a7"></a><span class="src-doc">*&nbsp;Elle&nbsp;est&nbsp;abstraite&nbsp;donc&nbsp;doit&nbsp;obligatoirement&nbsp;être&nbsp;étendue.</span></div></li>
<li><div class="src-line"><a name="a8"></a><span class="src-doc">*</span></div></li>
<li><div class="src-line"><a name="a9"></a><span class="src-doc">*&nbsp;PHP&nbsp;Version&nbsp;5</span></div></li>
<li><div class="src-line"><a name="a10"></a><span class="src-doc">*</span></div></li>
<li><div class="src-line"><a name="a11"></a><span class="src-doc">*&nbsp;</span><span class="src-doc-coretag">@category</span><span class="src-doc">&nbsp;&nbsp;Class</span></div></li>
<li><div class="src-line"><a name="a12"></a><span class="src-doc">*&nbsp;</span><span class="src-doc-coretag">@package</span><span class="src-doc">&nbsp;&nbsp;&nbsp;Framework</span></div></li>
<li><div class="src-line"><a name="a13"></a><span class="src-doc">*&nbsp;</span><span class="src-doc-coretag">@author</span><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;aurelien&nbsp;&lt;aurelien@tela-botanica.org&gt;</span></div></li>
<li><div class="src-line"><a name="a14"></a><span class="src-doc">*&nbsp;</span><span class="src-doc-coretag">@copyright</span><span class="src-doc">&nbsp;2009&nbsp;Tela-Botanica</span></div></li>
<li><div class="src-line"><a name="a15"></a><span class="src-doc">*&nbsp;</span><span class="src-doc-coretag">@license</span><span class="src-doc">&nbsp;&nbsp;&nbsp;http://www.cecill.info/licences/Licence_CeCILL_V2-fr.txt&nbsp;Licence&nbsp;CECILL</span></div></li>
<li><div class="src-line"><a name="a16"></a><span class="src-doc">*&nbsp;</span><span class="src-doc-coretag">@license</span><span class="src-doc">&nbsp;&nbsp;&nbsp;http://www.gnu.org/licenses/gpl.html&nbsp;Licence&nbsp;GNU-GPL</span></div></li>
<li><div class="src-line"><a name="a17"></a><span class="src-doc">*&nbsp;</span><span class="src-doc-coretag">@version</span><span class="src-doc">&nbsp;&nbsp;&nbsp;SVN:&nbsp;$$Id:&nbsp;Modele.php&nbsp;145&nbsp;2010-03-02&nbsp;17:23:09Z&nbsp;jpm&nbsp;$$</span></div></li>
<li><div class="src-line"><a name="a18"></a><span class="src-doc">*&nbsp;</span><span class="src-doc-coretag">@link</span><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;/doc/framework/</span></div></li>
<li><div class="src-line"><a name="a19"></a><span class="src-doc">*</span></div></li>
<li><div class="src-line"><a name="a20"></a><span class="src-doc">*/</span></div></li>
<li><div class="src-line"><a name="a21"></a><span class="src-key">abstract&nbsp;</span><span class="src-key">class&nbsp;</span><a href="../Framework/Modele.html">Modele</a>&nbsp;<span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a22"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a23"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a24"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Mode&nbsp;de&nbsp;fetch&nbsp;associatif</span></div></li>
<li><div class="src-line"><a name="a25"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a26"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">private&nbsp;</span><span class="src-var">$ASSOC&nbsp;</span>=&nbsp;<span class="src-str">''</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a27"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a28"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Mode&nbsp;de&nbsp;fetch&nbsp;objet</span></div></li>
<li><div class="src-line"><a name="a29"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a30"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">private&nbsp;</span><span class="src-var">$OBJECT&nbsp;</span>=&nbsp;<span class="src-str">''</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a31"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a32"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a33"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;abstraction&nbsp;de&nbsp;base&nbsp;de&nbsp;données&nbsp;utilisée</span></div></li>
<li><div class="src-line"><a name="a34"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a35"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">private&nbsp;</span><span class="src-var">$abstraction</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a36"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a37"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;registre&nbsp;global</span></div></li>
<li><div class="src-line"><a name="a38"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a39"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">private&nbsp;</span><span class="src-var">$registre</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a40"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a41"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;DSN&nbsp;pour&nbsp;accéder&nbsp;à&nbsp;la&nbsp;base&nbsp;de&nbsp;données</span></div></li>
<li><div class="src-line"><a name="a42"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a43"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">private&nbsp;</span><span class="src-var">$dsn</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a44"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a45"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Type&nbsp;de&nbsp;base&nbsp;de&nbsp;données&nbsp;(mysql,&nbsp;mysqli,&nbsp;etc&nbsp;...)</span></div></li>
<li><div class="src-line"><a name="a46"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a47"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">private&nbsp;</span><span class="src-var">$type</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a48"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a49"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Hote&nbsp;herbergeant&nbsp;la&nbsp;base&nbsp;de&nbsp;données</span></div></li>
<li><div class="src-line"><a name="a50"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a51"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">private&nbsp;</span><span class="src-var">$hote</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a52"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a53"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Nom&nbsp;de&nbsp;la&nbsp;base&nbsp;de&nbsp;données&nbsp;à&nbsp;laquelle&nbsp;le&nbsp;modèle&nbsp;doit&nbsp;se&nbsp;connecter</span></div></li>
<li><div class="src-line"><a name="a54"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a55"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">private&nbsp;</span><span class="src-var">$bdd_nom</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a56"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a57"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Nom&nbsp;d'utilisateur</span></div></li>
<li><div class="src-line"><a name="a58"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a59"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">private&nbsp;</span><span class="src-var">$utilisateur</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a60"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a61"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Mot&nbsp;de&nbsp;passe</span></div></li>
<li><div class="src-line"><a name="a62"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a63"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">private&nbsp;</span><span class="src-var">$pass</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a64"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a65"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a66"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Encodage&nbsp;de&nbsp;la&nbsp;base&nbsp;de&nbsp;données</span></div></li>
<li><div class="src-line"><a name="a67"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a68"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">private&nbsp;</span><span class="src-var">$encodage&nbsp;</span>=&nbsp;<span class="src-id">null</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a69"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a70"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Connexion&nbsp;à&nbsp;la&nbsp;base&nbsp;de&nbsp;données</span></div></li>
<li><div class="src-line"><a name="a71"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a72"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">private&nbsp;</span><span class="src-var">$connexion&nbsp;</span>=&nbsp;<span class="src-id">null</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a73"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a74"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a75"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Constructeur&nbsp;par&nbsp;défaut,&nbsp;appelé&nbsp;à&nbsp;l'initialisation.</span></div></li>
<li><div class="src-line"><a name="a76"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a77"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">public&nbsp;</span><span class="src-key">function&nbsp;</span><a href="../Framework/Modele.html#method__construct">__construct</a><span class="src-sym">(</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a78"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;les&nbsp;différents&nbsp;paramètres&nbsp;nécessaires&nbsp;sont&nbsp;lus&nbsp;à&nbsp;partir&nbsp;du&nbsp;registre</span></div></li>
<li><div class="src-line"><a name="a79"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">registre&nbsp;</span>=&nbsp;<span class="src-id"><a href="../Framework/Registre.html">Registre</a></span><span class="src-sym">::</span><a href="../Framework/Registre.html#methodgetInstance">getInstance</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a80"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">abstraction&nbsp;</span>=&nbsp;<a href="http://www.php.net/strtolower">strtolower</a><span class="src-sym">(</span><span class="src-id"><a href="../Framework/Config.html">Config</a></span><span class="src-sym">::</span><a href="../Framework/Config.html#methodget">get</a><span class="src-sym">(</span><span class="src-str">'bdd_abstraction'</span><span class="src-sym">))</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a81"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">type&nbsp;</span>=&nbsp;<span class="src-id"><a href="../Framework/Config.html">Config</a></span><span class="src-sym">::</span><a href="../Framework/Config.html#methodget">get</a><span class="src-sym">(</span><span class="src-str">'bdd_protocole'</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a82"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">hote&nbsp;</span>=&nbsp;<span class="src-id"><a href="../Framework/Config.html">Config</a></span><span class="src-sym">::</span><a href="../Framework/Config.html#methodget">get</a><span class="src-sym">(</span><span class="src-str">'bdd_serveur'</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a83"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">bdd_nom&nbsp;</span>=&nbsp;<span class="src-id"><a href="../Framework/Config.html">Config</a></span><span class="src-sym">::</span><a href="../Framework/Config.html#methodget">get</a><span class="src-sym">(</span><span class="src-str">'bdd_nom'</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a84"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">utilisateur&nbsp;</span>=&nbsp;<span class="src-id"><a href="../Framework/Config.html">Config</a></span><span class="src-sym">::</span><a href="../Framework/Config.html#methodget">get</a><span class="src-sym">(</span><span class="src-str">'bdd_utilisateur'</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a85"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">pass&nbsp;</span>=&nbsp;<span class="src-id"><a href="../Framework/Config.html">Config</a></span><span class="src-sym">::</span><a href="../Framework/Config.html#methodget">get</a><span class="src-sym">(</span><span class="src-str">'bdd_mot_de_passe'</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a86"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">encodage&nbsp;</span>=&nbsp;<span class="src-id"><a href="../Framework/Config.html">Config</a></span><span class="src-sym">::</span><a href="../Framework/Config.html#methodget">get</a><span class="src-sym">(</span><span class="src-str">'bdd_encodage'</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a87"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a88"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">dsn&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">type</span>.<span class="src-str">':dbname='</span>.<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">bdd_nom</span>.<span class="src-str">';host='</span>.<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">hote</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a89"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Framework/Modele.html#methodinitialiserProtocole">initialiserProtocole</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a90"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a91"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a92"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a93"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Connection&nbsp;à&nbsp;la&nbsp;base&nbsp;de&nbsp;données&nbsp;en&nbsp;utilisant&nbsp;les&nbsp;informations&nbsp;fournies&nbsp;par</span></div></li>
<li><div class="src-line"><a name="a94"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;le&nbsp;fichier&nbsp;de&nbsp;configuration.</span></div></li>
<li><div class="src-line"><a name="a95"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;private&nbsp;et&nbsp;final&nbsp;car&nbsp;n'a&nbsp;pas&nbsp;vocation&nbsp;a&nbsp;être&nbsp;appelée&nbsp;par&nbsp;l'utilisateur.</span></div></li>
<li><div class="src-line"><a name="a96"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*</span></div></li>
<li><div class="src-line"><a name="a97"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@throws</span><span class="src-doc">&nbsp;Exception&nbsp;une&nbsp;exception&nbsp;dans&nbsp;le&nbsp;cas&nbsp;ou&nbsp;là&nbsp;connexion&nbsp;échoue</span></div></li>
<li><div class="src-line"><a name="a98"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a99"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">final&nbsp;</span><span class="src-key">private&nbsp;</span><span class="src-key">function&nbsp;</span><span class="src-id">connecter</span><span class="src-sym">(</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a100"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">switch&nbsp;</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">abstraction</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a101"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">case&nbsp;</span><span class="src-str">'pdo'</span>:</div></li>
<li><div class="src-line"><a name="a102"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">connexion&nbsp;</span>=&nbsp;<span class="src-key">new&nbsp;</span><span class="src-id">PDO</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">dsn</span><span class="src-sym">,&nbsp;</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">utilisateur</span><span class="src-sym">,&nbsp;</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">pass</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a103"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">break</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a104"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a105"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">case&nbsp;</span><span class="src-str">'mysql'</span>:</div></li>
<li><div class="src-line"><a name="a106"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">connexion&nbsp;</span>=&nbsp;<a href="http://www.php.net/mysql_connect">mysql_connect</a><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">hote</span><span class="src-sym">,</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">utilisateur</span><span class="src-sym">,</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">pass</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a107"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">connexion&nbsp;</span>!=&nbsp;<span class="src-id">null</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a108"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="http://www.php.net/mysql_select_db">mysql_select_db</a><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">bdd_nom</span><span class="src-sym">,&nbsp;</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">connexion</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a109"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}&nbsp;</span><span class="src-key">else&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a110"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;throw&nbsp;<span class="src-key">new&nbsp;</span><span class="src-id">Exception</span><span class="src-sym">(</span><span class="src-str">'Erreur&nbsp;de&nbsp;connexion&nbsp;à&nbsp;la&nbsp;base&nbsp;de&nbsp;données,&nbsp;vérifiez&nbsp;les&nbsp;paramètres&nbsp;du&nbsp;fichier&nbsp;de&nbsp;configuration'</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a111"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a112"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">break</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a113"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a114"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">case&nbsp;</span><span class="src-str">'mysqli'</span>:</div></li>
<li><div class="src-line"><a name="a115"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">connexion&nbsp;</span>=&nbsp;<span class="src-key">new&nbsp;</span><span class="src-id">mysqli</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">hote</span><span class="src-sym">,</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">utilisateur</span><span class="src-sym">,</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">pass</span><span class="src-sym">,&nbsp;</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">bdd_nom</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a116"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-sym">!</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">connexion</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a117"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;throw&nbsp;<span class="src-key">new&nbsp;</span><span class="src-id">Exception</span><span class="src-sym">(</span><span class="src-str">'Erreur&nbsp;de&nbsp;connexion&nbsp;à&nbsp;la&nbsp;base&nbsp;de&nbsp;données,&nbsp;vérifiez&nbsp;les&nbsp;paramètres&nbsp;du&nbsp;fichier&nbsp;de&nbsp;configuration'</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a118"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a119"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a120"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">break</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a121"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a122"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">case&nbsp;</span><span class="src-str">'sqlite3'</span>:</div></li>
<li><div class="src-line"><a name="a123"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;cas&nbsp;particulier&nbsp;de&nbsp;sqllite,&nbsp;on&nbsp;considère&nbsp;que&nbsp;le&nbsp;nom&nbsp;de&nbsp;la&nbsp;base&nbsp;de&nbsp;données&nbsp;correspond&nbsp;au&nbsp;fichier&nbsp;à&nbsp;ouvrir</span></div></li>
<li><div class="src-line"><a name="a124"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">connexion&nbsp;</span>=&nbsp;<span class="src-key">new&nbsp;</span><span class="src-id">SQLite3</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">bdd_nom</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a125"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-sym">!</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">connexion</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a126"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;throw&nbsp;<span class="src-key">new&nbsp;</span><span class="src-id">Exception</span><span class="src-sym">(</span><span class="src-str">'Erreur&nbsp;de&nbsp;connexion&nbsp;à&nbsp;la&nbsp;base&nbsp;de&nbsp;données,&nbsp;vérifiez&nbsp;les&nbsp;paramètres&nbsp;du&nbsp;fichier&nbsp;de&nbsp;configuration'</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a127"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a128"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a129"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">break</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a130"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a131"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">default</span>:</div></li>
<li><div class="src-line"><a name="a132"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">connexion&nbsp;</span>=&nbsp;<span class="src-id">null</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a133"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a134"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a135"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">encodage&nbsp;</span>!=&nbsp;<span class="src-id">null</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a136"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Framework/Modele.html#methodrequete">requete</a><span class="src-sym">(</span><span class="src-str">&quot;SET&nbsp;names&nbsp;'&quot;</span>.<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">encodage</span>.<span class="src-str">&quot;'&quot;</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a137"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a138"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a139"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a140"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a141"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Fonction&nbsp;qui&nbsp;appelle&nbsp;la&nbsp;bonne&nbsp;fonction&nbsp;pour&nbsp;executer&nbsp;une&nbsp;requête&nbsp;suivant&nbsp;le&nbsp;type&nbsp;de&nbsp;bdd.</span></div></li>
<li><div class="src-line"><a name="a142"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*</span></div></li>
<li><div class="src-line"><a name="a143"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@param&nbsp;</span><span class="src-doc-type">string&nbsp;</span><span class="src-doc">la&nbsp;requete&nbsp;à&nbsp;effectuer</span></div></li>
<li><div class="src-line"><a name="a144"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@return&nbsp;</span><span class="src-doc-type">PDOStatement&nbsp;</span><span class="src-doc">un&nbsp;objet&nbsp;contenant&nbsp;le&nbsp;résultat&nbsp;de&nbsp;la&nbsp;requête</span></div></li>
<li><div class="src-line"><a name="a145"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a146"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">final&nbsp;</span><span class="src-key">protected&nbsp;</span><span class="src-key">function&nbsp;</span><a href="../Framework/Modele.html#methodrequete">requete</a><span class="src-sym">(</span><span class="src-var">$requete</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a147"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;on&nbsp;ne&nbsp;se&nbsp;connecte&nbsp;que&nbsp;lors&nbsp;du&nbsp;premier&nbsp;appel&nbsp;à&nbsp;une&nbsp;requete&nbsp;(lazy&nbsp;connexion)</span></div></li>
<li><div class="src-line"><a name="a148"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">connexion&nbsp;</span>==&nbsp;<span class="src-id">null</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a149"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">connecter</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a150"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a151"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a152"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$retour&nbsp;</span>=&nbsp;<span class="src-id">null</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a153"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a154"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">switch&nbsp;</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">abstraction</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a155"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">case&nbsp;</span><span class="src-str">'pdo'</span>:</div></li>
<li><div class="src-line"><a name="a156"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$retour&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">connexion</span><span class="src-sym">-&gt;</span><span class="src-id">query</span><span class="src-sym">(</span><span class="src-var">$requete</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a157"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">break</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a158"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">case&nbsp;</span><span class="src-str">'mysql'</span>:</div></li>
<li><div class="src-line"><a name="a159"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$retour&nbsp;</span>=&nbsp;<a href="http://www.php.net/mysql_query">mysql_query</a><span class="src-sym">(</span><span class="src-var">$requete</span><span class="src-sym">,</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">connexion</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a160"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">break</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a161"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">case&nbsp;</span><span class="src-str">'mysqli'</span>:</div></li>
<li><div class="src-line"><a name="a162"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$retour&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">connexion</span><span class="src-sym">-&gt;</span><span class="src-id">query</span><span class="src-sym">(</span><span class="src-var">$requete</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a163"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">break</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a164"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">case&nbsp;</span><span class="src-str">'sqlite3'</span>:</div></li>
<li><div class="src-line"><a name="a165"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$retour&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">connexion</span><span class="src-sym">-&gt;</span><span class="src-id">exec</span><span class="src-sym">(</span><span class="src-var">$requete</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a166"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">break</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a167"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a168"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a169"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$retour</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a170"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a171"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a172"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">final&nbsp;</span><span class="src-key">protected&nbsp;</span><span class="src-key">function&nbsp;</span><a href="../Framework/Modele.html#methodrequeteUn">requeteUn</a><span class="src-sym">(</span><span class="src-var">$requete</span><span class="src-sym">,</span><span class="src-var">$mode&nbsp;</span>=&nbsp;<span class="src-str">'ASSOC'</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a173"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;Connection&nbsp;seulement&nbsp;lors&nbsp;du&nbsp;premier&nbsp;appel&nbsp;à&nbsp;une&nbsp;requete&nbsp;(lazy&nbsp;connexion)</span></div></li>
<li><div class="src-line"><a name="a174"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">connexion&nbsp;</span>==&nbsp;<span class="src-id">null</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a175"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">connecter</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a176"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a177"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a178"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$retour&nbsp;</span>=&nbsp;<span class="src-id">null</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a179"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">switch&nbsp;</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">abstraction</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a180"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">case&nbsp;</span><span class="src-str">'pdo'</span>:</div></li>
<li><div class="src-line"><a name="a181"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$res_req&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">connexion</span><span class="src-sym">-&gt;</span><span class="src-id">query</span><span class="src-sym">(</span><span class="src-var">$requete</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a182"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$retour&nbsp;</span>=<span class="src-var">$res_req</span><span class="src-sym">-&gt;</span><span class="src-id">fetch</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">$mode</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a183"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">break</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a184"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">case&nbsp;</span><span class="src-str">'mysql'</span>:</div></li>
<li><div class="src-line"><a name="a185"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$res&nbsp;</span>=&nbsp;<a href="http://www.php.net/mysql_query">mysql_query</a><span class="src-sym">(</span><span class="src-var">$requete</span><span class="src-sym">,</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">connexion</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a186"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$fonction_fetch&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">$mode</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a187"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$retour&nbsp;</span>=&nbsp;<span class="src-var">$fonction_fetch</span><span class="src-sym">(</span><span class="src-var">$res</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a188"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">break</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a189"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">case&nbsp;</span><span class="src-str">'mysqli'</span>:</div></li>
<li><div class="src-line"><a name="a190"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$res&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">connexion</span><span class="src-sym">-&gt;</span><span class="src-id">query</span><span class="src-sym">(</span><span class="src-var">$requete</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a191"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$fonction_fetch&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">$mode</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a192"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$retour&nbsp;</span>=&nbsp;<span class="src-var">$res</span><span class="src-sym">-&gt;</span><span class="src-var">$fonction_fetch</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a193"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">break</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a194"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">case&nbsp;</span><span class="src-str">'sqlite3'</span>:</div></li>
<li><div class="src-line"><a name="a195"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$retour&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">connexion</span><span class="src-sym">-&gt;</span><span class="src-id">querySingle</span><span class="src-sym">(</span><span class="src-var">$requete</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a196"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">break</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a197"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a198"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a199"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$retour</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a200"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a201"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a202"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a203"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">final&nbsp;</span><span class="src-key">protected&nbsp;</span><span class="src-key">function&nbsp;</span><a href="../Framework/Modele.html#methodrequeteTous">requeteTous</a><span class="src-sym">(</span><span class="src-var">$requete</span><span class="src-sym">,</span><span class="src-var">$mode&nbsp;</span>=&nbsp;<span class="src-str">'ASSOC'</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a204"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;Connexion&nbsp;seulement&nbsp;lors&nbsp;du&nbsp;premier&nbsp;appel&nbsp;à&nbsp;une&nbsp;requete&nbsp;(lazy&nbsp;connexion)</span></div></li>
<li><div class="src-line"><a name="a205"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">connexion&nbsp;</span>==&nbsp;<span class="src-id">null</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a206"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">connecter</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a207"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a208"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a209"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$retour&nbsp;</span>=&nbsp;<span class="src-id">null</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a210"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a211"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">switch&nbsp;</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">abstraction</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a212"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">case&nbsp;</span><span class="src-str">'pdo'</span>:</div></li>
<li><div class="src-line"><a name="a213"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;try&nbsp;<span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a214"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$res_req&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">connexion</span><span class="src-sym">-&gt;</span><span class="src-id">query</span><span class="src-sym">(</span><span class="src-var">$requete</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a215"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$res_req&nbsp;</span>!==&nbsp;<span class="src-id">false</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a216"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$retour&nbsp;</span>=&nbsp;<span class="src-var">$res_req</span><span class="src-sym">-&gt;</span><span class="src-id">fetchAll</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">$mode</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a217"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}&nbsp;</span><span class="src-key">else&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a218"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$retour&nbsp;</span>=&nbsp;<span class="src-id">false</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a219"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a220"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}&nbsp;</span>catch&nbsp;<span class="src-sym">(</span><span class="src-id">PDOException&nbsp;</span><span class="src-var">$e</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a221"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$message&nbsp;</span>=&nbsp;<span class="src-str">'Requête&nbsp;echec.&nbsp;Fichier&nbsp;:&nbsp;&quot;%s&quot;.&nbsp;Ligne&nbsp;:&nbsp;&quot;%s&quot;.&nbsp;Message&nbsp;:&nbsp;%s'</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a222"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="http://www.php.net/trigger_error">trigger_error</a><span class="src-sym">(</span><a href="http://www.php.net/sprintf">sprintf</a><span class="src-sym">(</span><span class="src-var">$message</span><span class="src-sym">,&nbsp;</span><span class="src-var">$e</span><span class="src-sym">-&gt;</span><span class="src-id">getFile</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">,&nbsp;</span><span class="src-var">$e</span><span class="src-sym">-&gt;</span><span class="src-id">getLine</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">,&nbsp;</span><span class="src-var">$e</span><span class="src-sym">-&gt;</span><span class="src-id">getMessage</span><span class="src-sym">(</span><span class="src-sym">))</span><span class="src-sym">,&nbsp;</span><span class="src-id">E_USER_WARNING</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a223"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a224"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">break</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a225"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">case&nbsp;</span><span class="src-str">'mysql'</span>:</div></li>
<li><div class="src-line"><a name="a226"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$res&nbsp;</span>=&nbsp;<a href="http://www.php.net/mysql_query">mysql_query</a><span class="src-sym">(</span><span class="src-var">$requete</span><span class="src-sym">,&nbsp;</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">connexion</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a227"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$fonction_fetch&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">$mode</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a228"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">while&nbsp;</span><span class="src-sym">(</span><span class="src-var">$ligne&nbsp;</span>=&nbsp;<span class="src-var">$fonction_fetch</span><span class="src-sym">(</span><span class="src-var">$res</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a229"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$retour</span><span class="src-sym">[</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-var">$ligne</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a230"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a231"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">break</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a232"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">case&nbsp;</span><span class="src-str">'mysqli'</span>:</div></li>
<li><div class="src-line"><a name="a233"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$res&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">connexion</span><span class="src-sym">-&gt;</span><span class="src-id">query</span><span class="src-sym">(</span><span class="src-var">$requete</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a234"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$function_fetch&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">$mode</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a235"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">while&nbsp;</span><span class="src-sym">(</span><span class="src-var">$ligne&nbsp;</span>=&nbsp;<span class="src-var">$res</span><span class="src-sym">-&gt;</span><span class="src-var">$function_fetch</span><span class="src-sym">(</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a236"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$retour</span><span class="src-sym">[</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-var">$ligne</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a237"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a238"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">break</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a239"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">case&nbsp;</span><span class="src-str">'sqlite3'</span>:</div></li>
<li><div class="src-line"><a name="a240"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$res&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">connexion</span><span class="src-sym">-&gt;</span><span class="src-id">query</span><span class="src-sym">(</span><span class="src-var">$requete</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a241"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">while&nbsp;</span><span class="src-sym">(</span><span class="src-var">$ligne&nbsp;</span>=&nbsp;<span class="src-var">$res</span><span class="src-sym">-&gt;</span><span class="src-id">fetch_array</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">ASSOC</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a242"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$mode&nbsp;</span>==&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">ASSOC</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a243"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$retour</span><span class="src-sym">[</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-var">$ligne</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a244"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}&nbsp;</span><span class="src-key">elseif&nbsp;</span><span class="src-sym">(</span><span class="src-var">$mode&nbsp;</span>==&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">OBJECT</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a245"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;cas&nbsp;particulier&nbsp;de&nbsp;sqllite</span></div></li>
<li><div class="src-line"><a name="a246"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;qui&nbsp;n'a&nbsp;pas&nbsp;de&nbsp;fonction&nbsp;fetch_object</span></div></li>
<li><div class="src-line"><a name="a247"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$ligneObjet&nbsp;</span>=&nbsp;<span class="src-key">new&nbsp;</span><span class="src-id">stdClass</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a248"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">foreach&nbsp;</span><span class="src-sym">(</span><span class="src-var">$ligne&nbsp;</span><span class="src-key">as&nbsp;</span><span class="src-var">$colonne&nbsp;</span>=&gt;&nbsp;<span class="src-var">$valeur</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a249"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$ligneObjet</span><span class="src-sym">-&gt;</span><span class="src-var">$colonne&nbsp;</span>=&nbsp;<span class="src-var">$valeur</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a250"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a251"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$retour</span><span class="src-sym">[</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-var">$ligneObjet</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a252"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a253"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a254"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">break</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a255"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a256"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a257"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$retour</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a258"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a259"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a260"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a261"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;protège&nbsp;une&nbsp;chaine&nbsp;de&nbsp;caractères&nbsp;avant&nbsp;l'insertion&nbsp;dans&nbsp;la&nbsp;base&nbsp;de&nbsp;données</span></div></li>
<li><div class="src-line"><a name="a262"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a263"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">final&nbsp;</span><span class="src-key">protected&nbsp;</span><span class="src-key">function&nbsp;</span><a href="../Framework/Modele.html#methodproteger">proteger</a><span class="src-sym">(</span><span class="src-var">$chaine</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a264"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a265"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;on&nbsp;ne&nbsp;se&nbsp;connecte&nbsp;que&nbsp;lors&nbsp;du&nbsp;premier&nbsp;appel&nbsp;à&nbsp;une&nbsp;requete</span></div></li>
<li><div class="src-line"><a name="a266"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">connexion&nbsp;</span>==&nbsp;<span class="src-id">null</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a267"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">connecter</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a268"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a269"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a270"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$retour&nbsp;</span>=&nbsp;<span class="src-var">$chaine</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a271"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a272"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">switch&nbsp;</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">abstraction</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a273"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">case&nbsp;</span><span class="src-str">'pdo'</span>:</div></li>
<li><div class="src-line"><a name="a274"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$retour&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">connexion</span><span class="src-sym">-&gt;</span><span class="src-id">quote</span><span class="src-sym">(</span><span class="src-var">$chaine</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a275"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">break</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a276"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">case&nbsp;</span><span class="src-str">'mysql'</span>:</div></li>
<li><div class="src-line"><a name="a277"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$retour&nbsp;</span>=&nbsp;<span class="src-str">'&quot;'</span>.<a href="http://www.php.net/mysql_real_escape_string">mysql_real_escape_string</a><span class="src-sym">(</span><span class="src-var">$chaine</span><span class="src-sym">,&nbsp;</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">connexion</span><span class="src-sym">)</span>.<span class="src-str">'&quot;'</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a278"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">break</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a279"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">case&nbsp;</span><span class="src-str">'mysqli'</span>:</div></li>
<li><div class="src-line"><a name="a280"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$retour&nbsp;</span>=&nbsp;<span class="src-str">'&quot;'</span>.<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">connexion</span><span class="src-sym">-&gt;</span><span class="src-id">real_escape_string</span><span class="src-sym">(</span><span class="src-var">$chaine</span><span class="src-sym">)</span>.<span class="src-str">'&quot;'</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a281"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">break</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a282"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">case&nbsp;</span><span class="src-str">'sqlite3'</span>:</div></li>
<li><div class="src-line"><a name="a283"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$retour&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">connexion</span><span class="src-sym">-&gt;</span><span class="src-id">escapeString</span><span class="src-sym">(</span><span class="src-var">$chaine</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a284"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">break</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a285"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a286"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a287"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$retour</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a288"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a289"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a290"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a291"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;initialise&nbsp;les&nbsp;constantes&nbsp;de&nbsp;classe&nbsp;à&nbsp;leur&nbsp;bonne&nbsp;valeur</span></div></li>
<li><div class="src-line"><a name="a292"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;et&nbsp;lance&nbsp;une&nbsp;exception&nbsp;si&nbsp;le&nbsp;protocole&nbsp;n'est&nbsp;pas&nbsp;bien&nbsp;défini</span></div></li>
<li><div class="src-line"><a name="a293"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@throws</span><span class="src-doc">&nbsp;Exception</span></div></li>
<li><div class="src-line"><a name="a294"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a295"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">final&nbsp;</span><span class="src-key">public&nbsp;</span><span class="src-key">function&nbsp;</span><a href="../Framework/Modele.html#methodinitialiserProtocole">initialiserProtocole</a><span class="src-sym">(</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a296"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a297"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">switch&nbsp;</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">abstraction</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a298"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">case&nbsp;</span><span class="src-str">'pdo'</span>:</div></li>
<li><div class="src-line"><a name="a299"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">ASSOC&nbsp;</span>=&nbsp;<span class="src-id">PDO</span><span class="src-sym">::</span><span class="src-id">FETCH_ASSOC</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a300"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">OBJECT&nbsp;</span>=&nbsp;<span class="src-id">PDO</span><span class="src-sym">::</span><span class="src-id">FETCH_CLASS</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a301"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">break</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a302"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">case&nbsp;</span><span class="src-str">'mysql'</span>:</div></li>
<li><div class="src-line"><a name="a303"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">ASSOC&nbsp;</span>=&nbsp;<span class="src-str">'mysql_fetch_assoc'</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a304"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">OBJECT&nbsp;</span>=&nbsp;<span class="src-str">'mysql_fetch_object'</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a305"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">break</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a306"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">case&nbsp;</span><span class="src-str">'mysqli'</span>:</div></li>
<li><div class="src-line"><a name="a307"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">ASSOC&nbsp;</span>=&nbsp;<span class="src-str">'fetch_assoc'</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a308"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">OBJECT&nbsp;</span>=&nbsp;<span class="src-str">'fetch_object'</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a309"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">break</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a310"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">case&nbsp;</span><span class="src-str">'sqlite3'</span>:</div></li>
<li><div class="src-line"><a name="a311"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">ASSOC&nbsp;</span>=&nbsp;<span class="src-str">'SQLITE3_ASSOC'</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a312"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">OBJECT&nbsp;</span>=&nbsp;<span class="src-str">'SQLITE3_OBJECT'</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a313"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">break</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a314"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">default</span>:</div></li>
<li><div class="src-line"><a name="a315"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;throw&nbsp;<span class="src-key">new&nbsp;</span><span class="src-id">Exception</span><span class="src-sym">(</span><span class="src-str">'Erreur&nbsp;:&nbsp;l\'abstraction&nbsp;'</span>.<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">abstraction</span>.<span class="src-str">'&nbsp;n\'est&nbsp;pas&nbsp;prise&nbsp;en&nbsp;charge'</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a316"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">break</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a317"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a318"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a319"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a320"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a321"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Destructeur&nbsp;de&nbsp;classe,&nbsp;se&nbsp;contente&nbsp;de&nbsp;fermer&nbsp;explicitement&nbsp;la&nbsp;connexion</span></div></li>
<li><div class="src-line"><a name="a322"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a323"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">final&nbsp;</span><span class="src-key">public&nbsp;</span><span class="src-key">function&nbsp;</span><a href="../Framework/Modele.html#method__destruct">__destruct</a><span class="src-sym">(</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a324"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">switch&nbsp;</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">abstraction</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a325"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">case&nbsp;</span><span class="src-str">'pdo'</span>:</div></li>
<li><div class="src-line"><a name="a326"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">connexion&nbsp;</span>=&nbsp;<span class="src-id">null</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a327"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">break</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a328"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">case&nbsp;</span><span class="src-str">'mysql'</span>:</div></li>
<li><div class="src-line"><a name="a329"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><a href="http://www.php.net/mysql_close">mysql_close</a><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">connexion</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a330"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">break</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a331"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">case&nbsp;</span><span class="src-str">'mysqli'</span>:</div></li>
<li><div class="src-line"><a name="a332"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">connexion</span><span class="src-sym">-&gt;</span><span class="src-id">close</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a333"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">break</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a334"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">case&nbsp;</span><span class="src-str">'sqlite3'</span>:</div></li>
<li><div class="src-line"><a name="a335"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">connexion</span><span class="src-sym">-&gt;</span><span class="src-id">close</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a336"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">break</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a337"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a338"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a339"></a><span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a340"></a><span class="src-php">?&gt;</span></div></li>
</ol>
</div>
<div class="credit">
<hr />
Documentation generated on Thu, 04 Mar 2010 19:27:35 +0100 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.3</a>
</div>
</td></tr></table>
</td>
</tr>
</table>
 
</body>
</html>
/tags/v0.3-aleaume/doc/HTMLSmartyConverter/__filesource/fsource_Framework__Debug.php.html
New file
0,0 → 1,174
<html>
<head>
<title>File Source for Debug.php</title>
<meta http-equiv='Content-Type' content='text/html; charset=UTF-8'/>
<link rel="stylesheet" type="text/css" href="../media/style.css">
</head>
<body>
 
<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%">
<tr>
<td class="header_top">Framework</td>
</tr>
<tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr>
<tr>
<td class="header_menu">
[ <a href="../classtrees_Framework.html" class="menu">class tree: Framework</a> ]
[ <a href="../elementindex_Framework.html" class="menu">index: Framework</a> ]
[ <a href="../elementindex.html" class="menu">all elements</a> ]
</td>
</tr>
<tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr>
</table>
 
<table width="100%" border="0" cellpadding="0" cellspacing="0">
<tr valign="top">
<td width="200" class="menu">
<b>Packages:</b><br />
<a href="../li_Framework.html">Framework</a><br />
<br /><br />
</td>
<td>
<table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top">
 
<h1 align="center">Source for file Debug.php</h1>
<p>Documentation is available at <a href="../Framework/_Debug.php.html">Debug.php</a></p>
<div class="src-code">
<ol><li><div class="src-line"><a name="a1"></a><span class="src-php">&lt;?php</span></div></li>
<li><div class="src-line"><a name="a2"></a><span class="src-comm">//&nbsp;declare(encoding='UTF-8');</span></div></li>
<li><div class="src-line"><a name="a3"></a><span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a4"></a><span class="src-doc">&nbsp;*&nbsp;Classe&nbsp;fournissant&nbsp;des&nbsp;fonctions&nbsp;de&nbsp;débogage&nbsp;équivalante&nbsp;à&nbsp;var_dump&nbsp;et&nbsp;print_r.</span></div></li>
<li><div class="src-line"><a name="a5"></a><span class="src-doc">&nbsp;*&nbsp;L'affichage&nbsp;et&nbsp;l'utilisation&nbsp;de&nbsp;ces&nbsp;fonctions&nbsp;sont&nbsp;améliorés&nbsp;via&nbsp;cette&nbsp;classe.</span></div></li>
<li><div class="src-line"><a name="a6"></a><span class="src-doc">&nbsp;*&nbsp;Cette&nbsp;classe&nbsp;est&nbsp;inspirée&nbsp;de&nbsp;la&nbsp;classe&nbsp;Zend_Debug.</span></div></li>
<li><div class="src-line"><a name="a7"></a><span class="src-doc">&nbsp;*</span></div></li>
<li><div class="src-line"><a name="a8"></a><span class="src-doc">&nbsp;*&nbsp;PHP&nbsp;version&nbsp;5</span></div></li>
<li><div class="src-line"><a name="a9"></a><span class="src-doc">&nbsp;*</span></div></li>
<li><div class="src-line"><a name="a10"></a><span class="src-doc">&nbsp;*&nbsp;</span><span class="src-doc-coretag">@category</span><span class="src-doc">&nbsp;Debogage</span></div></li>
<li><div class="src-line"><a name="a11"></a><span class="src-doc">&nbsp;*&nbsp;</span><span class="src-doc-coretag">@package</span><span class="src-doc">&nbsp;Framework</span></div></li>
<li><div class="src-line"><a name="a12"></a><span class="src-doc">&nbsp;//&nbsp;Auteur&nbsp;principal&nbsp;:</span></div></li>
<li><div class="src-line"><a name="a13"></a><span class="src-doc">&nbsp;*&nbsp;</span><span class="src-doc-coretag">@author</span><span class="src-doc">&nbsp;Jean-Pascal&nbsp;MILCENT&nbsp;&lt;jpm@tela-botanica.org&gt;</span></div></li>
<li><div class="src-line"><a name="a14"></a><span class="src-doc">&nbsp;//&nbsp;Autres&nbsp;auteurs&nbsp;:</span></div></li>
<li><div class="src-line"><a name="a15"></a><span class="src-doc">&nbsp;*&nbsp;</span><span class="src-doc-coretag">@license</span><span class="src-doc">&nbsp;GPL&nbsp;v3&nbsp;&lt;http://www.gnu.org/licenses/gpl.txt&gt;</span></div></li>
<li><div class="src-line"><a name="a16"></a><span class="src-doc">&nbsp;*&nbsp;</span><span class="src-doc-coretag">@license</span><span class="src-doc">&nbsp;CECILL&nbsp;v2&nbsp;&lt;http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt&gt;</span></div></li>
<li><div class="src-line"><a name="a17"></a><span class="src-doc">&nbsp;*&nbsp;</span><span class="src-doc-coretag">@version</span><span class="src-doc">&nbsp;$$Id:&nbsp;Debug.php&nbsp;153&nbsp;2010-03-04&nbsp;10:48:32Z&nbsp;jpm&nbsp;$$</span></div></li>
<li><div class="src-line"><a name="a18"></a><span class="src-doc">&nbsp;*&nbsp;</span><span class="src-doc-coretag">@copyright</span><span class="src-doc">&nbsp;1999-2009&nbsp;Tela&nbsp;Botanica&nbsp;(accueil@tela-botanica.org)</span></div></li>
<li><div class="src-line"><a name="a19"></a><span class="src-doc">&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a20"></a><span class="src-key">class&nbsp;</span><a href="../Framework/Debug.html">Debug</a>&nbsp;<span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a21"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a22"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a23"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;mode&nbsp;de&nbsp;php&nbsp;(cli&nbsp;ou&nbsp;sapi)</span></div></li>
<li><div class="src-line"><a name="a24"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a25"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">protected&nbsp;</span><span class="src-key">static&nbsp;</span><span class="src-var">$mode&nbsp;</span>=&nbsp;<span class="src-id">null</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a26"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a27"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a28"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Accesseur&nbsp;pour&nbsp;le&nbsp;mode</span></div></li>
<li><div class="src-line"><a name="a29"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@return&nbsp;</span><span class="src-doc-type">string&nbsp;</span><span class="src-doc">le&nbsp;mode&nbsp;de&nbsp;php</span></div></li>
<li><div class="src-line"><a name="a30"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a31"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">public&nbsp;</span><span class="src-key">static&nbsp;</span><span class="src-key">function&nbsp;</span><a href="../Framework/Debug.html#methodgetMode">getMode</a><span class="src-sym">(</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a32"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-id">self</span><span class="src-sym">::</span><span class="src-var">$mode&nbsp;</span>===&nbsp;<span class="src-id">null</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a33"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-id">self</span><span class="src-sym">::</span><span class="src-var">$mode&nbsp;</span>=&nbsp;<span class="src-id">PHP_SAPI</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a34"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a35"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-id">self</span><span class="src-sym">::</span><span class="src-var">$mode</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a36"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a37"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a38"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a39"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Equivalent&nbsp;de&nbsp;var_dump</span></div></li>
<li><div class="src-line"><a name="a40"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@param&nbsp;</span><span class="src-doc-type">mixed&nbsp;</span><span class="src-doc-var">$variable&nbsp;</span><span class="src-doc">la&nbsp;variable&nbsp;à&nbsp;dumper</span></div></li>
<li><div class="src-line"><a name="a41"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@param&nbsp;</span><span class="src-doc-type">string&nbsp;</span><span class="src-doc-var">$mot_cle&nbsp;</span><span class="src-doc">le&nbsp;mot&nbsp;cle&nbsp;à&nbsp;associer&nbsp;à&nbsp;la&nbsp;variable</span></div></li>
<li><div class="src-line"><a name="a42"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@param&nbsp;</span><span class="src-doc-type">boolean&nbsp;</span><span class="src-doc-var">$echo&nbsp;</span><span class="src-doc">si&nbsp;true&nbsp;on&nbsp;affiche&nbsp;le&nbsp;résultat,&nbsp;si&nbsp;false&nbsp;on&nbsp;ne&nbsp;renvoie&nbsp;que&nbsp;la&nbsp;chaine&nbsp;sans&nbsp;l'afficher</span></div></li>
<li><div class="src-line"><a name="a43"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@return&nbsp;</span><span class="src-doc-type">string&nbsp;</span><span class="src-doc">la&nbsp;chaine&nbsp;à&nbsp;afficher&nbsp;representant&nbsp;le&nbsp;dump&nbsp;ou&nbsp;null&nbsp;si&nbsp;echo</span></div></li>
<li><div class="src-line"><a name="a44"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a45"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">public&nbsp;</span><span class="src-key">static&nbsp;</span><span class="src-key">function&nbsp;</span><a href="../Framework/Debug.html#methoddump">dump</a><span class="src-sym">(</span><span class="src-var">$variable</span><span class="src-sym">,&nbsp;</span><span class="src-var">$mot_cle&nbsp;</span>=&nbsp;<span class="src-id">null</span><span class="src-sym">,&nbsp;</span><span class="src-var">$echo&nbsp;</span>=&nbsp;<span class="src-id">true</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a46"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;var_dump&nbsp;de&nbsp;la&nbsp;variable&nbsp;dans&nbsp;un&nbsp;buffer&nbsp;et&nbsp;récupération&nbsp;de&nbsp;la&nbsp;sortie</span></div></li>
<li><div class="src-line"><a name="a47"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-id">ob_start</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a48"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="http://www.php.net/var_dump">var_dump</a><span class="src-sym">(</span><span class="src-var">$variable</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a49"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$sortie&nbsp;</span>=&nbsp;<a href="http://www.php.net/ob_get_clean">ob_get_clean</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a50"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a51"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;Pré-traitement&nbsp;de&nbsp;la&nbsp;sortie</span></div></li>
<li><div class="src-line"><a name="a52"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$sortie&nbsp;</span>=&nbsp;<a href="http://www.php.net/preg_replace">preg_replace</a><span class="src-sym">(</span><span class="src-str">&quot;/\]\=\&gt;\n(\s+)/m&quot;</span><span class="src-sym">,&nbsp;</span><span class="src-str">&quot;]&nbsp;=&gt;&nbsp;&quot;</span><span class="src-sym">,&nbsp;</span><span class="src-var">$sortie</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a53"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a54"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;Traitement&nbsp;général&nbsp;du&nbsp;débogage</span></div></li>
<li><div class="src-line"><a name="a55"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-id">self</span><span class="src-sym">::</span><span class="src-id">traiterDebogage</span><span class="src-sym">(</span><span class="src-var">$mot_cle</span><span class="src-sym">,&nbsp;</span><span class="src-var">$sortie</span><span class="src-sym">,&nbsp;</span><span class="src-var">$echo</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a56"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a57"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a58"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a59"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Equivalent&nbsp;de&nbsp;print_r</span></div></li>
<li><div class="src-line"><a name="a60"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@param&nbsp;</span><span class="src-doc-type">mixed&nbsp;</span><span class="src-doc-var">$variable&nbsp;</span><span class="src-doc">la&nbsp;variable&nbsp;à&nbsp;afficher</span></div></li>
<li><div class="src-line"><a name="a61"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@param&nbsp;</span><span class="src-doc-type">string&nbsp;</span><span class="src-doc-var">$mot_cle&nbsp;</span><span class="src-doc">le&nbsp;mot&nbsp;cle&nbsp;à&nbsp;associer</span></div></li>
<li><div class="src-line"><a name="a62"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@param&nbsp;</span><span class="src-doc-type">boolean&nbsp;</span><span class="src-doc-var">$echo&nbsp;</span><span class="src-doc">faire&nbsp;un&nbsp;echo&nbsp;ou&nbsp;non</span></div></li>
<li><div class="src-line"><a name="a63"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@return&nbsp;</span><span class="src-doc-type">string&nbsp;</span><span class="src-doc">la&nbsp;chaine&nbsp;contenant&nbsp;la&nbsp;variable&nbsp;printée&nbsp;ou&nbsp;null&nbsp;si&nbsp;echo</span></div></li>
<li><div class="src-line"><a name="a64"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a65"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">public&nbsp;</span><span class="src-key">static&nbsp;</span><span class="src-key">function&nbsp;</span><a href="../Framework/Debug.html#methodprintr">printr</a><span class="src-sym">(</span><span class="src-var">$variable</span><span class="src-sym">,&nbsp;</span><span class="src-var">$mot_cle&nbsp;</span>=&nbsp;<span class="src-id">null</span><span class="src-sym">,&nbsp;</span><span class="src-var">$echo&nbsp;</span>=&nbsp;<span class="src-id">true</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a66"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;Récupération&nbsp;de&nbsp;la&nbsp;sortie</span></div></li>
<li><div class="src-line"><a name="a67"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$sortie&nbsp;</span>=&nbsp;<a href="http://www.php.net/print_r">print_r</a><span class="src-sym">(</span><span class="src-var">$variable</span><span class="src-sym">,&nbsp;</span><span class="src-id">true</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a68"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a69"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;Traitement&nbsp;général&nbsp;du&nbsp;débogage</span></div></li>
<li><div class="src-line"><a name="a70"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-id">self</span><span class="src-sym">::</span><span class="src-id">traiterDebogage</span><span class="src-sym">(</span><span class="src-var">$mot_cle</span><span class="src-sym">,&nbsp;</span><span class="src-var">$sortie</span><span class="src-sym">,&nbsp;</span><span class="src-var">$echo</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a71"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a72"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a73"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a74"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Traite&nbsp;une&nbsp;chaine&nbsp;de&nbsp;débogage&nbsp;et&nbsp;les&nbsp;mots&nbsp;clés&nbsp;associés</span></div></li>
<li><div class="src-line"><a name="a75"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@param&nbsp;</span><span class="src-doc-type">string&nbsp;</span><span class="src-doc">&nbsp;</span><span class="src-doc-var">$mot_cle&nbsp;</span><span class="src-doc">le&nbsp;mot&nbsp;à&nbsp;associer&nbsp;à&nbsp;la&nbsp;chaine</span></div></li>
<li><div class="src-line"><a name="a76"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@param&nbsp;</span><span class="src-doc-type">string&nbsp;</span><span class="src-doc">&nbsp;</span><span class="src-doc-var">$sortie&nbsp;</span><span class="src-doc">le&nbsp;chaine&nbsp;de&nbsp;debogage</span></div></li>
<li><div class="src-line"><a name="a77"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@param&nbsp;</span><span class="src-doc-type">boolean&nbsp;</span><span class="src-doc-var">$echo&nbsp;</span><span class="src-doc">faire&nbsp;un&nbsp;echo&nbsp;du&nbsp;resultat&nbsp;ou&nbsp;non</span></div></li>
<li><div class="src-line"><a name="a78"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@return&nbsp;</span><span class="src-doc-type">string&nbsp;</span><span class="src-doc">la&nbsp;chaine&nbsp;de&nbsp;debogage&nbsp;formatée&nbsp;ou&nbsp;bien&nbsp;null&nbsp;si&nbsp;echo</span></div></li>
<li><div class="src-line"><a name="a79"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a80"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">private&nbsp;</span><span class="src-key">static&nbsp;</span><span class="src-key">function&nbsp;</span><span class="src-id">traiterDebogage</span><span class="src-sym">(</span><span class="src-var">$mot_cle</span><span class="src-sym">,&nbsp;</span><span class="src-var">$sortie</span><span class="src-sym">,&nbsp;</span><span class="src-var">$echo</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a81"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;Formate&nbsp;le&nbsp;mot-clé</span></div></li>
<li><div class="src-line"><a name="a82"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$mot_cle&nbsp;</span>=&nbsp;<span class="src-id">self</span><span class="src-sym">::</span><span class="src-id">formaterMotCle</span><span class="src-sym">(</span><span class="src-var">$mot_cle</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a83"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a84"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;Traitement&nbsp;de&nbsp;la&nbsp;sortie</span></div></li>
<li><div class="src-line"><a name="a85"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$sortie&nbsp;</span>=&nbsp;<span class="src-id">self</span><span class="src-sym">::</span><span class="src-id">traiterSortieSuivantMode</span><span class="src-sym">(</span><span class="src-var">$mot_cle</span><span class="src-sym">,&nbsp;</span><span class="src-var">$sortie</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a86"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a87"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;Affichage&nbsp;et/ou&nbsp;retour</span></div></li>
<li><div class="src-line"><a name="a88"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$echo</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a89"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;echo&nbsp;<span class="src-var">$sortie</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a90"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-id">null</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a91"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}&nbsp;</span><span class="src-key">else&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a92"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$sortie</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a93"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a94"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a95"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a96"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a97"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;formate&nbsp;un&nbsp;mot&nbsp;clé&nbsp;donné</span></div></li>
<li><div class="src-line"><a name="a98"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@param&nbsp;</span><span class="src-doc-type">string&nbsp;</span><span class="src-doc-var">$mot_cle&nbsp;</span><span class="src-doc">le&nbsp;mot&nbsp;clé&nbsp;à&nbsp;formaté</span></div></li>
<li><div class="src-line"><a name="a99"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@return&nbsp;</span><span class="src-doc-type">string&nbsp;</span><span class="src-doc">le&nbsp;mot&nbsp;clé&nbsp;formaté&nbsp;ou&nbsp;bien&nbsp;un&nbsp;chaine&nbsp;vide&nbsp;le&nbsp;mot&nbsp;clé&nbsp;est&nbsp;null&nbsp;ou&nbsp;vide</span></div></li>
<li><div class="src-line"><a name="a100"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a101"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">private&nbsp;</span><span class="src-key">static&nbsp;</span><span class="src-key">function&nbsp;</span><span class="src-id">formaterMotCle</span><span class="src-sym">(</span><span class="src-var">$mot_cle</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a102"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-sym">(</span><span class="src-var">$mot_cle&nbsp;</span>===&nbsp;<span class="src-id">null</span><span class="src-sym">)&nbsp;</span>?&nbsp;<span class="src-str">''&nbsp;</span>:&nbsp;<a href="http://www.php.net/rtrim">rtrim</a><span class="src-sym">(</span><span class="src-var">$mot_cle</span><span class="src-sym">)</span>.<span class="src-str">'&nbsp;'</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a103"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a104"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a105"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a106"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;traite&nbsp;la&nbsp;sortie&nbsp;de&nbsp;la&nbsp;chaine&nbsp;de&nbsp;débogage&nbsp;suivant&nbsp;le&nbsp;mode&nbsp;de&nbsp;php</span></div></li>
<li><div class="src-line"><a name="a107"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@param&nbsp;</span><span class="src-doc-type">string&nbsp;</span><span class="src-doc-var">$mot_cle&nbsp;</span><span class="src-doc">le&nbsp;mot&nbsp;clé&nbsp;associé&nbsp;à&nbsp;la&nbsp;chaine</span></div></li>
<li><div class="src-line"><a name="a108"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@param&nbsp;</span><span class="src-doc-type">string&nbsp;</span><span class="src-doc">&nbsp;</span><span class="src-doc-var">$sortie&nbsp;</span><span class="src-doc">la&nbsp;chaine&nbsp;de&nbsp;débogage</span></div></li>
<li><div class="src-line"><a name="a109"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@return&nbsp;</span><span class="src-doc-type">string&nbsp;</span><span class="src-doc">la&nbsp;sortie&nbsp;formatée&nbsp;pour&nbsp;le&nbsp;mode&nbsp;en&nbsp;cours</span></div></li>
<li><div class="src-line"><a name="a110"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a111"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">private&nbsp;</span><span class="src-key">static&nbsp;</span><span class="src-key">function&nbsp;</span><span class="src-id">traiterSortieSuivantMode</span><span class="src-sym">(</span><span class="src-var">$mot_cle</span><span class="src-sym">,&nbsp;</span><span class="src-var">$sortie</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a112"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$corps&nbsp;</span>=&nbsp;<span class="src-var">$mot_cle</span>.<span class="src-id">PHP_EOL</span>.<span class="src-var">$sortie</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a113"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-id">self</span><span class="src-sym">::</span><span class="src-id">getMode</span><span class="src-sym">(</span><span class="src-sym">)&nbsp;</span>==&nbsp;<span class="src-str">'cli'</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a114"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$sortie&nbsp;</span>=&nbsp;<span class="src-id">PHP_EOL</span>.<span class="src-var">$corps</span>.<span class="src-id">PHP_EOL</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a115"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}&nbsp;</span><span class="src-key">else&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a116"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$sortie&nbsp;</span>=&nbsp;<span class="src-str">'&lt;pre&gt;'</span>.<span class="src-var">$corps</span>.<span class="src-str">'&lt;/pre&gt;'</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a117"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a118"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$sortie</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a119"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a120"></a><span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a121"></a><span class="src-php">?&gt;</span></div></li>
</ol>
</div>
<div class="credit">
<hr />
Documentation generated on Thu, 04 Mar 2010 19:27:32 +0100 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.3</a>
</div>
</td></tr></table>
</td>
</tr>
</table>
 
</body>
</html>
/tags/v0.3-aleaume/doc/HTMLSmartyConverter/__filesource/fsource_Framework__GestionnaireException.php.html
New file
0,0 → 1,239
<html>
<head>
<title>File Source for GestionnaireException.php</title>
<meta http-equiv='Content-Type' content='text/html; charset=UTF-8'/>
<link rel="stylesheet" type="text/css" href="../media/style.css">
</head>
<body>
 
<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%">
<tr>
<td class="header_top">Framework</td>
</tr>
<tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr>
<tr>
<td class="header_menu">
[ <a href="../classtrees_Framework.html" class="menu">class tree: Framework</a> ]
[ <a href="../elementindex_Framework.html" class="menu">index: Framework</a> ]
[ <a href="../elementindex.html" class="menu">all elements</a> ]
</td>
</tr>
<tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr>
</table>
 
<table width="100%" border="0" cellpadding="0" cellspacing="0">
<tr valign="top">
<td width="200" class="menu">
<b>Packages:</b><br />
<a href="../li_Framework.html">Framework</a><br />
<br /><br />
</td>
<td>
<table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top">
 
<h1 align="center">Source for file GestionnaireException.php</h1>
<p>Documentation is available at <a href="../Framework/_GestionnaireException.php.html">GestionnaireException.php</a></p>
<div class="src-code">
<ol><li><div class="src-line"><a name="a1"></a><span class="src-php">&lt;?php</span></div></li>
<li><div class="src-line"><a name="a2"></a><span class="src-comm">//&nbsp;declare(encoding='UTF-8');</span></div></li>
<li><div class="src-line"><a name="a3"></a><span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a4"></a><span class="src-doc">&nbsp;*&nbsp;Classe&nbsp;de&nbsp;gestion&nbsp;des&nbsp;exceptions.</span></div></li>
<li><div class="src-line"><a name="a5"></a><span class="src-doc">&nbsp;*&nbsp;C'est&nbsp;un&nbsp;Singleton.</span></div></li>
<li><div class="src-line"><a name="a6"></a><span class="src-doc">&nbsp;*</span></div></li>
<li><div class="src-line"><a name="a7"></a><span class="src-doc">&nbsp;*&nbsp;PHP&nbsp;Version&nbsp;5</span></div></li>
<li><div class="src-line"><a name="a8"></a><span class="src-doc">&nbsp;*</span></div></li>
<li><div class="src-line"><a name="a9"></a><span class="src-doc">&nbsp;*&nbsp;</span><span class="src-doc-coretag">@category</span><span class="src-doc">&nbsp;&nbsp;Class</span></div></li>
<li><div class="src-line"><a name="a10"></a><span class="src-doc">&nbsp;*&nbsp;</span><span class="src-doc-coretag">@package</span><span class="src-doc">&nbsp;&nbsp;&nbsp;Framework</span></div></li>
<li><div class="src-line"><a name="a11"></a><span class="src-doc">&nbsp;*&nbsp;</span><span class="src-doc-coretag">@author</span><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;aurelien&nbsp;&lt;aurelien@tela-botanica.org&gt;</span></div></li>
<li><div class="src-line"><a name="a12"></a><span class="src-doc">&nbsp;*&nbsp;</span><span class="src-doc-coretag">@copyright</span><span class="src-doc">&nbsp;2009&nbsp;Tela-Botanica</span></div></li>
<li><div class="src-line"><a name="a13"></a><span class="src-doc">&nbsp;*&nbsp;</span><span class="src-doc-coretag">@license</span><span class="src-doc">&nbsp;&nbsp;&nbsp;http://www.cecill.info/licences/Licence_CeCILL_V2-fr.txt&nbsp;Licence&nbsp;CECILL</span></div></li>
<li><div class="src-line"><a name="a14"></a><span class="src-doc">&nbsp;*&nbsp;</span><span class="src-doc-coretag">@license</span><span class="src-doc">&nbsp;&nbsp;&nbsp;http://www.gnu.org/licenses/gpl.html&nbsp;Licence&nbsp;GNU-GPL</span></div></li>
<li><div class="src-line"><a name="a15"></a><span class="src-doc">&nbsp;*&nbsp;</span><span class="src-doc-coretag">@version</span><span class="src-doc">&nbsp;&nbsp;&nbsp;SVN:&nbsp;$$Id:&nbsp;GestionnaireException.php&nbsp;158&nbsp;2010-03-04&nbsp;17:14:36Z&nbsp;jpm&nbsp;$$</span></div></li>
<li><div class="src-line"><a name="a16"></a><span class="src-doc">&nbsp;*&nbsp;</span><span class="src-doc-coretag">@link</span><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;/doc/framework/</span></div></li>
<li><div class="src-line"><a name="a17"></a><span class="src-doc">&nbsp;*</span></div></li>
<li><div class="src-line"><a name="a18"></a><span class="src-doc">&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a19"></a><span class="src-key">class&nbsp;</span><a href="../Framework/GestionnaireException.html">GestionnaireException</a>&nbsp;<span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a20"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a21"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a22"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Liste&nbsp;des&nbsp;exceptions&nbsp;enregistrées</span></div></li>
<li><div class="src-line"><a name="a23"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a24"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">private&nbsp;</span><span class="src-key">static&nbsp;</span><span class="src-var">$exceptions&nbsp;</span>=&nbsp;<span class="src-key">array</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a25"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a26"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a27"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Détermine&nbsp;si&nbsp;l'on&nbsp;affiche&nbsp;ou&nbsp;non&nbsp;le&nbsp;contexte</span></div></li>
<li><div class="src-line"><a name="a28"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a29"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">private&nbsp;</span><span class="src-key">static&nbsp;</span><span class="src-var">$contexte&nbsp;</span>=&nbsp;<span class="src-id">false</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a30"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a31"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a32"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Détermine&nbsp;si&nbsp;l'on&nbsp;loggue&nbsp;ou&nbsp;non&nbsp;les&nbsp;erreurs</span></div></li>
<li><div class="src-line"><a name="a33"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a34"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">private&nbsp;</span><span class="src-key">static&nbsp;</span><span class="src-var">$logger&nbsp;</span>=&nbsp;<span class="src-id">false</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a35"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a36"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a37"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Definit&nbsp;si&nbsp;php&nbsp;est&nbsp;lancé&nbsp;en&nbsp;ligne&nbsp;de&nbsp;commande&nbsp;ou&nbsp;en&nbsp;mode&nbsp;serveur</span></div></li>
<li><div class="src-line"><a name="a38"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a39"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">private&nbsp;</span><span class="src-key">static&nbsp;</span><span class="src-var">$mode&nbsp;</span>=&nbsp;<span class="src-id">php_sapi_name&nbsp;</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a40"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a41"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a42"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;le&nbsp;gestionnaire&nbsp;d'exception&nbsp;est&nbsp;un&nbsp;singleton</span></div></li>
<li><div class="src-line"><a name="a43"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;et&nbsp;possède&nbsp;donc&nbsp;un&nbsp;&quot;pointeur&nbsp;statique&nbsp;sur&nbsp;lui-même&quot;</span></div></li>
<li><div class="src-line"><a name="a44"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a45"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">private&nbsp;</span><span class="src-key">static&nbsp;</span><span class="src-var">$gestionnaireException</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a46"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a47"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a48"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Constructeur&nbsp;avec&nbsp;paramètres&nbsp;optionnel</span></div></li>
<li><div class="src-line"><a name="a49"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@param&nbsp;</span><span class="src-doc-type">bool&nbsp;</span><span class="src-doc">indique&nbsp;si&nbsp;l'on&nbsp;veut&nbsp;afficher&nbsp;ou&nbsp;non&nbsp;le&nbsp;contexte&nbsp;des&nbsp;exceptions&nbsp;(i.e.&nbsp;la&nbsp;trace)</span></div></li>
<li><div class="src-line"><a name="a50"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a51"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">public&nbsp;</span><span class="src-key">function&nbsp;</span><a href="../Framework/GestionnaireException.html#method__construct">__construct</a><span class="src-sym">(</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a52"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-id">self</span><span class="src-sym">::</span><span class="src-var">$exceptions&nbsp;</span>=&nbsp;<span class="src-key">array</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a53"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-id">self</span><span class="src-sym">::</span><span class="src-var">$contexte&nbsp;</span>=&nbsp;<span class="src-id">Config</span><span class="src-sym">::</span><span class="src-id">get</span><span class="src-sym">(</span><span class="src-str">'fw_debogage_contexte'</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a54"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-id">self</span><span class="src-sym">::</span><span class="src-var">$logger&nbsp;</span>=&nbsp;<span class="src-id">Config</span><span class="src-sym">::</span><span class="src-id">get</span><span class="src-sym">(</span><span class="src-str">'fw_log_debogage'</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a55"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-id">self</span><span class="src-sym">::</span><span class="src-var">$mode&nbsp;</span>=&nbsp;<span class="src-id">php_sapi_name</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a56"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a57"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="http://www.php.net/set_exception_handler">set_exception_handler</a><span class="src-sym">(</span><span class="src-key">array</span><span class="src-sym">(</span><a href="http://www.php.net/get_class">get_class</a><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">)</span><span class="src-sym">,</span><span class="src-str">'gererException'</span><span class="src-sym">))</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a58"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="http://www.php.net/set_error_handler">set_error_handler</a><span class="src-sym">(</span><span class="src-key">array</span><span class="src-sym">(</span><a href="http://www.php.net/get_class">get_class</a><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">)</span><span class="src-sym">,</span><span class="src-str">'gererErreur'</span><span class="src-sym">))</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a59"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a60"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a61"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a62"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Renvoie&nbsp;le&nbsp;booleen&nbsp;définissant&nbsp;si&nbsp;l'on&nbsp;affiche&nbsp;le&nbsp;contexte&nbsp;ou&nbsp;non</span></div></li>
<li><div class="src-line"><a name="a63"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a64"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">public&nbsp;</span><span class="src-key">static&nbsp;</span><span class="src-key">function&nbsp;</span><a href="../Framework/GestionnaireException.html#methodgetContexte">getContexte</a><span class="src-sym">(</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a65"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-id">self</span><span class="src-sym">::</span><span class="src-var">$contexte</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a66"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a67"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a68"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a69"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Definit&nbsp;si&nbsp;l'on&nbsp;veut&nbsp;afficher&nbsp;le&nbsp;contexte&nbsp;ou&nbsp;non</span></div></li>
<li><div class="src-line"><a name="a70"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@param&nbsp;</span><span class="src-doc-type">bool&nbsp;</span><span class="src-doc">true&nbsp;si&nbsp;on&nbsp;veut&nbsp;afficher&nbsp;le&nbsp;contexte,&nbsp;false&nbsp;sinon,&nbsp;par&nbsp;défaut&nbsp;vaut&nbsp;false</span></div></li>
<li><div class="src-line"><a name="a71"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a72"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">public&nbsp;</span><span class="src-key">function&nbsp;</span><a href="../Framework/GestionnaireException.html#methodsetContexte">setContexte</a><span class="src-sym">(</span><span class="src-var">$contexte</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a73"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-id">self</span><span class="src-sym">::</span><span class="src-var">$contexte&nbsp;</span>=&nbsp;<span class="src-var">$contexte</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a74"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a75"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a76"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**&nbsp;Fonction&nbsp;d'accès&nbsp;au&nbsp;singleton</span></div></li>
<li><div class="src-line"><a name="a77"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@return&nbsp;</span><span class="src-doc-type">GestionnaireErreur&nbsp;</span><span class="src-doc">le&nbsp;gestionnaire&nbsp;d'exceptions&nbsp;courant</span></div></li>
<li><div class="src-line"><a name="a78"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a79"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">public&nbsp;</span><span class="src-key">static&nbsp;</span><span class="src-key">function&nbsp;</span><a href="../Framework/GestionnaireException.html#methodgetInstance">getInstance</a><span class="src-sym">(</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a80"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-id">self</span><span class="src-sym">::</span><span class="src-var">$gestionnaireException&nbsp;</span>instanceof&nbsp;<span class="src-id">GestionnaireException</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a81"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-id">self</span><span class="src-sym">::</span><span class="src-var">$gestionnaireException</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a82"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a83"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-id">self</span><span class="src-sym">::</span><span class="src-var">$gestionnaireException&nbsp;</span>=&nbsp;<span class="src-key">new&nbsp;</span><span class="src-id">GestionnaireException</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a84"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a85"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-id">self</span><span class="src-sym">::</span><span class="src-var">$gestionnaireException</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a86"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a87"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a88"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a89"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Fonction&nbsp;de&nbsp;gestion&nbsp;des&nbsp;exceptions,&nbsp;remplace&nbsp;le&nbsp;handler&nbsp;par&nbsp;défaut</span></div></li>
<li><div class="src-line"><a name="a90"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@param&nbsp;</span><span class="src-doc-type">Exception&nbsp;</span><span class="src-doc-var">$e&nbsp;</span><span class="src-doc">l'exception&nbsp;à&nbsp;traiter</span></div></li>
<li><div class="src-line"><a name="a91"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a92"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">public&nbsp;</span><span class="src-key">static&nbsp;</span><span class="src-key">function&nbsp;</span><a href="../Framework/GestionnaireException.html#methodgererException">gererException</a><span class="src-sym">(</span><span class="src-id">Exception&nbsp;</span><span class="src-var">$e</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a93"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;pour&nbsp;le&nbsp;moment&nbsp;on&nbsp;se&nbsp;contente&nbsp;de&nbsp;l'ajouter&nbsp;au&nbsp;tableau&nbsp;et&nbsp;de&nbsp;les&nbsp;afficher</span></div></li>
<li><div class="src-line"><a name="a94"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-id">self</span><span class="src-sym">::</span><span class="src-var">$exceptions</span><span class="src-sym">[</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-var">$e</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a95"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a96"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;si&nbsp;on&nbsp;doit&nbsp;logger&nbsp;on&nbsp;envoie&nbsp;l'exception&nbsp;au&nbsp;loggeur</span></div></li>
<li><div class="src-line"><a name="a97"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-id">self</span><span class="src-sym">::</span><span class="src-var">$logger</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a98"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-id">self</span><span class="src-sym">::</span><span class="src-id">loggerException</span><span class="src-sym">(</span><span class="src-var">$e</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a99"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a100"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a101"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a102"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a103"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Gère&nbsp;les&nbsp;erreurs&nbsp;en&nbsp;les&nbsp;convertissant&nbsp;en&nbsp;exceptions&nbsp;(remplace&nbsp;la&nbsp;fonction&nbsp;gestion&nbsp;d'erreurs&nbsp;native&nbsp;de&nbsp;php)</span></div></li>
<li><div class="src-line"><a name="a104"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@param&nbsp;</span><span class="src-doc-type">int&nbsp;</span><span class="src-doc-var">$niveau&nbsp;</span><span class="src-doc">le&nbsp;niveau&nbsp;de&nbsp;l'erreur</span></div></li>
<li><div class="src-line"><a name="a105"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@param&nbsp;</span><span class="src-doc-type">string&nbsp;</span><span class="src-doc-var">$message&nbsp;</span><span class="src-doc">le&nbsp;message&nbsp;associé&nbsp;à&nbsp;l'erreur</span></div></li>
<li><div class="src-line"><a name="a106"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@param&nbsp;</span><span class="src-doc-type">string&nbsp;</span><span class="src-doc-var">$fichier&nbsp;</span><span class="src-doc">le&nbsp;nom&nbsp;du&nbsp;fichier&nbsp;où&nbsp;l'erreur&nbsp;s'est&nbsp;produite</span></div></li>
<li><div class="src-line"><a name="a107"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@param&nbsp;</span><span class="src-doc-type">int&nbsp;</span><span class="src-doc-var">$ligne&nbsp;</span><span class="src-doc">la&nbsp;ligne&nbsp;où&nbsp;l'erreur&nbsp;s'est&nbsp;produite</span></div></li>
<li><div class="src-line"><a name="a108"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@param&nbsp;</span><span class="src-doc-type">string&nbsp;</span><span class="src-doc-var">$contexte&nbsp;</span><span class="src-doc">le&nbsp;contexte&nbsp;associé&nbsp;à&nbsp;l'erreur</span></div></li>
<li><div class="src-line"><a name="a109"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a110"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">public&nbsp;</span><span class="src-key">static&nbsp;</span><span class="src-key">function&nbsp;</span><a href="../Framework/GestionnaireException.html#methodgererErreur">gererErreur</a><span class="src-sym">(</span><span class="src-var">$niveau</span><span class="src-sym">,&nbsp;&nbsp;</span><span class="src-var">$message</span><span class="src-sym">,&nbsp;&nbsp;</span><span class="src-var">$fichier</span><span class="src-sym">,&nbsp;&nbsp;</span><span class="src-var">$ligne</span><span class="src-sym">,&nbsp;&nbsp;</span><span class="src-var">$contexte</span><span class="src-sym">)</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a111"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;si&nbsp;aucun&nbsp;rapport&nbsp;d'erreur,&nbsp;on&nbsp;sort&nbsp;directement</span></div></li>
<li><div class="src-line"><a name="a112"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><a href="http://www.php.net/error_reporting">error_reporting</a><span class="src-sym">(</span><span class="src-sym">)&nbsp;</span>==&nbsp;<span class="src-num">0</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a113"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a114"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a115"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a116"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;sinon&nbsp;on&nbsp;crée&nbsp;une&nbsp;exception</span></div></li>
<li><div class="src-line"><a name="a117"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$e&nbsp;</span>=&nbsp;<span class="src-key">new&nbsp;</span><span class="src-id">ErrorException</span><span class="src-sym">(</span><span class="src-var">$message</span><span class="src-sym">,&nbsp;</span><span class="src-num">0</span><span class="src-sym">,&nbsp;</span><span class="src-var">$niveau</span><span class="src-sym">,&nbsp;</span><span class="src-var">$fichier</span><span class="src-sym">,&nbsp;</span><span class="src-var">$ligne</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a118"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;que&nbsp;l'on&nbsp;donne&nbsp;au&nbsp;tableau&nbsp;d'exceptions</span></div></li>
<li><div class="src-line"><a name="a119"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-id">self</span><span class="src-sym">::</span><span class="src-var">$exceptions</span><span class="src-sym">[</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-var">$e</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a120"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;on&nbsp;la&nbsp;logge&nbsp;si&nbsp;nécéssaire</span></div></li>
<li><div class="src-line"><a name="a121"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-id">self</span><span class="src-sym">::</span><span class="src-var">$logger</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a122"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-id">self</span><span class="src-sym">::</span><span class="src-id">loggerException</span><span class="src-sym">(</span><span class="src-var">$e</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a123"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a124"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a125"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a126"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a127"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a128"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Renvoie&nbsp;les&nbsp;exceptions&nbsp;au&nbsp;format&nbsp;(X)HTML</span></div></li>
<li><div class="src-line"><a name="a129"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;ou&nbsp;bien&nbsp;au&nbsp;format&nbsp;texte&nbsp;suivant&nbsp;le&nbsp;mode&nbsp;d'utilisation&nbsp;de&nbsp;PHP</span></div></li>
<li><div class="src-line"><a name="a130"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a131"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">public&nbsp;</span><span class="src-key">static&nbsp;</span><span class="src-key">function&nbsp;</span><a href="../Framework/GestionnaireException.html#methodgetExceptions">getExceptions</a><span class="src-sym">(</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a132"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$retour&nbsp;</span>=&nbsp;<span class="src-str">''</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a133"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">foreach&nbsp;</span><span class="src-sym">(</span><span class="src-id">self</span><span class="src-sym">::</span><span class="src-var">$exceptions&nbsp;</span><span class="src-key">as&nbsp;</span><span class="src-var">$cle&nbsp;</span>=&gt;&nbsp;<span class="src-var">$e</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a134"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">switch&nbsp;</span><span class="src-sym">(</span><span class="src-id">self</span><span class="src-sym">::</span><span class="src-var">$mode</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a135"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">case&nbsp;</span><span class="src-str">'cli'&nbsp;</span>:</div></li>
<li><div class="src-line"><a name="a136"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$retour&nbsp;</span>.=&nbsp;<span class="src-var">$e</span><span class="src-sym">-&gt;</span><span class="src-id">getMessage</span><span class="src-sym">(</span><span class="src-sym">)</span>.<span class="src-str">&quot;\n&quot;</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a137"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$retour&nbsp;</span>.=&nbsp;<span class="src-str">'Fichier&nbsp;:&nbsp;'</span>.<span class="src-var">$e</span><span class="src-sym">-&gt;</span><span class="src-id">getFile</span><span class="src-sym">(</span><span class="src-sym">)</span>.<span class="src-str">&quot;\n&quot;</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a138"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$retour&nbsp;</span>.=&nbsp;<span class="src-str">'Ligne&nbsp;:&nbsp;'</span>.<span class="src-var">$e</span><span class="src-sym">-&gt;</span><span class="src-id">getLine</span><span class="src-sym">(</span><span class="src-sym">)</span>.<span class="src-str">&quot;\n&quot;</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a139"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-id">self</span><span class="src-sym">::</span><span class="src-id">getContexte</span><span class="src-sym">(</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a140"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$retour&nbsp;</span>.=&nbsp;<span class="src-str">'Contexte&nbsp;:&nbsp;'</span>.<span class="src-str">&quot;\n&quot;</span>.<a href="http://www.php.net/print_r">print_r</a><span class="src-sym">(</span><span class="src-var">$e</span><span class="src-sym">-&gt;</span><span class="src-id">getTraceAsString</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">,&nbsp;</span><span class="src-id">true</span><span class="src-sym">)</span>.<span class="src-str">&quot;\n&quot;</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a141"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a142"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">break</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a143"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">default</span>:</div></li>
<li><div class="src-line"><a name="a144"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$retour&nbsp;</span>.=&nbsp;<span class="src-str">'&lt;pre&nbsp;class=&quot;debogage&quot;&gt;'</span>.<span class="src-str">&quot;\n&quot;</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a145"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$retour&nbsp;</span>.=&nbsp;<span class="src-var">$e</span><span class="src-sym">-&gt;</span><span class="src-id">getMessage</span><span class="src-sym">(</span><span class="src-sym">)</span>.<span class="src-str">&quot;\n&quot;</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a146"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$retour&nbsp;</span>.=&nbsp;<span class="src-str">'&lt;span&nbsp;class=&quot;debogage_fichier&quot;&gt;'</span>.<span class="src-str">'Fichier&nbsp;:&nbsp;'</span>.<span class="src-var">$e</span><span class="src-sym">-&gt;</span><span class="src-id">getFile</span><span class="src-sym">(</span><span class="src-sym">)</span>.<span class="src-str">'&lt;/span&gt;'</span>.<span class="src-str">&quot;\n&quot;</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a147"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$retour&nbsp;</span>.=&nbsp;<span class="src-str">'&lt;span&nbsp;class=&quot;debogage_ligne&quot;&gt;'</span>.<span class="src-str">'Ligne&nbsp;:&nbsp;'</span>.<span class="src-var">$e</span><span class="src-sym">-&gt;</span><span class="src-id">getLine</span><span class="src-sym">(</span><span class="src-sym">)</span>.<span class="src-str">'&lt;/span&gt;'</span>.<span class="src-str">&quot;\n&quot;</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a148"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$retour&nbsp;</span>.=&nbsp;<span class="src-str">'&lt;/pre&gt;'</span>.<span class="src-str">&quot;\n&quot;</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a149"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a150"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-id">self</span><span class="src-sym">::</span><span class="src-id">getContexte</span><span class="src-sym">(</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a151"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$retour&nbsp;</span>.=&nbsp;<span class="src-str">'&lt;pre&gt;'</span>.<span class="src-str">&quot;\n&quot;</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a152"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$retour&nbsp;</span>.=&nbsp;<span class="src-str">'&lt;strong&gt;Contexte&nbsp;:&nbsp;&lt;/strong&gt;'</span>.<span class="src-str">&quot;\n&quot;</span>.<a href="http://www.php.net/print_r">print_r</a><span class="src-sym">(</span><span class="src-var">$e</span><span class="src-sym">-&gt;</span><span class="src-id">getTraceAsString</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">,&nbsp;</span><span class="src-id">true</span><span class="src-sym">)</span>.<span class="src-str">&quot;\n&quot;</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a153"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$retour&nbsp;</span>.=&nbsp;<span class="src-str">'&lt;/pre&gt;'</span>.<span class="src-str">&quot;\n&quot;</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a154"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a155"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a156"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;Nous&nbsp;vidons&nbsp;le&nbsp;tableau&nbsp;des&nbsp;exceptions&nbsp;au&nbsp;fur&nbsp;et&nbsp;à&nbsp;mesure</span></div></li>
<li><div class="src-line"><a name="a157"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;unset<span class="src-sym">(</span><span class="src-id">self</span><span class="src-sym">::</span><span class="src-var">$exceptions</span><span class="src-sym">[</span><span class="src-var">$cle</span><span class="src-sym">]</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a158"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a159"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$retour</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a160"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a161"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a162"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a163"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;logge&nbsp;une&nbsp;exception&nbsp;donnée&nbsp;sous&nbsp;une&nbsp;forme&nbsp;lisible</span></div></li>
<li><div class="src-line"><a name="a164"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@param&nbsp;</span><span class="src-doc-type">Exception&nbsp;</span><span class="src-doc">&nbsp;&nbsp;&nbsp;</span><span class="src-doc-var">$e&nbsp;</span><span class="src-doc">l'exception&nbsp;à&nbsp;logger</span></div></li>
<li><div class="src-line"><a name="a165"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a166"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">private&nbsp;</span><span class="src-key">static&nbsp;</span><span class="src-key">function&nbsp;</span><span class="src-id">loggerException</span><span class="src-sym">(</span><span class="src-var">$e</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a167"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$erreur&nbsp;</span>=&nbsp;<span class="src-str">''</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a168"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$erreur&nbsp;</span>.=&nbsp;<span class="src-var">$e</span><span class="src-sym">-&gt;</span><span class="src-id">getMessage</span><span class="src-sym">(</span><span class="src-sym">)</span>.<span class="src-str">&quot;\n&quot;</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a169"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$erreur&nbsp;</span>.=&nbsp;<span class="src-str">'Fichier&nbsp;:&nbsp;'</span>.<span class="src-var">$e</span><span class="src-sym">-&gt;</span><span class="src-id">getFile</span><span class="src-sym">(</span><span class="src-sym">)</span>.<span class="src-str">&quot;\n&quot;</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a170"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$erreur&nbsp;</span>.=&nbsp;<span class="src-str">'Ligne&nbsp;:&nbsp;'</span>.<span class="src-var">$e</span><span class="src-sym">-&gt;</span><span class="src-id">getLine</span><span class="src-sym">(</span><span class="src-sym">)</span>.<span class="src-str">&quot;\n&quot;</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a171"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-id">self</span><span class="src-sym">::</span><span class="src-id">getContexte</span><span class="src-sym">(</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a172"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$erreur&nbsp;</span>.=&nbsp;<span class="src-str">'Contexte&nbsp;:&nbsp;'</span>.<span class="src-str">&quot;\n&quot;</span>.<a href="http://www.php.net/print_r">print_r</a><span class="src-sym">(</span><span class="src-var">$e</span><span class="src-sym">-&gt;</span><span class="src-id">getTraceAsString</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">,&nbsp;</span><span class="src-id">true</span><span class="src-sym">)</span>.<span class="src-str">&quot;\n&quot;</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a173"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a174"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$erreur&nbsp;</span>.=&nbsp;<span class="src-str">&quot;\n&quot;</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a175"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-id"><a href="../Framework/Log.html">Log</a></span><span class="src-sym">::</span><a href="../Framework/Log.html#methodajouterEntree">ajouterEntree</a><span class="src-sym">(</span><span class="src-str">'erreurs'</span><span class="src-sym">,</span><span class="src-var">$erreur</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a176"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a177"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a178"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">public&nbsp;</span><span class="src-key">function&nbsp;</span><a href="../Framework/GestionnaireException.html#method__destruct">__destruct</a><span class="src-sym">(</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a179"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;Si&nbsp;des&nbsp;erreurs&nbsp;n'ont&nbsp;pas&nbsp;été&nbsp;affichée&nbsp;nous&nbsp;forçons&nbsp;leur&nbsp;affichage</span></div></li>
<li><div class="src-line"><a name="a180"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><a href="http://www.php.net/count">count</a><span class="src-sym">(</span><span class="src-id">self</span><span class="src-sym">::</span><span class="src-var">$exceptions</span><span class="src-sym">)&nbsp;</span>&gt;&nbsp;<span class="src-num">0</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a181"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;echo&nbsp;<span class="src-id">self</span><span class="src-sym">::</span><span class="src-id">getExceptions</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a182"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a183"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a184"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a185"></a><span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a186"></a><span class="src-php">?&gt;</span></div></li>
</ol>
</div>
<div class="credit">
<hr />
Documentation generated on Thu, 04 Mar 2010 19:27:32 +0100 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.3</a>
</div>
</td></tr></table>
</td>
</tr>
</table>
 
</body>
</html>
/tags/v0.3-aleaume/doc/HTMLSmartyConverter/__filesource/fsource_Framework__Controleur.php.html
New file
0,0 → 1,166
<html>
<head>
<title>File Source for Controleur.php</title>
<meta http-equiv='Content-Type' content='text/html; charset=UTF-8'/>
<link rel="stylesheet" type="text/css" href="../media/style.css">
</head>
<body>
 
<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%">
<tr>
<td class="header_top">Framework</td>
</tr>
<tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr>
<tr>
<td class="header_menu">
[ <a href="../classtrees_Framework.html" class="menu">class tree: Framework</a> ]
[ <a href="../elementindex_Framework.html" class="menu">index: Framework</a> ]
[ <a href="../elementindex.html" class="menu">all elements</a> ]
</td>
</tr>
<tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr>
</table>
 
<table width="100%" border="0" cellpadding="0" cellspacing="0">
<tr valign="top">
<td width="200" class="menu">
<b>Packages:</b><br />
<a href="../li_Framework.html">Framework</a><br />
<br /><br />
</td>
<td>
<table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top">
 
<h1 align="center">Source for file Controleur.php</h1>
<p>Documentation is available at <a href="../Framework/_Controleur.php.html">Controleur.php</a></p>
<div class="src-code">
<ol><li><div class="src-line"><a name="a1"></a><span class="src-php">&lt;?php</span></div></li>
<li><div class="src-line"><a name="a2"></a><span class="src-comm">//&nbsp;declare(encoding='UTF-8');</span></div></li>
<li><div class="src-line"><a name="a3"></a><span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a4"></a><span class="src-doc">&nbsp;*&nbsp;Classe&nbsp;Controleur,&nbsp;coeur&nbsp;d'une&nbsp;application,&nbsp;c'est&nbsp;normalement&nbsp;la&nbsp;seule&nbsp;classe&nbsp;d'une&nbsp;application</span></div></li>
<li><div class="src-line"><a name="a5"></a><span class="src-doc">&nbsp;*&nbsp;qui&nbsp;devrait&nbsp;être&nbsp;appelée&nbsp;de&nbsp;l'extérieur.</span></div></li>
<li><div class="src-line"><a name="a6"></a><span class="src-doc">&nbsp;*&nbsp;Elle&nbsp;est&nbsp;abstraite&nbsp;donc&nbsp;doit&nbsp;obligatoirement&nbsp;être&nbsp;étendue.</span></div></li>
<li><div class="src-line"><a name="a7"></a><span class="src-doc">&nbsp;*</span></div></li>
<li><div class="src-line"><a name="a8"></a><span class="src-doc">&nbsp;*&nbsp;</span><span class="src-doc-coretag">@category</span><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;php5</span></div></li>
<li><div class="src-line"><a name="a9"></a><span class="src-doc">&nbsp;*&nbsp;</span><span class="src-doc-coretag">@package</span><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Framework</span></div></li>
<li><div class="src-line"><a name="a10"></a><span class="src-doc">&nbsp;*&nbsp;</span><span class="src-doc-coretag">@author</span><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Aurélien&nbsp;PERONNET&nbsp;&lt;aurelien@tela-botanica.org&gt;</span></div></li>
<li><div class="src-line"><a name="a11"></a><span class="src-doc">&nbsp;*&nbsp;</span><span class="src-doc-coretag">@author</span><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Jean-Pascal&nbsp;MILCENT&nbsp;&lt;jpm@tela-botanica.org&gt;</span></div></li>
<li><div class="src-line"><a name="a12"></a><span class="src-doc">&nbsp;*&nbsp;</span><span class="src-doc-coretag">@copyright</span><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;2009&nbsp;Tela-Botanica</span></div></li>
<li><div class="src-line"><a name="a13"></a><span class="src-doc">&nbsp;*&nbsp;</span><span class="src-doc-coretag">@license</span><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;http://www.cecill.info/licences/Licence_CeCILL_V2-fr.txt&nbsp;Licence&nbsp;CECILL</span></div></li>
<li><div class="src-line"><a name="a14"></a><span class="src-doc">&nbsp;*&nbsp;</span><span class="src-doc-coretag">@license</span><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;http://www.gnu.org/licenses/gpl.html&nbsp;Licence&nbsp;GNU-GPL</span></div></li>
<li><div class="src-line"><a name="a15"></a><span class="src-doc">&nbsp;*&nbsp;</span><span class="src-doc-coretag">@version</span><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;SVN:&nbsp;$$Id:&nbsp;Controleur.php&nbsp;158&nbsp;2010-03-04&nbsp;17:14:36Z&nbsp;jpm&nbsp;$$</span></div></li>
<li><div class="src-line"><a name="a16"></a><span class="src-doc">&nbsp;*&nbsp;</span><span class="src-doc-coretag">@link</span><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;/doc/framework/</span></div></li>
<li><div class="src-line"><a name="a17"></a><span class="src-doc">&nbsp;*</span></div></li>
<li><div class="src-line"><a name="a18"></a><span class="src-doc">&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a19"></a><span class="src-key">abstract&nbsp;</span><span class="src-key">class&nbsp;</span><a href="../Framework/Controleur.html">Controleur</a>&nbsp;<span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a20"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a21"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Registre&nbsp;global,&nbsp;normalement&nbsp;accessible&nbsp;partout</span></div></li>
<li><div class="src-line"><a name="a22"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a23"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">private&nbsp;</span><span class="src-var">$registre</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a24"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a25"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a26"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Constructeur&nbsp;par&nbsp;défaut</span></div></li>
<li><div class="src-line"><a name="a27"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a28"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">public&nbsp;</span><span class="src-key">function&nbsp;</span><a href="../Framework/Controleur.html#method__construct">__construct</a><span class="src-sym">(</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a29"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-id"><a href="../Framework/Config.html">Config</a></span><span class="src-sym">::</span><a href="../Framework/Config.html#methodexiste">existe</a><span class="src-sym">(</span><span class="src-str">'fw_html_errors'</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a30"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="http://www.php.net/ini_set">ini_set</a><span class="src-sym">(</span><span class="src-str">'html_errors'</span><span class="src-sym">,&nbsp;</span><span class="src-id"><a href="../Framework/Config.html">Config</a></span><span class="src-sym">::</span><a href="../Framework/Config.html#methodget">get</a><span class="src-sym">(</span><span class="src-str">'fw_html_errors'</span><span class="src-sym">))</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a31"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a32"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a33"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">registre&nbsp;</span>=&nbsp;<span class="src-id"><a href="../Framework/Registre.html">Registre</a></span><span class="src-sym">::</span><a href="../Framework/Registre.html#methodgetInstance">getInstance</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a34"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">registre</span><span class="src-sym">-&gt;</span><span class="src-id">set</span><span class="src-sym">(</span><span class="src-str">'base_chemin_modele'</span><span class="src-sym">,&nbsp;</span><span class="src-id"><a href="../Framework/Config.html">Config</a></span><span class="src-sym">::</span><a href="../Framework/Config.html#methodget">get</a><span class="src-sym">(</span><span class="src-str">'chemin_modeles'</span><span class="src-sym">))</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a35"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">registre</span><span class="src-sym">-&gt;</span><span class="src-id">set</span><span class="src-sym">(</span><span class="src-str">'base_chemin_squelette'</span><span class="src-sym">,&nbsp;</span><span class="src-id"><a href="../Framework/Config.html">Config</a></span><span class="src-sym">::</span><a href="../Framework/Config.html#methodget">get</a><span class="src-sym">(</span><span class="src-str">'chemin_squelettes'</span><span class="src-sym">))</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a36"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">registre</span><span class="src-sym">-&gt;</span><span class="src-id">set</span><span class="src-sym">(</span><span class="src-str">'base_chemin_controleur'</span><span class="src-sym">,&nbsp;</span><span class="src-id"><a href="../Framework/Config.html">Config</a></span><span class="src-sym">::</span><a href="../Framework/Config.html#methodget">get</a><span class="src-sym">(</span><span class="src-str">'chemin_controleurs'</span><span class="src-sym">))</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a37"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">registre</span><span class="src-sym">-&gt;</span><span class="src-id">set</span><span class="src-sym">(</span><span class="src-str">'base_url_application'</span><span class="src-sym">,&nbsp;</span><span class="src-key">new&nbsp;</span><span class="src-id"><a href="../Framework/Url.html">Url</a></span><span class="src-sym">(</span><span class="src-id"><a href="../Framework/Config.html">Config</a></span><span class="src-sym">::</span><a href="../Framework/Config.html#methodget">get</a><span class="src-sym">(</span><span class="src-str">'url_base'</span><span class="src-sym">)))</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a38"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a39"></a>&nbsp;</div></li>
<li><div class="src-line"><a name="a40"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a41"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Charge&nbsp;un&nbsp;modele&nbsp;donné&nbsp;et&nbsp;le&nbsp;rend&nbsp;disponible&nbsp;sous&nbsp;la&nbsp;forme&nbsp;$this-&gt;nom_modele</span></div></li>
<li><div class="src-line"><a name="a42"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;*</span></div></li>
<li><div class="src-line"><a name="a43"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@param&nbsp;</span><span class="src-doc-type">string&nbsp;</span><span class="src-doc-var">$nom_modele&nbsp;</span><span class="src-doc">le&nbsp;nom&nbsp;du&nbsp;modèle&nbsp;à&nbsp;charger</span></div></li>
<li><div class="src-line"><a name="a44"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;*</span></div></li>
<li><div class="src-line"><a name="a45"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@return&nbsp;</span><span class="src-doc-type">boolean&nbsp;</span><span class="src-doc">false&nbsp;si&nbsp;le&nbsp;chargement&nbsp;a&nbsp;échoué,&nbsp;sinon&nbsp;true.</span></div></li>
<li><div class="src-line"><a name="a46"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a47"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">final&nbsp;</span><span class="src-key">protected&nbsp;</span><span class="src-key">function&nbsp;</span><a href="../Framework/Controleur.html#methodchargerModele">chargerModele</a><span class="src-sym">(</span><span class="src-var">$nom_modele</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a48"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$sortie&nbsp;</span>=&nbsp;<span class="src-id">true</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a49"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$modele&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Framework/Controleur.html#methodgetModele">getModele</a><span class="src-sym">(</span><span class="src-var">$nom_modele</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a50"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$modele&nbsp;</span>!==&nbsp;<span class="src-id">false</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a51"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">$nom_modele&nbsp;</span>=&nbsp;<span class="src-key">new&nbsp;</span><span class="src-var">$nom_modele</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a52"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}&nbsp;</span><span class="src-key">else&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a53"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$sortie&nbsp;</span>=&nbsp;<span class="src-id">false</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a54"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a55"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$sortie</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a56"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a57"></a>&nbsp;&nbsp;&nbsp;&nbsp;</div></li>
<li><div class="src-line"><a name="a58"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a59"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Retourne&nbsp;un&nbsp;modele&nbsp;donné</span></div></li>
<li><div class="src-line"><a name="a60"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;*</span></div></li>
<li><div class="src-line"><a name="a61"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@param&nbsp;</span><span class="src-doc-type">string&nbsp;</span><span class="src-doc-var">$nom_modele&nbsp;</span><span class="src-doc">le&nbsp;nom&nbsp;du&nbsp;modèle&nbsp;à&nbsp;charger</span></div></li>
<li><div class="src-line"><a name="a62"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;*</span></div></li>
<li><div class="src-line"><a name="a63"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@return&nbsp;</span><span class="src-doc-type">mixed&nbsp;</span><span class="src-doc">false&nbsp;si&nbsp;le&nbsp;chargement&nbsp;a&nbsp;échoué,&nbsp;sinon&nbsp;l'objet&nbsp;du&nbsp;modèle&nbsp;demandé.</span></div></li>
<li><div class="src-line"><a name="a64"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a65"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">final&nbsp;</span><span class="src-key">protected&nbsp;</span><span class="src-key">function&nbsp;</span><a href="../Framework/Controleur.html#methodgetModele">getModele</a><span class="src-sym">(</span><span class="src-var">$nom_modele</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a66"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$sortie&nbsp;</span>=&nbsp;<span class="src-id">false</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a67"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$chemin_modele&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">registre</span><span class="src-sym">-&gt;</span><span class="src-id">get</span><span class="src-sym">(</span><span class="src-str">'base_chemin_modele'</span><span class="src-sym">)</span>.<span class="src-var">$nom_modele</span>.<span class="src-str">'.php'</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a68"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><a href="http://www.php.net/file_exists">file_exists</a><span class="src-sym">(</span><span class="src-var">$chemin_modele</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a69"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-inc">include_once&nbsp;</span><span class="src-var">$chemin_modele</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a70"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><a href="http://www.php.net/class_exists">class_exists</a><span class="src-sym">(</span><span class="src-var">$nom_modele</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a71"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$sortie&nbsp;</span>=&nbsp;<span class="src-key">new&nbsp;</span><span class="src-var">$nom_modele</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a72"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a73"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a74"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$sortie</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a75"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a76"></a>&nbsp;&nbsp;&nbsp;&nbsp;</div></li>
<li><div class="src-line"><a name="a77"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a78"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Fonction&nbsp;prenant&nbsp;en&nbsp;paramètre&nbsp;le&nbsp;nom&nbsp;d'un&nbsp;squelette&nbsp;et&nbsp;un&nbsp;tableau&nbsp;associatif&nbsp;de&nbsp;données,</span></div></li>
<li><div class="src-line"><a name="a79"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;en&nbsp;extrait&nbsp;les&nbsp;variables,&nbsp;charge&nbsp;le&nbsp;squelette&nbsp;et&nbsp;retourne&nbsp;le&nbsp;résultat&nbsp;des&nbsp;deux&nbsp;combinés.</span></div></li>
<li><div class="src-line"><a name="a80"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*</span></div></li>
<li><div class="src-line"><a name="a81"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@param&nbsp;</span><span class="src-doc-type">String&nbsp;</span><span class="src-doc-var">$nom_squelette&nbsp;</span><span class="src-doc">le&nbsp;nom&nbsp;du&nbsp;squelette</span></div></li>
<li><div class="src-line"><a name="a82"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@param&nbsp;</span><span class="src-doc-type">Array&nbsp;</span><span class="src-doc">&nbsp;</span><span class="src-doc-var">$donnees&nbsp;</span><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;un&nbsp;tableau&nbsp;associatif&nbsp;contenant&nbsp;les&nbsp;variables&nbsp;a&nbsp;injecter&nbsp;dans&nbsp;la&nbsp;vue</span></div></li>
<li><div class="src-line"><a name="a83"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*</span></div></li>
<li><div class="src-line"><a name="a84"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@return&nbsp;</span><span class="src-doc-type">boolean&nbsp;</span><span class="src-doc">false&nbsp;si&nbsp;la&nbsp;vue&nbsp;n'existe&nbsp;pas,&nbsp;sinon&nbsp;la&nbsp;chaine&nbsp;résultat.</span></div></li>
<li><div class="src-line"><a name="a85"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a86"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">final&nbsp;</span><span class="src-key">protected&nbsp;</span><span class="src-key">function&nbsp;</span><a href="../Framework/Controleur.html#methodgetVue">getVue</a><span class="src-sym">(</span><span class="src-var">$nom_squelette</span><span class="src-sym">,&nbsp;</span><span class="src-var">$donnees&nbsp;</span>=&nbsp;<span class="src-key">array</span><span class="src-sym">(</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a87"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$chemin_squelette&nbsp;</span>=&nbsp;<span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">registre</span><span class="src-sym">-&gt;</span><span class="src-id">get</span><span class="src-sym">(</span><span class="src-str">'base_chemin_squelette'</span><span class="src-sym">))</span>.<span class="src-var">$nom_squelette</span>.<span class="src-str">'.tpl.html'</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a88"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$sortie&nbsp;</span>=&nbsp;<span class="src-id"><a href="../Framework/SquelettePhp.html">SquelettePhp</a></span><span class="src-sym">::</span><a href="../Framework/SquelettePhp.html#methodanalyser">analyser</a><span class="src-sym">(</span><span class="src-var">$chemin_squelette</span><span class="src-sym">,&nbsp;</span><span class="src-var">$donnees</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a89"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$sortie</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a90"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a91"></a>&nbsp;&nbsp;&nbsp;&nbsp;</div></li>
<li><div class="src-line"><a name="a92"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li>
<li><div class="src-line"><a name="a93"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Fonction&nbsp;prenant&nbsp;en&nbsp;paramètre&nbsp;le&nbsp;nom&nbsp;d'un&nbsp;squelette&nbsp;et&nbsp;un&nbsp;tableau&nbsp;associatif&nbsp;de&nbsp;données,</span></div></li>
<li><div class="src-line"><a name="a94"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;en&nbsp;extrait&nbsp;les&nbsp;variables,&nbsp;charge&nbsp;le&nbsp;squelette&nbsp;et&nbsp;crée&nbsp;une&nbsp;variable&nbsp;de&nbsp;classe&nbsp;portant&nbsp;le&nbsp;nom&nbsp;du&nbsp;squelette</span></div></li>
<li><div class="src-line"><a name="a95"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;contenant&nbsp;les&nbsp;deux&nbsp;combinés.</span></div></li>
<li><div class="src-line"><a name="a96"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*</span></div></li>
<li><div class="src-line"><a name="a97"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@param&nbsp;</span><span class="src-doc-type">String&nbsp;</span><span class="src-doc-var">$nom_squelette&nbsp;</span><span class="src-doc">le&nbsp;nom&nbsp;du&nbsp;squelette</span></div></li>
<li><div class="src-line"><a name="a98"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@param&nbsp;</span><span class="src-doc-type">Array&nbsp;</span><span class="src-doc">&nbsp;</span><span class="src-doc-var">$donnees&nbsp;</span><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;un&nbsp;tableau&nbsp;associatif&nbsp;contenant&nbsp;les&nbsp;variables&nbsp;a&nbsp;injecter&nbsp;dans&nbsp;la&nbsp;vue</span></div></li>
<li><div class="src-line"><a name="a99"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*</span></div></li>
<li><div class="src-line"><a name="a100"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@return&nbsp;</span><span class="src-doc-type">boolean&nbsp;</span><span class="src-doc">false&nbsp;si&nbsp;la&nbsp;vue&nbsp;n'existe&nbsp;pas,&nbsp;sinon&nbsp;true.</span></div></li>
<li><div class="src-line"><a name="a101"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li>
<li><div class="src-line"><a name="a102"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">final&nbsp;</span><span class="src-key">protected&nbsp;</span><span class="src-key">function&nbsp;</span><a href="../Framework/Controleur.html#methodchargerVue">chargerVue</a><span class="src-sym">(</span><span class="src-var">$nom_squelette</span><span class="src-sym">,&nbsp;</span><span class="src-var">$donnees&nbsp;</span>=&nbsp;<span class="src-key">array</span><span class="src-sym">(</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a103"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$sortie&nbsp;</span>=&nbsp;<span class="src-id">false</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a104"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$rendu&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Framework/Controleur.html#methodgetVue">getVue</a><span class="src-sym">(</span><span class="src-var">$nom_squelette</span><span class="src-sym">,&nbsp;</span><span class="src-var">$donnees</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a105"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$rendu&nbsp;</span>!==&nbsp;<span class="src-id">false</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li>
<li><div class="src-line"><a name="a106"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;Création&nbsp;d'une&nbsp;variable&nbsp;de&nbsp;classe&nbsp;contenant&nbsp;le&nbsp;rendu</span></div></li>
<li><div class="src-line"><a name="a107"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">$nom_squelette&nbsp;</span>=&nbsp;<span class="src-var">$rendu</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a108"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$sortie&nbsp;</span>=&nbsp;<span class="src-id">true</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a109"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a110"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$sortie</span><span class="src-sym">;</span></div></li>
<li><div class="src-line"><a name="a111"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a112"></a><span class="src-sym">}</span></div></li>
<li><div class="src-line"><a name="a113"></a><span class="src-php">?&gt;</span></div></li>
</ol>
</div>
<div class="credit">
<hr />
Documentation generated on Thu, 04 Mar 2010 19:27:31 +0100 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.3</a>
</div>
</td></tr></table>
</td>
</tr>
</table>
 
</body>
</html>
/tags/v0.3-aleaume/doc/HTMLSmartyConverter/errors.html
New file
0,0 → 1,118
<html>
<head>
<title>phpDocumentor Parser Errors and Warnings</title>
<meta http-equiv='Content-Type' content='text/html; charset=UTF-8'/>
<link rel="stylesheet" type="text/css" href="media/style.css">
</head>
<body>
 
<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%">
<tr>
<td class="header_top">Framework</td>
</tr>
<tr><td class="header_line"><img src="media/empty.png" width="1" height="1" border="0" alt="" /></td></tr>
<tr>
<td class="header_menu">
[ <a href="classtrees_Framework.html" class="menu">class tree: Framework</a> ]
[ <a href="elementindex_Framework.html" class="menu">index: Framework</a> ]
[ <a href="elementindex.html" class="menu">all elements</a> ]
</td>
</tr>
<tr><td class="header_line"><img src="media/empty.png" width="1" height="1" border="0" alt="" /></td></tr>
</table>
 
<table width="100%" border="0" cellpadding="0" cellspacing="0">
<tr valign="top">
<td width="200" class="menu">
<b>Packages:</b><br />
<a href="li_Framework.html">Framework</a><br />
<br /><br />
</td>
<td>
<table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top">
 
<a href="#Post-parsing">Post-parsing</a><br>
<a href="#autoload.inc.php">autoload.inc.php</a><br>
<a href="#Chronometre.php">Chronometre.php</a><br>
<a href="#Config.php">Config.php</a><br>
<a href="#Controleur.php">Controleur.php</a><br>
<a href="#Debug.php">Debug.php</a><br>
<a href="#GestionnaireException.php">GestionnaireException.php</a><br>
<a href="#Log.php">Log.php</a><br>
<a href="#Modele.php">Modele.php</a><br>
<a href="#Registre.php">Registre.php</a><br>
<a href="#SquelettePhp.php">SquelettePhp.php</a><br>
<a href="#Url.php">Url.php</a><br>
<a name="Application.php"></a>
<h1>Application.php</h1>
<h2>Warnings:</h2><br>
<b>Warning on line 17</b> - DocBlock would be page-level, but precedes class "Application", use another DocBlock to document the file<br>
<b>Warning on line 17</b> - package Framework is already in category php5, will now replace with category Debogage<br>
<a name="autoload.inc.php"></a>
<h1>autoload.inc.php</h1>
<h2>Warnings:</h2><br>
<b>Warning on line 21</b> - package Framework is already in category Class, will now replace with category Fichier_De_Fonctions<br>
<b>Warning on line 22</b> - Page-level DocBlock precedes "define DS", use another DocBlock to document the source element<br>
<a name="Chronometre.php"></a>
<h1>Chronometre.php</h1>
<h2>Warnings:</h2><br>
<b>Warning on line 22</b> - DocBlock would be page-level, but precedes class "Chronometre", use another DocBlock to document the file<br>
<b>Warning on line 22</b> - package Framework is already in category Class, will now replace with category PHP<br>
<a name="Config.php"></a>
<h1>Config.php</h1>
<h2>Warnings:</h2><br>
<b>Warning on line 18</b> - package Framework is already in category php5, will now replace with category PHP<br>
<b>Warning on line 18</b> - DocBlock would be page-level, but precedes class "Config", use another DocBlock to document the file<br>
<a name="Controleur.php"></a>
<h1>Controleur.php</h1>
<h2>Warnings:</h2><br>
<b>Warning on line 18</b> - package Framework is already in category Php5, will now replace with category php5<br>
<b>Warning on line 18</b> - DocBlock would be page-level, but precedes class "Controleur", use another DocBlock to document the file<br>
<a name="Debug.php"></a>
<h1>Debug.php</h1>
<h2>Warnings:</h2><br>
<b>Warning on line 19</b> - DocBlock would be page-level, but precedes class "Debug", use another DocBlock to document the file<br>
<b>Warning on line 19</b> - package Framework is already in category Class, will now replace with category Debogage<br>
<a name="GestionnaireException.php"></a>
<h1>GestionnaireException.php</h1>
<h2>Warnings:</h2><br>
<b>Warning on line 18</b> - package Framework is already in category Fichier_De_Fonctions, will now replace with category Class<br>
<b>Warning on line 18</b> - DocBlock would be page-level, but precedes class "GestionnaireException", use another DocBlock to document the file<br>
<a name="Log.php"></a>
<h1>Log.php</h1>
<h2>Warnings:</h2><br>
<b>Warning on line 16</b> - DocBlock would be page-level, but precedes class "Log", use another DocBlock to document the file<br>
<b>Warning on line 16</b> - package Framework is already in category Debogage, will now replace with category PHP<br>
<a name="Modele.php"></a>
<h1>Modele.php</h1>
<h2>Warnings:</h2><br>
<b>Warning on line 20</b> - DocBlock would be page-level, but precedes class "Modele", use another DocBlock to document the file<br>
<b>Warning on line 20</b> - package Framework is already in category PHP, will now replace with category Class<br>
<a name="Registre.php"></a>
<h1>Registre.php</h1>
<h2>Warnings:</h2><br>
<b>Warning on line 18</b> - DocBlock would be page-level, but precedes class "Registre", use another DocBlock to document the file<br>
<b>Warning on line 18</b> - package Framework is already in category PHP, will now replace with category Class<br>
<a name="SquelettePhp.php"></a>
<h1>SquelettePhp.php</h1>
<h2>Warnings:</h2><br>
<b>Warning on line 15</b> - package Framework is already in category Debogage, will now replace with category php5<br>
<b>Warning on line 15</b> - DocBlock would be page-level, but precedes class "SquelettePhp", use another DocBlock to document the file<br>
<a name="Url.php"></a>
<h1>Url.php</h1>
<h2>Warnings:</h2><br>
<b>Warning on line 20</b> - package Framework is already in category php, will now replace with category Php5<br>
<b>Warning on line 21</b> - DocBlock would be page-level, but precedes class "Url", use another DocBlock to document the file<br>
<div class="credit">
<hr />
Documentation generated on Thu, 04 Mar 2010 19:27:38 +0100 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.3</a>
</div>
</td></tr></table>
</td>
</tr>
</table>
 
</body>
</html>
/tags/v0.3-aleaume/doc/HTMLSmartyConverter/media/empty.png
Cannot display: file marked as a binary type.
svn:mime-type = image/png
/tags/v0.3-aleaume/doc/HTMLSmartyConverter/media/empty.png
New file
Property changes:
Added: svn:mime-type
+image/png
\ No newline at end of property
/tags/v0.3-aleaume/doc/HTMLSmartyConverter/media/background.png
Cannot display: file marked as a binary type.
svn:mime-type = image/png
/tags/v0.3-aleaume/doc/HTMLSmartyConverter/media/background.png
New file
Property changes:
Added: svn:mime-type
+image/png
\ No newline at end of property
/tags/v0.3-aleaume/doc/HTMLSmartyConverter/media/style.css
New file
0,0 → 1,195
.php {
padding: 1em;
}
.php-src { font-family: 'Courier New', Courier, monospace; font-weight: normal; }
 
body
{
color: #000000;
background-color: #ffffff;
background-image: url("background.png");
background-repeat: repeat-y;
font-family: tahoma, verdana, arial, sans-serif;
font-size: 10pt;
margin: 0;
padding: 0;
}
 
a
{
color: #000099;
background-color: transparent;
text-decoration: none;
}
 
a:hover
{
text-decoration: underline;
}
 
a.menu
{
color: #ffffff;
background-color: transparent;
}
 
td
{
font-size: 10pt;
}
 
td.header_top
{
color: #ffffff;
background-color: #9999cc;
font-size: 16pt;
font-weight: bold;
text-align: right;
padding: 10px;
}
 
td.header_line
{
color: #ffffff;
background-color: #333366;
}
 
td.header_menu
{
color: #ffffff;
background-color: #666699;
font-size: 8pt;
text-align: right;
padding: 2px;
padding-right: 5px;
}
 
td.menu
{
padding: 2px;
padding-left: 5px;
}
 
td.code_border
{
color: #000000;
background-color: #c0c0c0;
}
 
td.code
{
color: #000000;
background-color: #f0f0f0;
}
 
td.type
{
font-style: italic;
}
 
div.credit
{
font-size: 8pt;
text-align: center;
}
 
div.package
{
padding-left: 5px;
}
 
div.tags
{
padding-left: 15px;
}
 
div.function
{
padding-left: 15px;
}
 
div.top
{
font-size: 8pt;
}
 
div.warning
{
color: #ff0000;
background-color: transparent;
}
 
div.description
{
padding-left: 15px;
}
 
hr
{
height: 1px;
border-style: solid;
border-color: #c0c0c0;
margin-top: 10px;
margin-bottom: 10px;
}
 
span.smalllinenumber
{
font-size: 8pt;
}
 
ul {
margin-left: 0px;
padding-left: 8px;
}
/* Syntax highlighting */
 
.src-code { background-color: #f5f5f5; border: 1px solid #ccc9a4; padding: 0 0 0 1em; margin : 0px;
font-family: 'Courier New', Courier, monospace; font-weight: normal; }
.src-line { font-family: 'Courier New', Courier, monospace; font-weight: normal; }
 
.src-comm { color: green; }
.src-id { }
.src-inc { color: #0000FF; }
.src-key { color: #0000FF; }
.src-num { color: #CC0000; }
.src-str { color: #66cccc; }
.src-sym { font-weight: bold; }
.src-var { }
 
.src-php { font-weight: bold; }
 
.src-doc { color: #009999 }
.src-doc-close-template { color: #0000FF }
.src-doc-coretag { color: #0099FF; font-weight: bold }
.src-doc-inlinetag { color: #0099FF }
.src-doc-internal { color: #6699cc }
.src-doc-tag { color: #0080CC }
.src-doc-template { color: #0000FF }
.src-doc-type { font-style: italic }
.src-doc-var { font-style: italic }
 
.tute-tag { color: #009999 }
.tute-attribute-name { color: #0000FF }
.tute-attribute-value { color: #0099FF }
.tute-entity { font-weight: bold; }
.tute-comment { font-style: italic }
.tute-inline-tag { color: #636311; font-weight: bold }
 
/* tutorial */
 
.authors { }
.author { font-style: italic; font-weight: bold }
.author-blurb { margin: .5em 0em .5em 2em; font-size: 85%; font-weight: normal; font-style: normal }
.example { border: 1px dashed #999999; background-color: #EEEEEE; padding: .5em; }
.listing { border: 1px dashed #999999; background-color: #EEEEEE; padding: .5em; white-space: nowrap; }
.release-info { font-size: 85%; font-style: italic; margin: 1em 0em }
.ref-title-box { }
.ref-title { }
.ref-purpose { font-style: italic; color: #666666 }
.ref-synopsis { }
.title { font-weight: bold; margin: 1em 0em 0em 0em; padding: .25em; border: 2px solid #999999; background-color: #9999CC }
.cmd-synopsis { margin: 1em 0em }
.cmd-title { font-weight: bold }
.toc { margin-left: 2em; padding-left: 0em }
 
/tags/v0.3-aleaume/doc/HTMLSmartyConverter/elementindex_Framework.html
New file
0,0 → 1,460
<html>
<head>
<title>Package Framework Element Index</title>
<meta http-equiv='Content-Type' content='text/html; charset=UTF-8'/>
<link rel="stylesheet" type="text/css" href="media/style.css">
</head>
<body>
 
<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%">
<tr>
<td class="header_top">Framework</td>
</tr>
<tr><td class="header_line"><img src="media/empty.png" width="1" height="1" border="0" alt="" /></td></tr>
<tr>
<td class="header_menu">
[ <a href="classtrees_Framework.html" class="menu">class tree: Framework</a> ]
[ <a href="elementindex_Framework.html" class="menu">index: Framework</a> ]
[ <a href="elementindex.html" class="menu">all elements</a> ]
</td>
</tr>
<tr><td class="header_line"><img src="media/empty.png" width="1" height="1" border="0" alt="" /></td></tr>
</table>
 
<table width="100%" border="0" cellpadding="0" cellspacing="0">
<tr valign="top">
<td width="200" class="menu">
<b>Packages:</b><br />
<a href="li_Framework.html">Framework</a><br />
<br /><br />
<b>Files:</b><br />
<div class="package">
<a href="Framework/_Application.php.html"> Application.php
</a><br>
<a href="Framework/_autoload.inc.php.html"> autoload.inc.php
</a><br>
<a href="Framework/_Chronometre.php.html"> Chronometre.php
</a><br>
<a href="Framework/_Config.php.html"> Config.php
</a><br>
<a href="Framework/_Controleur.php.html"> Controleur.php
</a><br>
<a href="Framework/_Debug.php.html"> Debug.php
</a><br>
<a href="Framework/_GestionnaireException.php.html"> GestionnaireException.php
</a><br>
<a href="Framework/_Log.php.html"> Log.php
</a><br>
<a href="Framework/_Modele.php.html"> Modele.php
</a><br>
<a href="Framework/_Registre.php.html"> Registre.php
</a><br>
<a href="Framework/_SquelettePhp.php.html"> SquelettePhp.php
</a><br>
<a href="Framework/_Url.php.html"> Url.php
</a><br>
</div><br />
<b>Classes:</b><br />
<div class="package">
<a href="Framework/Application.html">Application</a><br />
<a href="Framework/Chronometre.html">Chronometre</a><br />
<a href="Framework/Config.html">Config</a><br />
<a href="Framework/Controleur.html">Controleur</a><br />
<a href="Framework/Debug.html">Debug</a><br />
<a href="Framework/GestionnaireException.html">GestionnaireException</a><br />
<a href="Framework/Log.html">Log</a><br />
<a href="Framework/Modele.html">Modele</a><br />
<a href="Framework/Registre.html">Registre</a><br />
<a href="Framework/SquelettePhp.html">SquelettePhp</a><br />
<a href="Framework/Url.html">Url</a><br />
</div>
</td>
<td>
<table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top">
 
<a name="top"></a>
<h1>Element index for package Framework</h1>
[ <a href="elementindex_Framework.html#a">a</a> ]
[ <a href="elementindex_Framework.html#c">c</a> ]
[ <a href="elementindex_Framework.html#d">d</a> ]
[ <a href="elementindex_Framework.html#e">e</a> ]
[ <a href="elementindex_Framework.html#g">g</a> ]
[ <a href="elementindex_Framework.html#i">i</a> ]
[ <a href="elementindex_Framework.html#l">l</a> ]
[ <a href="elementindex_Framework.html#m">m</a> ]
[ <a href="elementindex_Framework.html#n">n</a> ]
[ <a href="elementindex_Framework.html#o">o</a> ]
[ <a href="elementindex_Framework.html#p">p</a> ]
[ <a href="elementindex_Framework.html#r">r</a> ]
[ <a href="elementindex_Framework.html#s">s</a> ]
[ <a href="elementindex_Framework.html#u">u</a> ]
[ <a href="elementindex_Framework.html#v">v</a> ]
[ <a href="elementindex_Framework.html#_">_</a> ]
 
<hr />
<a name="_"></a>
<div>
<h2>_</h2>
<dl>
<dt><b>__construct</b></dt>
<dd>in file Chronometre.php, method <a href="Framework/Chronometre.html#method__construct">Chronometre::__construct()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Constructeur : *</dd>
<dt><b>__construct</b></dt>
<dd>in file Modele.php, method <a href="Framework/Modele.html#method__construct">Modele::__construct()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Constructeur par défaut, appelé à l'initialisation.</dd>
<dt><b>__construct</b></dt>
<dd>in file Url.php, method <a href="Framework/Url.html#method__construct">Url::__construct()</a></dd>
<dt><b>__construct</b></dt>
<dd>in file GestionnaireException.php, method <a href="Framework/GestionnaireException.html#method__construct">GestionnaireException::__construct()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Constructeur avec paramètres optionnel</dd>
<dt><b>__construct</b></dt>
<dd>in file Controleur.php, method <a href="Framework/Controleur.html#method__construct">Controleur::__construct()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Constructeur par défaut</dd>
<dt><b>__destruct</b></dt>
<dd>in file Modele.php, method <a href="Framework/Modele.html#method__destruct">Modele::__destruct()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Destructeur de classe, se contente de fermer explicitement la connexion</dd>
<dt><b>__destruct</b></dt>
<dd>in file Log.php, method <a href="Framework/Log.html#method__destruct">Log::__destruct()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;destructeur de classe, ferme les descripteurs ouverts</dd>
<dt><b>__destruct</b></dt>
<dd>in file GestionnaireException.php, method <a href="Framework/GestionnaireException.html#method__destruct">GestionnaireException::__destruct()</a></dd>
<dt><b>__toString</b></dt>
<dd>in file Url.php, method <a href="Framework/Url.html#method__toString">Url::__toString()</a></dd>
</dl>
</div>
<a href="elementindex_Framework.html#top">top</a><br>
<hr />
<a name="a"></a>
<div>
<h2>a</h2>
<dl>
<dt><b>afficherChrono</b></dt>
<dd>in file Chronometre.php, method <a href="Framework/Chronometre.html#methodafficherChrono">Chronometre::afficherChrono()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Méthode afficherChrono() - Permet d'afficher les temps d'éxécution de différentes parties d'un script.</dd>
<dt><b>ajouterEntree</b></dt>
<dd>in file Log.php, method <a href="Framework/Log.html#methodajouterEntree">Log::ajouterEntree()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Ajoute une entrée au log spécifié par le paramètre $nomFichier</dd>
<dt><b>analyser</b></dt>
<dd>in file SquelettePhp.php, method <a href="Framework/SquelettePhp.html#methodanalyser">SquelettePhp::analyser()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Fonction prenant en paramètre un chemin de fichier squelette et un tableau associatif de données, en extrait les variables, charge le squelette et retourne le résultat des deux combinés.</dd>
<dt><b>Application</b></dt>
<dd>in file Application.php, class <a href="Framework/Application.html">Application</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Classe fournissant des informations au Framework sur l'application.</dd>
<dt><b>Application.php</b></dt>
<dd>procedural page <a href="Framework/_Application.php.html">Application.php</a></dd>
<dt><b>autoload.inc.php</b></dt>
<dd>procedural page <a href="Framework/_autoload.inc.php.html">autoload.inc.php</a></dd>
<dt><b>autoloadAppliDefaut</b></dt>
<dd>in file autoload.inc.php, function <a href="Framework/_autoload.inc.php.html#functionautoloadAppliDefaut">autoloadAppliDefaut()</a></dd>
<dt><b>autoloadFw</b></dt>
<dd>in file autoload.inc.php, function <a href="Framework/_autoload.inc.php.html#functionautoloadFw">autoloadFw()</a></dd>
</dl>
</div>
<a href="elementindex_Framework.html#top">top</a><br>
<hr />
<a name="c"></a>
<div>
<h2>c</h2>
<dl>
<dt><b>charger</b></dt>
<dd>in file Config.php, method <a href="Framework/Config.html#methodcharger">Config::charger()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Charge un fichier ini dans le tableau des paramètres de l'appli</dd>
<dt><b>chargerModele</b></dt>
<dd>in file Controleur.php, method <a href="Framework/Controleur.html#methodchargerModele">Controleur::chargerModele()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Charge un modele donné et le rend disponible sous la forme $this-&gt;nom_modele</dd>
<dt><b>chargerVue</b></dt>
<dd>in file Controleur.php, method <a href="Framework/Controleur.html#methodchargerVue">Controleur::chargerVue()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Fonction prenant en paramètre le nom d'un squelette et un tableau associatif de données, en extrait les variables, charge le squelette et crée une variable de classe portant le nom du squelette contenant les deux combinés.</dd>
<dt><b>Chronometre</b></dt>
<dd>in file Chronometre.php, class <a href="Framework/Chronometre.html">Chronometre</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Classe Chronometre() - Permet de stocker et d'afficher les temps d'éxécution de script.</dd>
<dt><b>Chronometre.php</b></dt>
<dd>procedural page <a href="Framework/_Chronometre.php.html">Chronometre.php</a></dd>
<dt><b>Config</b></dt>
<dd>in file Config.php, class <a href="Framework/Config.html">Config</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Config permet de charger automatiquement les fichiers ini du Framework et de l'application.</dd>
<dt><b>Config.php</b></dt>
<dd>procedural page <a href="Framework/_Config.php.html">Config.php</a></dd>
<dt><b>Controleur</b></dt>
<dd>in file Controleur.php, class <a href="Framework/Controleur.html">Controleur</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Classe Controleur, coeur d'une application, c'est normalement la seule classe d'une application qui devrait être appelée de l'extérieur.</dd>
<dt><b>Controleur.php</b></dt>
<dd>procedural page <a href="Framework/_Controleur.php.html">Controleur.php</a></dd>
</dl>
</div>
<a href="elementindex_Framework.html#top">top</a><br>
<hr />
<a name="d"></a>
<div>
<h2>d</h2>
<dl>
<dt><b>Debug</b></dt>
<dd>in file Debug.php, class <a href="Framework/Debug.html">Debug</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Classe fournissant des fonctions de débogage équivalante à var_dump et print_r.</dd>
<dt><b>Debug.php</b></dt>
<dd>procedural page <a href="Framework/_Debug.php.html">Debug.php</a></dd>
<dt><b>detruire</b></dt>
<dd>in file Registre.php, method <a href="Framework/Registre.html#methoddetruire">Registre::detruire()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Détruit l'objet associé à l'intitulé, n'a pas d'effet si il n'y a pas d'objet associé</dd>
<dt><b>DS</b></dt>
<dd>in file autoload.inc.php, constant <a href="Framework/_autoload.inc.php.html#defineDS">DS</a></dd>
<dt><b>dump</b></dt>
<dd>in file Debug.php, method <a href="Framework/Debug.html#methoddump">Debug::dump()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Equivalent de var_dump</dd>
</dl>
</div>
<a href="elementindex_Framework.html#top">top</a><br>
<hr />
<a name="e"></a>
<div>
<h2>e</h2>
<dl>
<dt><b>etreAbsolue</b></dt>
<dd>in file Url.php, method <a href="Framework/Url.html#methodetreAbsolue">Url::etreAbsolue()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Renvoie vrai ou faux suivant que l'instance en cours représente une URL relative ou absolue.</dd>
<dt><b>existe</b></dt>
<dd>in file Registre.php, method <a href="Framework/Registre.html#methodexiste">Registre::existe()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Teste si un objet est présent sous un intitulé donné</dd>
<dt><b>existe</b></dt>
<dd>in file Config.php, method <a href="Framework/Config.html#methodexiste">Config::existe()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Vérifie si la valeur d'un paramètre existe</dd>
</dl>
</div>
<a href="elementindex_Framework.html#top">top</a><br>
<hr />
<a name="g"></a>
<div>
<h2>g</h2>
<dl>
<dt><b>gererErreur</b></dt>
<dd>in file GestionnaireException.php, method <a href="Framework/GestionnaireException.html#methodgererErreur">GestionnaireException::gererErreur()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Gère les erreurs en les convertissant en exceptions (remplace la fonction gestion d'erreurs native de php)</dd>
<dt><b>gererException</b></dt>
<dd>in file GestionnaireException.php, method <a href="Framework/GestionnaireException.html#methodgererException">GestionnaireException::gererException()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Fonction de gestion des exceptions, remplace le handler par défaut</dd>
<dt><b>GestionnaireException</b></dt>
<dd>in file GestionnaireException.php, class <a href="Framework/GestionnaireException.html">GestionnaireException</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Classe de gestion des exceptions.</dd>
<dt><b>GestionnaireException.php</b></dt>
<dd>procedural page <a href="Framework/_GestionnaireException.php.html">GestionnaireException.php</a></dd>
<dt><b>get</b></dt>
<dd>in file Registre.php, method <a href="Framework/Registre.html#methodget">Registre::get()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Renvoie l'objet associé à l'intitulé donné en paramètre</dd>
<dt><b>get</b></dt>
<dd>in file Config.php, method <a href="Framework/Config.html#methodget">Config::get()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Acesseur pour la valeur d'un paramètre</dd>
<dt><b>getAutorite</b></dt>
<dd>in file Url.php, method <a href="Framework/Url.html#methodgetAutorite">Url::getAutorite()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Renvoie la partie autorité, i.e. [ infoUtilisateur &quot;@&quot; ] hote [ &quot;:&quot; port ], ou false si celle-ci est absente.</dd>
<dt><b>getCanonique</b></dt>
<dd>in file Url.php, method <a href="Framework/Url.html#methodgetCanonique">Url::getCanonique()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Renvoie une instance de Url representant l'URL canonique du script PHP en cours d'éxécution</dd>
<dt><b>getChemin</b></dt>
<dd>in file Application.php, method <a href="Framework/Application.html#methodgetChemin">Application::getChemin()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;accesseur pour le chemin</dd>
<dt><b>getChemin</b></dt>
<dd>in file Url.php, method <a href="Framework/Url.html#methodgetChemin">Url::getChemin()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Renvoie la partie chemin (chemin) (éventuellement vide).</dd>
<dt><b>getContexte</b></dt>
<dd>in file GestionnaireException.php, method <a href="Framework/GestionnaireException.html#methodgetContexte">GestionnaireException::getContexte()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Renvoie le booleen définissant si l'on affiche le contexte ou non</dd>
<dt><b>getDemande</b></dt>
<dd>in file Url.php, method <a href="Framework/Url.html#methodgetDemande">Url::getDemande()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Renvoie une instance de Url representant l'URL utilisée pour récupérer la requête en cours</dd>
<dt><b>getExceptions</b></dt>
<dd>in file GestionnaireException.php, method <a href="Framework/GestionnaireException.html#methodgetExceptions">GestionnaireException::getExceptions()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Renvoie les exceptions au format (X)HTML</dd>
<dt><b>getFragment</b></dt>
<dd>in file Url.php, method <a href="Framework/Url.html#methodgetFragment">Url::getFragment()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Renvoie le nom du fragment, ou false si &quot;#&quot; n'est pas present dans l'URL.</dd>
<dt><b>getHote</b></dt>
<dd>in file Url.php, method <a href="Framework/Url.html#methodgetHote">Url::getHote()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Renvoie la partie hôte, ou false s'il n'y a pas de partie autorité, c.a.d.</dd>
<dt><b>getInfo</b></dt>
<dd>in file Application.php, method <a href="Framework/Application.html#methodgetInfo">Application::getInfo()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;accesseur pour le tableau d'infos</dd>
<dt><b>getInfoUtilisateur</b></dt>
<dd>in file Url.php, method <a href="Framework/Url.html#methodgetInfoUtilisateur">Url::getInfoUtilisateur()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Renvoie la partie userinfio, ou false si celle-ci n'existe pas, i.e. si la partie autorité ne contient pas de &quot;@&quot;</dd>
<dt><b>getInstance</b></dt>
<dd>in file Registre.php, method <a href="Framework/Registre.html#methodgetInstance">Registre::getInstance()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Fonction qui renvoie l'instance de classe en assurant son unicité, c'est l'unique méthode qui doit être</dd>
<dt><b>getInstance</b></dt>
<dd>in file GestionnaireException.php, method <a href="Framework/GestionnaireException.html#methodgetInstance">GestionnaireException::getInstance()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Fonction d'accès au singleton</dd>
<dt><b>getInstance</b></dt>
<dd>in file Log.php, method <a href="Framework/Log.html#methodgetInstance">Log::getInstance()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Fonction qui renvoie l'instance de classe en assurant son unicité, c'est l'unique méthode qui doit être</dd>
<dt><b>getMode</b></dt>
<dd>in file Debug.php, method <a href="Framework/Debug.html#methodgetMode">Debug::getMode()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Accesseur pour le mode</dd>
<dt><b>getModele</b></dt>
<dd>in file Controleur.php, method <a href="Framework/Controleur.html#methodgetModele">Controleur::getModele()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Retourne un modele donné</dd>
<dt><b>getMotDePasse</b></dt>
<dd>in file Url.php, method <a href="Framework/Url.html#methodgetMotDePasse">Url::getMotDePasse()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;renvoie la partie mot de passe de la partie infoUtilisateur (partie après le premier &quot;:&quot;), , ou false si aucune partie infoUtilisateur n'est définie (i.e. l'URL ne contient pas de &quot;@&quot; en face du nom d'hôte) ou si la partie infoUtilisateur ne contient pas de &quot;:&quot;.</dd>
<dt><b>getOption</b></dt>
<dd>in file Url.php, method <a href="Framework/Url.html#methodgetOption">Url::getOption()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Renvoie la valeur de l'option specifiée.</dd>
<dt><b>getPort</b></dt>
<dd>in file Url.php, method <a href="Framework/Url.html#methodgetPort">Url::getPort()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Renvoie le numéro de port, ou false si aucun numéro de port n'est spécifié, i.e. le port par défaut doit utilisé.</dd>
<dt><b>getRequete</b></dt>
<dd>in file Url.php, method <a href="Framework/Url.html#methodgetRequete">Url::getRequete()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;renvoie la chaine de requête (requete string) (sans le premier &quot;?&quot;), ou false si &quot;?&quot; n'est pas présent dans l'url.</dd>
<dt><b>getSchema</b></dt>
<dd>in file Url.php, method <a href="Framework/Url.html#methodgetSchema">Url::getSchema()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Retourne le schéma, c.a.d. &quot;http&quot; ou &quot;urn&quot;, ou false si aucun schéma n'est spécifié, i.e. l'url est une url relative</dd>
<dt><b>getTemps</b></dt>
<dd>in file Chronometre.php, method <a href="Framework/Chronometre.html#methodgetTemps">Chronometre::getTemps()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Accesseurs :</dd>
<dt><b>getURL</b></dt>
<dd>in file Url.php, method <a href="Framework/Url.html#methodgetURL">Url::getURL()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Renvoie un représentation sous forme de chaine de l'URL</dd>
<dt><b>getURLDemande</b></dt>
<dd>in file Url.php, method <a href="Framework/Url.html#methodgetURLDemande">Url::getURLDemande()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Renvoie l'URL utilisée pour récupérer la requête en cours</dd>
<dt><b>getURLNormalisee</b></dt>
<dd>in file Url.php, method <a href="Framework/Url.html#methodgetURLNormalisee">Url::getURLNormalisee()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Renvoie une représentation de cette URL sous forme de chaine normalisée. Utile pour la comparaison d'URLs</dd>
<dt><b>getUtilisateur</b></dt>
<dd>in file Url.php, method <a href="Framework/Url.html#methodgetUtilisateur">Url::getUtilisateur()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;renvoie la partie user de la partie infoUtilisateur (partie précédant le premier &quot;:&quot;), ou false si aucune partie infoUtilisateur n'est définie.</dd>
<dt><b>getVariablesRequete</b></dt>
<dd>in file Url.php, method <a href="Framework/Url.html#methodgetVariablesRequete">Url::getVariablesRequete()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Renvoie la requete string sous forme d'un tableau de variables telles qu'elles apparaitraient dans le $_GET d'un script PHP</dd>
<dt><b>getVue</b></dt>
<dd>in file Controleur.php, method <a href="Framework/Controleur.html#methodgetVue">Controleur::getVue()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Fonction prenant en paramètre le nom d'un squelette et un tableau associatif de données, en extrait les variables, charge le squelette et retourne le résultat des deux combinés.</dd>
</dl>
</div>
<a href="elementindex_Framework.html#top">top</a><br>
<hr />
<a name="i"></a>
<div>
<h2>i</h2>
<dl>
<dt><b>initialiserProtocole</b></dt>
<dd>in file Modele.php, method <a href="Framework/Modele.html#methodinitialiserProtocole">Modele::initialiserProtocole()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;initialise les constantes de classe à leur bonne valeur</dd>
</dl>
</div>
<a href="elementindex_Framework.html#top">top</a><br>
<hr />
<a name="l"></a>
<div>
<h2>l</h2>
<dl>
<dt><b>Log</b></dt>
<dd>in file Log.php, class <a href="Framework/Log.html">Log</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Classe permettant de logger des messages dans les fichier situés dans le dossier de log</dd>
<dt><b>Log.php</b></dt>
<dd>procedural page <a href="Framework/_Log.php.html">Log.php</a></dd>
</dl>
</div>
<a href="elementindex_Framework.html#top">top</a><br>
<hr />
<a name="m"></a>
<div>
<h2>m</h2>
<dl>
<dt><b>$mode</b></dt>
<dd>in file Debug.php, variable <a href="Framework/Debug.html#var$mode">Debug::$mode</a><br>&nbsp;&nbsp;&nbsp;&nbsp;mode de php (cli ou sapi)</dd>
<dt><b>Modele</b></dt>
<dd>in file Modele.php, class <a href="Framework/Modele.html">Modele</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Classe modèle, donc d'accés au données, elle ne devrait pas être appelée de l'extérieur.</dd>
<dt><b>Modele.php</b></dt>
<dd>procedural page <a href="Framework/_Modele.php.html">Modele.php</a></dd>
</dl>
</div>
<a href="elementindex_Framework.html#top">top</a><br>
<hr />
<a name="n"></a>
<div>
<h2>n</h2>
<dl>
<dt><b>normaliser</b></dt>
<dd>in file Url.php, method <a href="Framework/Url.html#methodnormaliser">Url::normaliser()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Renvoie une instance normalisée de Url</dd>
</dl>
</div>
<a href="elementindex_Framework.html#top">top</a><br>
<hr />
<a name="o"></a>
<div>
<h2>o</h2>
<dl>
<dt><b>OPTION_ENCODER_CLES</b></dt>
<dd>in file Url.php, class constant <a href="Framework/Url.html#constOPTION_ENCODER_CLES">Url::OPTION_ENCODER_CLES</a><br>&nbsp;&nbsp;&nbsp;&nbsp;URL-encoder les clés des variables dans les requêtes. Par défaut à true.</dd>
<dt><b>OPTION_SEPARATEUR_ENTREE</b></dt>
<dd>in file Url.php, class constant <a href="Framework/Url.html#constOPTION_SEPARATEUR_ENTREE">Url::OPTION_SEPARATEUR_ENTREE</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Séparateurs de variables lors du parsing de la requête. Chaque caractère est considéré comme un séparateur. Par défaut, spécifié par le paramêtre arg_separator.input dans php.ini (par défaut &quot;&amp;&quot;).</dd>
<dt><b>OPTION_SEPARATEUR_SORTIE</b></dt>
<dd>in file Url.php, class constant <a href="Framework/Url.html#constOPTION_SEPARATEUR_SORTIE">Url::OPTION_SEPARATEUR_SORTIE</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Séparateur de variables lors de la génération de la requête. Par défaut, spécifié par le paramètre arg_separator.output dans php.ini (par défaut &quot;&amp;&quot;).</dd>
<dt><b>OPTION_STRICTE</b></dt>
<dd>in file Url.php, class constant <a href="Framework/Url.html#constOPTION_STRICTE">Url::OPTION_STRICTE</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Parsing strict dans resoudre() (voir RFC 3986, section 5.2.2). Par défaut à true.</dd>
<dt><b>OPTION_UTILISER_CROCHETS</b></dt>
<dd>in file Url.php, class constant <a href="Framework/Url.html#constOPTION_UTILISER_CROCHETS">Url::OPTION_UTILISER_CROCHETS</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Répresenter les tableaux dans les requêtes en utilisant la notation php []. Par défaut à true.</dd>
</dl>
</div>
<a href="elementindex_Framework.html#top">top</a><br>
<hr />
<a name="p"></a>
<div>
<h2>p</h2>
<dl>
<dt><b>printr</b></dt>
<dd>in file Debug.php, method <a href="Framework/Debug.html#methodprintr">Debug::printr()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Equivalent de print_r</dd>
<dt><b>proteger</b></dt>
<dd>in file Modele.php, method <a href="Framework/Modele.html#methodproteger">Modele::proteger()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;protège une chaine de caractères avant l'insertion dans la base de données</dd>
<dt><b>PS</b></dt>
<dd>in file autoload.inc.php, constant <a href="Framework/_autoload.inc.php.html#definePS">PS</a></dd>
</dl>
</div>
<a href="elementindex_Framework.html#top">top</a><br>
<hr />
<a name="r"></a>
<div>
<h2>r</h2>
<dl>
<dt><b>Registre</b></dt>
<dd>in file Registre.php, class <a href="Framework/Registre.html">Registre</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Classe registre, qui permet un accès à différentes variables à travers les autres classes.</dd>
<dt><b>Registre.php</b></dt>
<dd>procedural page <a href="Framework/_Registre.php.html">Registre.php</a></dd>
<dt><b>requete</b></dt>
<dd>in file Modele.php, method <a href="Framework/Modele.html#methodrequete">Modele::requete()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Fonction qui appelle la bonne fonction pour executer une requête suivant le type de bdd.</dd>
<dt><b>requeteTous</b></dt>
<dd>in file Modele.php, method <a href="Framework/Modele.html#methodrequeteTous">Modele::requeteTous()</a></dd>
<dt><b>requeteUn</b></dt>
<dd>in file Modele.php, method <a href="Framework/Modele.html#methodrequeteUn">Modele::requeteUn()</a></dd>
<dt><b>resoudre</b></dt>
<dd>in file Url.php, method <a href="Framework/Url.html#methodresoudre">Url::resoudre()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Renvoie une instance de Url représentant une URL absolue relative à cette URL.</dd>
</dl>
</div>
<a href="elementindex_Framework.html#top">top</a><br>
<hr />
<a name="s"></a>
<div>
<h2>s</h2>
<dl>
<dt><b>set</b></dt>
<dd>in file Registre.php, method <a href="Framework/Registre.html#methodset">Registre::set()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Ajoute un objet au tableau selon un intitulé donné</dd>
<dt><b>setAutorite</b></dt>
<dd>in file Url.php, method <a href="Framework/Url.html#methodsetAutorite">Url::setAutorite()</a></dd>
<dt><b>setChemin</b></dt>
<dd>in file Application.php, method <a href="Framework/Application.html#methodsetChemin">Application::setChemin()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Modificateur pour le chemin de base</dd>
<dt><b>setChemin</b></dt>
<dd>in file Url.php, method <a href="Framework/Url.html#methodsetChemin">Url::setChemin()</a></dd>
<dt><b>setContexte</b></dt>
<dd>in file GestionnaireException.php, method <a href="Framework/GestionnaireException.html#methodsetContexte">GestionnaireException::setContexte()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Definit si l'on veut afficher le contexte ou non</dd>
<dt><b>setFragment</b></dt>
<dd>in file Url.php, method <a href="Framework/Url.html#methodsetFragment">Url::setFragment()</a></dd>
<dt><b>setHote</b></dt>
<dd>in file Url.php, method <a href="Framework/Url.html#methodsetHote">Url::setHote()</a></dd>
<dt><b>setInfo</b></dt>
<dd>in file Application.php, method <a href="Framework/Application.html#methodsetInfo">Application::setInfo()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Le tableau des informations sur l'application possède les clés suivantes :</dd>
<dt><b>setInfoUtilisateur</b></dt>
<dd>in file Url.php, method <a href="Framework/Url.html#methodsetInfoUtilisateur">Url::setInfoUtilisateur()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Setteur pour la partie infoUtilisateur. Si deux argument sont passé, ils sont combinés dans la partie infoUtilisateur de cette manière username &quot;:&quot; password.</dd>
<dt><b>setOption</b></dt>
<dd>in file Url.php, method <a href="Framework/Url.html#methodsetOption">Url::setOption()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Met à jour la valeur de l'option spécifiée.</dd>
<dt><b>setPort</b></dt>
<dd>in file Url.php, method <a href="Framework/Url.html#methodsetPort">Url::setPort()</a></dd>
<dt><b>setRequete</b></dt>
<dd>in file Url.php, method <a href="Framework/Url.html#methodsetRequete">Url::setRequete()</a></dd>
<dt><b>setSchema</b></dt>
<dd>in file Url.php, method <a href="Framework/Url.html#methodsetSchema">Url::setSchema()</a></dd>
<dt><b>setTemps</b></dt>
<dd>in file Chronometre.php, method <a href="Framework/Chronometre.html#methodsetTemps">Chronometre::setTemps()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Setteur pour la variable temps</dd>
<dt><b>setVariableRequete</b></dt>
<dd>in file Url.php, method <a href="Framework/Url.html#methodsetVariableRequete">Url::setVariableRequete()</a></dd>
<dt><b>setVariablesRequete</b></dt>
<dd>in file Url.php, method <a href="Framework/Url.html#methodsetVariablesRequete">Url::setVariablesRequete()</a></dd>
<dt><b>SquelettePhp</b></dt>
<dd>in file SquelettePhp.php, class <a href="Framework/SquelettePhp.html">SquelettePhp</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Classe SquelettePhp, traitant les squelette Php utilisant la syntaxe courte php ou pas.</dd>
<dt><b>SquelettePhp.php</b></dt>
<dd>procedural page <a href="Framework/_SquelettePhp.php.html">SquelettePhp.php</a></dd>
</dl>
</div>
<a href="elementindex_Framework.html#top">top</a><br>
<hr />
<a name="u"></a>
<div>
<h2>u</h2>
<dl>
<dt><b>unsetVariableRequete</b></dt>
<dd>in file Url.php, method <a href="Framework/Url.html#methodunsetVariableRequete">Url::unsetVariableRequete()</a></dd>
<dt><b>Url</b></dt>
<dd>in file Url.php, class <a href="Framework/Url.html">Url</a><br>&nbsp;&nbsp;&nbsp;&nbsp;classe Url, gérant le découpage des paramètres, leurs modification etc...</dd>
<dt><b>Url.php</b></dt>
<dd>procedural page <a href="Framework/_Url.php.html">Url.php</a></dd>
</dl>
</div>
<a href="elementindex_Framework.html#top">top</a><br>
<hr />
<a name="v"></a>
<div>
<h2>v</h2>
<dl>
<dt><b>verifierOuvrirFichier</b></dt>
<dd>in file Log.php, method <a href="Framework/Log.html#methodverifierOuvrirFichier">Log::verifierOuvrirFichier()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Vérifie la présence d'un fichier dans le tableau, ses droits d'écriture,</dd>
<dt><b>viderLog</b></dt>
<dd>in file Log.php, method <a href="Framework/Log.html#methodviderLog">Log::viderLog()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Vide un fichier log indiqué</dd>
</dl>
</div>
<a href="elementindex_Framework.html#top">top</a><br>
<div class="credit">
<hr />
Documentation generated on Thu, 04 Mar 2010 19:27:28 +0100 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.3</a>
</div>
</td></tr></table>
</td>
</tr>
</table>
 
</body>
</html>
/tags/v0.3-aleaume/doc/index.php
New file
0,0 → 1,29
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head xml:lang="fr" lang="fr">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<meta http-equiv="Content-style-type" content="text/css" />
<meta http-equiv="Content-script-type" content="text/javascript" />
<meta http-equiv="Content-language" content="fr" />
 
<title>Documentations du Framework de Tela Botanica</title>
<meta name="description" content="Les documents fournissant la documentation du Framework de Tela Botanica.">
<meta name="keywords" content="Framework, Tela Botanica, documentation, HTML, PDF, CHM">
<meta name="revisit-after" content="15 days" />
<meta name="robots" content="index,follow" />
<meta name="author" content="Tela Botanica" />
</head>
<body>
<div id="logo_tela">
<a href="/" title="Retour à l'accueil du site">
<img src="http://www.tela-botanica.org/sites/reseau/generique/images/graphisme/logo_jaune.gif" alt="Le logo de Tela Botanica"/>
</a>
</div>
<h1>Documentations du Framework de Tela Botanica</h1>
<p>La documentation est disponible sous plusieurs formats :</p>
<ul>
<li><a href="HTMLframesConverter/index.html">Format HTML avec frames</a></li>
<li><a href="HTMLSmartyConverter/index.html">Format HTML sans frames</a></li>
</ul>
</body>
</html>
/tags/v0.3-aleaume
New file
Property changes:
Added: svn:ignore
+.buildpath
+.project