Documentation du code de SPIP et de ses plugins

Cache Factory

ezcache.php

Ce fichier contient les fonctions de service du plugin Cache.

Chaque fonction, soit aiguille, si elle existe, vers une fonction "homonyme" propre au plugin appelant soit déroule sa propre implémentation. Ainsi, les plugins externes peuvent utiliser, si elle leur convient, l'implémentation proposée par Cache Factory.

Table of Contents

Constants

_EZCACHE_CODAGE_CSV_DELIMITEUR  = ['csv' => ',', 'tsv' => "\t", 'ssv' => ';']

Functions

ezcache_cache_configurer()  : array<string, mixed>
Récupère ou charge la configuration des types de cache d'un plugin, la complète et la stocke dans une meta.
ezcache_cache_verifier()  : array<string, mixed>
Vérifie l'identifiant relatif du cache et le complète le cas échéant si le plugin utilise un sous-dossier ou un préfixe.
ezcache_cache_composer()  : string
Construit le chemin complet du fichier cache.
ezcache_cache_decomposer()  : array<string, mixed>
Décompose le chemin complet du fichier cache en éléments constitutifs. Par défaut, le tableau obtenu coïncide avec l’identifiant relatif du cache. La fonction utilise la configuration générale pour connaitre la structure du chemin du fichier.
ezcache_cache_completer()  : array<string, mixed>
Complète la description d'un cache issue du service `cache_decomposer()`.
ezcache_cache_encoder()  : string
Encode le contenu futur d'un cache (tableau) en fonction de l'attribut de codage configuré pour le type de cache.
ezcache_cache_decoder()  : array<string|int, mixed>
Décode le contenu du fichier cache en fonction de l'attribut de codage configuré pour le type de cache.
ezcache_cache_valider()  : bool
Vérifie la validité du fichier cache.
ezcache_valider_codage()  : bool
Vérifie la validité du codage.
ezcache_sous_chemin()  : void
Crée tous les répertoires manquants dans une arborescence donnée.

Constants

_EZCACHE_CODAGE_CSV_DELIMITEUR

public mixed _EZCACHE_CODAGE_CSV_DELIMITEUR = ['csv' => ',', 'tsv' => "\t", 'ssv' => ';']

Functions

ezcache_cache_configurer()

Récupère ou charge la configuration des types de cache d'un plugin, la complète et la stocke dans une meta.

ezcache_cache_configurer(string $plugin) : array<string, mixed>

Le plugin Cache Factory propose une configuration par défaut des caches.

Parameters
$plugin : string

Identifiant qui permet de distinguer le module appelant qui peut-être un plugin comme le noiZetier ou un script. Pour un plugin, le plus pertinent est d'utiliser le préfixe.

Tags
uses
ezcache_chercher_service()
uses
lire_config()
uses
ecrire_config()
used-by
ezcache_affiche_milieu()
used-by
configuration_cache_recharger()
used-by
configuration_cache_lire()
Return values
array<string, mixed>

Tableau des configurations complétée des caches d'un plugin venant d'être enregistrée.

ezcache_cache_verifier()

Vérifie l'identifiant relatif du cache et le complète le cas échéant si le plugin utilise un sous-dossier ou un préfixe.

ezcache_cache_verifier(string $plugin, array<string, mixed> $cache, array<string, mixed> $configuration) : array<string, mixed>
Parameters
$plugin : string

Identifiant qui permet de distinguer le module appelant qui peut-être un plugin comme le noiZetier ou un script. Pour un plugin, le plus pertinent est d'utiliser le préfixe.

$cache : array<string, mixed>

Tableau identifiant le cache pour lequel on veut construire le nom.

$configuration : array<string, mixed>

Configuration complète des caches du plugin utlisateur lue à partir de la meta de stockage.

Tags
uses
ezcache_chercher_service()
used-by
cache_ecrire()
used-by
cache_lire()
used-by
cache_nommer()
used-by
cache_supprimer()
Return values
array<string, mixed>

L'identifiant relatif du cache vérifié et éventuellement complété ou tableau vide si erreur.

ezcache_cache_composer()

Construit le chemin complet du fichier cache.

ezcache_cache_composer(string $plugin, array<string, mixed> $cache, array<string, mixed> $configuration) : string
Parameters
$plugin : string

Identifiant qui permet de distinguer le module appelant qui peut-être un plugin comme le noiZetier ou un script. Pour un plugin, le plus pertinent est d'utiliser le préfixe.

$cache : array<string, mixed>

Tableau identifiant le cache pour lequel on veut construire le nom.

$configuration : array<string, mixed>

Configuration complète des caches du plugin utlisateur lue à partir de la meta de stockage.

Tags
uses
ezcache_chercher_service()
used-by
cache_ecrire()
used-by
cache_lire()
used-by
cache_est_valide()
used-by
cache_nommer()
used-by
cache_supprimer()
Return values
string

ezcache_cache_decomposer()

Décompose le chemin complet du fichier cache en éléments constitutifs. Par défaut, le tableau obtenu coïncide avec l’identifiant relatif du cache. La fonction utilise la configuration générale pour connaitre la structure du chemin du fichier.

ezcache_cache_decomposer(string $plugin, string $fichier_cache, array<string, mixed> $configuration) : array<string, mixed>

Cache Factory renvoie uniquement les éléments de l'identifiant relatif.

Parameters
$plugin : string

Identifiant qui permet de distinguer le module appelant qui peut-être un plugin comme le noiZetier ou un script. Pour un plugin, le plus pertinent est d'utiliser le préfixe.

