Location: PHPKode > scripts > ifbCache > ifbCache_1_0_1.html
<!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>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>ifbLib :: ifbCache - Documentation (Français)</title>
<link rel="stylesheet" type="text/css" href="documentation/ifb_doc.css" />
<script type="text/javascript" src="documentation/ifb_doc.js"></script>
</head>

<body>

<div id="header"><h1 class="inboxNB" style="background:none;">PHP IFB_LIB Documentation (Français)</h1></div>

<div id="menu" class="box">

<h2><span><a href="Javascript:;" onclick="AfficherTout();">Class :: ifbCache</a></span></h2>
<br />
<div class="inbox box30 borderf">
<h2><a href="#" onclick="AfficherCat('i');">Menu</a></h2>
<ul class="dMain">
	<li><a  href="#i_1" onclick="AfficherCat('i');">Informations</a></li>
	<li><a  href="#m1_1" onclick="AfficherSCAT('m', '1');">Initialisation</a></li>
	<li><a  href="#m2_1" onclick="AfficherSCAT('m', '2');">Chargement de fichiers</a></li>
	<li><a  href="#m3_1" onclick="AfficherSCAT('m', '3');">Lecture de données</a></li>
	<li><a  href="#m4_1" onclick="AfficherSCAT('m', '4');">Sauvegarde de données</a></li>
	<li><a  href="#m5_1" onclick="AfficherSCAT('m', '5');">Fonctions internes</a></li>
	<li><a  href="#m6_1" onclick="AfficherSCAT('m', '6');">Linéarisation</a></li>
	<li><a  href="#m7_1" onclick="AfficherSCAT('m', '7');">Personnalisation</a></li>
</ul>
</div>
<div class="inbox box30 borderf">
<h2><a href="#" onclick="AfficherCat('p');">Propriétés</a></h2>
	<ul class="dMain" onclick="AfficherCat('p');">
	<li><a href="#p_varPFIX">varPFIX</a></li>	
	<li><a href="#p_now">$now</a></li>
	<li><a href="#p_cacheDir">$cacheDir</a></li> 
	<li><a href="#p_cache">$cache</a></li>
	<li><a href="#p_cacheExt">$cacheExt</a></li>
	</ul>
	<br />
</div>
<div class="inbox box30 borderf">
<h2><a href="#" onclick="AfficherCat('m');">Méthodes</a></h2>
	<ul class="dMain">
	<li><a href="#m_construct" onclick="AfficherSCAT('m', '1');">__construct()</a></li>
	
	</ul><ul class="dMain" onclick="AfficherSCAT('m', '2');">
	<li><a href="#m_loadFiles">loadFiles()</a></li> 
	<li><a href="#m_getVar">getVar()</a></li>
	<li><a href="#m_getData">getData()</a></li>
	<li><a href="#m_getAll">getAll()</a></li>
	
	</ul><ul class="dMain" onclick="AfficherSCAT('m', '3');">
	<li><a href="#m_setVar">setVar()</a></li> 
	<li><a href="#m_setData">setData()</a></li>
	</ul><ul class="dMain">
	<li><a href="#m_saveFiles" onclick="AfficherSCAT('m', '4');">saveFiles()</a></li> 
	
	</ul><ul class="dMain" onclick="AfficherSCAT('m', '5');">
	<li><a href="#m_loadData">loadData()</a></li> 
	<li><a href="#m_saveData">saveData()</a></li> 
	<li><a href="#m_stringToVar">stringToVar()</a></li> 
	<li><a href="#m_checkFile">checkFile()</a></li> 
	<li><a href="#m_checkFileExt">checkFileExt()</a></li> 
	<li><a href="#m_checkFileTime">checkFileTime()</a></li> 
	<li><a href="#m_cleanVars">cleanVars()</a></li>
	
	</ul><ul class="dMain" onclick="AfficherSCAT('m', '6');">
	<li><a href="#m_sleep">__sleep()</a></li>
	</ul>
</div>
<br class="clearer" />
</div>


<div class="box inboxNB">
<fieldset class="annonce">
<p> <span class="signal">/!\</span> La rédaction de cette documentation n'est pas terminée. Participez à la rédaction et aux tradcutions en Anglais en vous joignant au <a href="http://sourceforge.net/project/memberlist.php?group_id=392018">projet sur sourceForge</a>.</p>
</fieldset>

<div id="i_1">
<fieldset><legend>Informations</legend>
<div class="box"><h2><span>Credits</span></h2><div class="inbox">
	Documentation pour ifbCache versions alpha.<br />
	Classe développée par <a href="">Mickaël "R!cko" Devoldère</a> pour <a href="http://www.infobull.fr">Infobull France</a>.<br />
	<a href="http://www.php.net">Php</a> 5.2 ou supérieur requis.<br />
	Liscense GNU/GPL v3 (<a class="petit" href="http://www.gnu.org/licenses/gpl.html">gnu.org/licenses/gpl.html</a>).<br />
