Subversion Repositories eFlore/Applications.del

Compare Revisions

Ignore whitespace Rev 983 → Rev 1876

/trunk/widget/modules/vote/bibliotheque/Cache.php
1,10 → 1,10
<?php
class Cache {
 
private $actif = null;
private $dossier_stockage = null;
private $duree_de_vie = null;
 
public function __construct($dossier_stockage = null, $duree_de_vie = null, $activation = true) {
$this->actif = ($activation) ? true : false;
if ($this->actif) {
18,10 → 18,10
}
}
}
 
public function charger($id) {
$contenu = false;
if ($this->actif) {
if ($this->actif) {
$chemin_fichier_cache = $this->dossier_stockage.DIRECTORY_SEPARATOR.$id.'.txt';
if (file_exists($chemin_fichier_cache ) && (time() - @filemtime($chemin_fichier_cache) < $this->duree_de_vie)) {
$contenu = file_get_contents($chemin_fichier_cache);
29,11 → 29,11
}
return $contenu;
}
 
public function sauver($id, $contenu) {
if ($this->actif) {
$chemin_fichier_cache = $this->dossier_stockage.DIRECTORY_SEPARATOR.$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) {
43,7 → 43,7
}
}
}
 
/**
* Détermine le dossier système temporaire et détecte si nous y avons accès en lecture et écriture.
*
68,7 → 68,7
}
}
}
 
if ( ! $dossier_tmp) {
$dossier_televersement_tmp = ini_get('upload_tmp_dir');
if ($dossier_televersement_tmp) {
78,7 → 78,7
}
}
}
 
if ( ! $dossier_tmp) {
if (function_exists('sys_get_temp_dir')) {
$dossier = sys_get_temp_dir();
87,7 → 87,7
}
}
}
 
if ( ! $dossier_tmp) {
// Tentative de création d'un fichier temporaire
$fichier_tmp = tempnam(md5(uniqid(rand(), TRUE)), '');
99,18 → 99,18
}
}
}
 
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.
*
124,5 → 124,4
}
return $accessible;
}
}
?>
}