Fichier ecrire/inc/invalideur.php

Gestion du cache et des invalidations de cache

Source

Proposer une amélioration

Liste des constantes

Valeur

  • 3600

Package

Valeur

  • 1024 * 10

Package

Liste des fonctions

void applique_invalideur( $depart )

Paramètres

  1. $depart

Package

Proposer une amélioration
void calcul_invalideurs( $corps , $primary , & $boucles , $id_boucle )

Paramètres

  1. $corps
  2. $primary
  3. & $boucles
  4. $id_boucle

Package

Proposer une amélioration
void inc_retire_caches_dist( $chemin = '' )

Paramètres

  1. $chemin = ''

Package

Proposer une amélioration

Les invalideurs sont de la forme 'objet/id_objet'. La condition est géneralement "id='objet/id_objet'".

Ici on se contente de noter la date de mise à jour dans les metas, pour le type d'objet en question (non utilisé cependant) et pour tout le site (sur la meta derniere_modif)

void inc_suivre_invalideur_dist( string $cond , boolean $modif = true )

Paramètres

  1. string $cond

    Condition d'invalidation

  2. boolean $modif = true

    Inutilisé

Variables globales

  • derniere_modif_invalide Par défaut à true, la meta derniere_modif est systématiquement calculée dès qu'un invalideur se présente. Cette globale peut être mise à false (aucun changement sur derniere_modif) ou sur une liste de type d'objets (changements uniquement lorsqu'une modification d'un des objets se présente).

Package

Proposer une amélioration
void insere_invalideur( $inval , $fichier )

Paramètres

  1. $inval
  2. $fichier

Package

Proposer une amélioration
void maj_invalideurs( $fichier , & $page )

Paramètres

  1. $fichier
  2. & $page

Package

Proposer une amélioration

On ne calcule que la racine pour pour aller vite.

boolean | array nombre_de_fichiers_repertoire( string $dir , string $nb_estim_taille = 20 )

Paramètres

  1. string $dir

    Chemin du répertoire

  2. string $nb_estim_taille = 20

    Nombre de fichiers maximum pour estimer la taille

Retour

  • boolean | array
    • false si le répertoire ne peut pas être ouvert
    • array(nombre de fichiers, approximation de la taille en octet) sinon

Package

Proposer une amélioration

Utilisée entre autres pour vider le cache depuis l'espace privé

integer purger_repertoire( string $dir , array $options = array() )

Paramètres

  1. string $dir

    Chemin du répertoire à purger

  2. array $options = array()

    Tableau des options. Peut être :

    - atime : timestamp pour ne supprimer que les fichiers antérieurs
      à cette date (via fileatime)
    
    - mtime : timestamp pour ne supprimer que les fichiers antérieurs
      à cette date (via filemtime)
    
    - limit : nombre maximum de suppressions

Retour

  • integer

    Nombre de fichiers supprimés

Package

Proposer une amélioration
void retire_cache( $cache )

Paramètres

  1. $cache

Package

Proposer une amélioration
void retire_caches( $chemin = '' )

Paramètres

  1. $chemin = ''

Package

Proposer une amélioration
void suivre_invalideur( $cond , $modif = true )

Paramètres

  1. $cond
  2. $modif = true

Package

Proposer une amélioration

Pour de gros volumes, impossible d'ouvrir chaque fichier, on y va donc à l'estime !

integer taille_du_cache( )

Retour

  • integer

    Taille approximative en octets

Package

Proposer une amélioration

Liste des erreurs

GravitéLigneDescription
Erreur 232
  • Argument $cache is missing from the Docblock of retire_cache
  • No summary for function \retire_cache()
Erreur 249
  • No summary for function \inc_retire_caches_dist()
  • Argument $chemin is missing from the Docblock of inc_retire_caches_dist
Erreur 262
  • No summary for function \retire_caches()
  • Argument $chemin is missing from the Docblock of retire_caches
Erreur 273
  • No summary for function \calcul_invalideurs()
  • Argument $id_boucle is missing from the Docblock of calcul_invalideurs
  • Argument $primary is missing from the Docblock of calcul_invalideurs
  • Argument $corps is missing from the Docblock of calcul_invalideurs
  • Argument $boucles is missing from the Docblock of calcul_invalideurs
Erreur 286
  • No summary for function \supprime_invalideurs()
Erreur 295
  • Argument $fichier is missing from the Docblock of maj_invalideurs
  • No summary for function \maj_invalideurs()
  • Argument $page is missing from the Docblock of maj_invalideurs
Erreur 304
  • Argument $fichier is missing from the Docblock of insere_invalideur
  • No summary for function \insere_invalideur()
  • Argument $inval is missing from the Docblock of insere_invalideur
Erreur 314
  • No summary for function \applique_invalideur()
  • Argument $depart is missing from the Docblock of applique_invalideur
Erreur 323
  • No summary for function \suivre_invalideur()
  • Argument $cond is missing from the Docblock of suivre_invalideur
  • Argument $modif is missing from the Docblock of suivre_invalideur