</div></div>
<div class="box"><h2><span>Description</span></h2><div class="inbox">
	Classe PHP5 de gestion de fichiers cache destinée au développeurs de sites web dynamiques.<br />
	<br />Possibilité de générer des fichiers de config, stocker des données sql, du texte, html, xml etc...<br />
	Peut servir d'alternative à une base de données pour les sites de petite envergure.<br />
	Utilisation très simple, les possibilités de personnalisation sont élevées grâce à l'héritage (connaissances php requises).<br />
	Une instance peut gérer plusieurs fichiers cache simultanément.<br /><br />
	Les données peuvent être sauvegardées dans différents formats:
	<ul>
	<li>[Fichier .dat] Tableau php array() sérialisé (défaut)</li>
	<li>[Fichier .php] Tableau php array() non sérialisé</li>
	<li>[Fichier .inc] Données brutes (texte, html)</li>
	<li>[Fichier .gz] Données brutes compressées via gzcompress()</li>
	</ul>
</div></div>
<div class="box"><h2><span>A FAIRE (to do)</span></h2><div class="inbox">
	- "Sessions" cache<br />- Fonctions de gestion de formats de sauvegarde personnalisés<br />- Interface Admin
</div></div>
<div class="box"><h2><span>/!\ ATTENTION /!\</span></h2><div class="inbox">
	<strong>/!\ ifbCache est en phase alpha.
	<br />/!\ Il est fortement déconseillé d'utiliser des versions alpha/beta dans un environnement de production.
	<br /><br />Une première version stable (1.0) sera bientôt disponible.</strong>
</div></div>
</fieldset>
</div> <!-- /i -->


<div id="p_1">
<fieldset><legend>Propriétés</legend>
<div id="p_varPFIX" class="box"><h2><span>varPFIX</span></h2><div class="inbox">
	const varPFIX = 'c'<br /><br />
	Préfixe utilisé pour la génération de nom de variable lors d'une lecture/sauvegarde au format php non linéarisé.
	<br /><br />Défaut: 'c'
</div>
</div>
<div id="p_now" class="box"><h2><span>$now</span></h2><div class="inbox">	
	(int) public $now<br /><br />
	Raccourci vers time().
</div>
</div>
<div id="p_cacheDir" class="box"><h2><span>$cacheDir</span></h2><div class="inbox">	
	(string) protected $cacheDir<br /><br />
	Chemin vers le répertoire où sont/seront stockés les fichiers.