$fichier_cache : string

Le chemin complet du fichier à phraser.

$configuration : array<string, mixed>

Configuration complète des caches du plugin utlisateur lue à partir de la meta de stockage.

Tags
uses
ezcache_chercher_service()
used-by
cache_ecrire()
used-by
cache_supprimer()
used-by
cache_repertorier()
used-by
cache_vider()
Return values
array<string, mixed>

Tableau des composants constitutifs du cache

ezcache_cache_completer()

Complète la description d'un cache issue du service `cache_decomposer()`.

ezcache_cache_completer(string $plugin, array<string, mixed> $cache, string $fichier_cache, array<string, mixed> $configuration) : array<string, mixed>

Le plugin Cache Factory complète la description canonique avec le nom sans extension, l'extension du fichier, la date et la taille du fichier.

Parameters
$plugin : string

Identifiant qui permet de distinguer le module appelant qui peut-être un plugin comme le noiZetier ou un script. Pour un plugin, le plus pertinent est d'utiliser le préfixe.

$cache : array<string, mixed>

Tableau identifiant le cache pour lequel on veut construire le nom.

$fichier_cache : string

Fichier cache désigné par son chemin complet.

$configuration : array<string, mixed>

Configuration complète des caches du plugin utilisateur lue à partir de la meta de stockage.

Tags
uses
ezcache_chercher_service()
used-by
cache_repertorier()
Return values
array<string, mixed>

Description du cache complétée par un ensemble de données propres au plugin.

ezcache_cache_encoder()

Encode le contenu futur d'un cache (tableau) en fonction de l'attribut de codage configuré pour le type de cache.

ezcache_cache_encoder(string $plugin, string $codage, array<string|int, mixed> $contenu, array<string, mixed> $configuration) : string

Le plugin Cache Factory utilise des fonctions standard de PHP, de SPIP, du plugin YAML ou les siennes (CSV).

  • Un plugin appelant peut proposer une fonction spécifique de décodage
Parameters
$plugin : string

Identifiant qui permet de distinguer le module appelant qui peut-être un plugin comme le noiZetier ou un script. Pour un plugin, le plus pertinent est d'utiliser le préfixe.

$codage : string

Codage à prendre en priorité par rapport à celui configuré (utile parfois pour les csv)

$contenu : array<string|int, mixed>

Contenu futur du fichier cache au format tableau.

$configuration : array<string, mixed>

Configuration complète des caches du plugin utilisateur lue à partir de la meta de stockage.

Tags
uses
ezcache_chercher_service()
Return values
string

Contenu tabulaire du cache encodé en chaine si la fonction idoine a été appliqué ou chaine vide sinon.

ezcache_cache_decoder()

Décode le contenu du fichier cache en fonction de l'attribut de codage configuré pour le type de cache.

ezcache_cache_decoder(string $plugin, string $codage, string $contenu, array<string, mixed> $configuration) : array<string|int, mixed>

Le plugin Cache Factory utilise des fonctions standard de PHP, de SPIP, du plugin YAML ou les siennes (CSV). Un plugin appelant peut proposer une fonction spécifique de décodage

Parameters
$plugin : string

Identifiant qui permet de distinguer le module appelant qui peut-être un plugin comme le noiZetier ou un script. Pour un plugin, le plus pertinent est d'utiliser le préfixe.

$codage : string

Codage à prendre en priorité par rapport à celui configuré (utile parfois pour les csv)

$contenu : string

Contenu du fichier cache au format chaine.

$configuration : array<string, mixed>

Configuration complète des caches du plugin utilisateur lue à partir de la meta de stockage.

Tags
uses
ezcache_chercher_service()
throws
Exception
used-by
cache_lire()
Return values
array<string|int, mixed>

Contenu du cache décodé en tableau si la fonction idoine a été appliquée ou tableau vide sinon.

ezcache_cache_valider()

Vérifie la validité du fichier cache.

ezcache_cache_valider(string $plugin, string $fichier_cache, array<string, mixed> $cache, array<string, mixed> $configuration) : bool

Le plugin Cache Factory teste toujours la péremption du fichier (durée de conservation issue). Il est toutefois possible de rajouter des tests spécifiques en appelant un service propre au plugin.

Parameters
$plugin : string

Identifiant qui permet de distinguer le module appelant qui peut-être un plugin comme le noiZetier ou un script. Pour un plugin, le plus pertinent est d'utiliser le préfixe.

$fichier_cache : string

Le chemin complet du fichier à valider.

$cache : array<string, mixed>

Tableau identifiant le cache (redondant avec l'argument $fichier_cache mais peut être nécessaire pour les éventuels tests complémentaires du plugin utilisateur.

$configuration : array<string, mixed>

Configuration complète des caches du plugin utlisateur lue à partir de la meta de stockage.

Tags
uses
ezcache_chercher_service()
used-by
cache_est_valide()
Return values
bool

true si le cache est valide, false sinon.

ezcache_valider_codage()

Vérifie la validité du codage.

ezcache_valider_codage(string $codage) : bool
Parameters
$codage : string
Return values
bool

true si le codage est valide, false sinon.

ezcache_sous_chemin()

Crée tous les répertoires manquants dans une arborescence donnée.

ezcache_sous_chemin(string $arborescence) : void

Les répertoires sont séparés par des '/'.

Parameters
$arborescence : string

Arborescence telle que 'prive/squelettes/contenu'

Tags
example

ezcache_sous_chemin('a/b/c/d'); appelle sous_repertoire() autant de fois que nécéssaire.


        
On this page

Search results