</div>
</div>
<div id="p_cache" class="box"><h2><span>$cache</span></h2><div class="inbox">	
	(array) protected $cache = array('file' => array(), 'content' => array(), 'save' => array())<br /><br />
	Coeur de l'objet. Ce tableau regroupe les variables et données des fichiers cache à lire et sauvegarder.
	<blockquote><p>$cache['file'] = array('$fileName' => '(int)',); 
	// indique le type de données d'un fichier [Par défaut: 0]</p></blockquote>
	<blockquote><p>$cache['content']: string || array('$fileName' => array('key => 'val',),);
	// contient les données des fichiers chargés ou à enregistrer</p></blockquote>
	<blockquote><p>$cache['save']:	array('$fileName', '$fileName2',) ;
	// stocke les noms de fichier à sauvegarder lors de l'appel de la fonction <a href="#">saveFiles()</a></p></blockquote>
</div>
</div>
<div id="p_cacheExt" class="box"><h2><span>$cacheExt</span></h2><div class="inbox">		
	(array) protected $cacheExt = array(0 => '.dat', 1 => '.php', 2 => '.gz', 3 => '.inc');<br /><br />
	Contient les extensions de fichiers utilisés par les différents formats de sauvegarde.
</div>
</div>
</fieldset>
</div> <!-- /p -->


<div id="m_1">

<fieldset><legend>Méthodes: Initialisation de la classe</legend>
<div id ="m_construct" class="box"><h2><span>__construct ( [string $cacheDir = 'cache'] )</span></h2><div class="inbox">
	Initialisation de la classe.<br /><br />
	1. <strong>$cacheDir</strong>: Chemin vers le répertoire où sont stockés les fichiers cache (sans le slash '/' de fin). 
	Par défaut, ce paramètre est défini à 'cache'.<br /><br />
	<blockquote><p>$obj = new ifbCache(); // répertoire par défaut (./cache/)</p></blockquote>
	<blockquote><p>$obj = new ifbCache('../chemin/vers/les/fichiers/cache'); // définition d'un répertoire personnalisé</p></blockquote>
</div>
</div>
</fieldset>
</div> 

<!-- FIN METHODES_1 / DEBUT METHODES_2 -->

<div id="m_2">
<fieldset><legend>Méthodes: Chargement et lecture des fichiers</legend>
<div id ="m_loadFiles" class="box"><h2><span>loadFiles ( string $fileName, [bolean $isCode = false] )</span></h2><div class="inbox">
	<strong>public</strong><br /><br />
	<br /><br />
	<blockquote><p></p></blockquote>
</div>
</div>
<div id ="m_getVar" class="box"><h2><span>getVar ( string $fileName, string $var )</span></h2><div class="inbox">	
	<strong>public</strong><br /><br />
	<br /><br />
	<blockquote><p></p></blockquote>
</div>
</div>
<div id ="m_getData" class="box"><h2><span>getData ( string $fileName )</span></h2><div class="inbox">
	<strong>public</strong><br /><br />
	<br /><br />
	<blockquote><p></p></blockquote>
</div>
</div>
<div id ="m_getAll" class="box"><h2><span>getAll ()</span></h2><div class="inbox">
	<strong>public</strong><br /><br />
	<br /><br />
	<blockquote><p></p></blockquote>
</div>
</div>
</fieldset>
</div> 

<!-- FIN METHODES_2 / DEBUT METHODES_3 -->

<div id="m_3">
<fieldset><legend>Méthodes: Mise à jour des données</legend>

<div id ="m_setVar" class="box"><h2><span>setVar ( string $fileName, string $key, string $var, [bolean $isCode = false] )</span></h2><div class="inbox">
	<strong>public</strong><br /><br />
	<br /><br />
	<blockquote><p></p></blockquote>
</div>
</div>
<div id ="m_setData" class="box"><h2><span>setData ( string $fileName, array $var, [bolean $isCode = false] )</span></h2><div class="inbox">	
	<strong>public</strong><br /><br />
	Assigne $var au fichier $fileName et ajoute $fileName à $cache['save'].<br /><br />
	1. <strong>$fileName</strong>: Nom du fichier à traiter.<br />
	2. <strong>$var</strong>: tableau contenant les données.<br />
	3. <strong>$isCode</strong>: indique si les données doivent être sérialisées (false=sérialisées / true=non-sérialisées) (défaut: false).<br />
	&nbsp; &nbsp; Si défini à true, les données seront sauvegardées au format php array()
	<blockquote><p>$obj->assignVars('nomDuFichier', $un_tableau); // pour linéariser les données</p></blockquote>
	<blockquote><p>$obj->assignVars('nomDuFichier', $un_tableau, true); // ne pas linéariser les données</p></blockquote>
</div>
</div>
</fieldset>
</div> 

<!-- FIN METHODES_3 / DEBUT METHODES_4 -->

<div id="m_4">
<fieldset><legend>Méthodes: Sauvegarde des données</legend>
<div id ="m_saveFiles" class="box"><h2><span>saveFiles ( [bolean $result = false] )</span></h2><div class="inbox">	
	<strong>public</strong><br /><br />
	Lance la sauvegarde des fichiers définis dans $cache['save'] par les méthodes assignVar() et assignVars().<br /><br />
	<strong>$isEcho</strong>: si défini à true, affiche le résultat de la sauvegarde (défaut: false).
	<blockquote><p>$obj->save();</p></blockquote>
	<blockquote><p>$obj->save(true); // affiche 'Saved: [nomDuFichier1] [NomDuFichier2] ...'</p></blockquote>
</div>
</div>
<div id ="m_saveData" class="box"><h2><span>saveData ( string $fileName )</span></h2><div class="inbox">	
	<strong>protected</strong><br /><br />
	Enregistre les données de $fileName dans $cacheDir/$fileName.self::cacheEXT<br /><br />
	<strong>$fileName</strong>: Nom du fichier à enregistrer.
	<blockquote><p>$this->saveData('nomDuFichier');</p></blockquote>
</div>
</div> 
</fieldset>
</div> 

<!-- FIN METHODES_4 / DEBUT METHODES_5 -->

<div id="m_5">
<fieldset><legend>Méthodes internes</legend>
<div id ="m_cleanVarName" class="box"><h2><span>stringToVar ( string $var )</span></h2><div class="inbox">	
	<strong>protected</strong><br /><br />
	Nettoie une chaine afin qu'elle puisse être utilisé comme nom de variable.<br /><br />
	<strong>$var</strong>: la chaine à valider (dans le contexte de cette classe: un nom de fichier).
	<blockquote><p>$this->cleanVarName('3nom-Du-Fichier'); // retourne self::cachePFIX.'3nom_Du_Fichier'</p></blockquote>
</div>
</div>
<div id ="m_checkFile" class="box"><h2><span>checkFile ( string $fileName, [int $expire = 86400] )</span></h2><div class="inbox">	
	<strong>public</strong><br /><br />
	Vérifie si un fichier est plus agé que time()-$expire<br /><br />
	1. <strong>$fileName</strong>: Nom du fichier à vérifier.<br />
	2. <strong>$expire</strong>: durée d'expiration exprimée en secondes (défaut 86400 soit 24h).<br /><br />
	Retourne le temps restant avant expiration en secondes.<br />
	Retourne 0 si expiré.
	<blockquote><p>$var = $obj->checkFile('nomDuFichier', 3600);</p></blockquote>
</div>
</div>
<div id ="m_cleanVars" class="box"><h2><span>cleanVars ()</span></h2><div class="inbox">	
	<strong>public</strong><br /><br />
	Réinitialise $cache à sa valeur par défaut [array('file' => array(), 'content' => array(), 'save' => array())]
	<blockquote><p>$obj->cleanVars();</p></blockquote>
</div>
</div>
</fieldset>
</div> 

<!-- FIN METHODES_5 -->


</div>

<div class="clearer"></div>

</body>
</html>
Return current item: ifbCache