filesystem.php
SPIP, Système de publication pour l'internet
Copyright © avec tendresse depuis 2001 Arnaud Martin, Antoine Pitrou, Philippe Rivière, Emmanuel Saint-James
Ce programme est un logiciel libre distribué sous licence GNU/GPL.
Table of Contents
Constants
Functions
- flock_fopen_lock_dist() : resource|false
- flock_fclose_unlock_dist() : bool
- spip_fopen_lock() : resource|false
- Ouvre un fichier et le vérrouille
- spip_fclose_unlock() : bool
- Dévérrouille et ferme un fichier
- spip_file_get_contents() : string
- Retourne le contenu d'un fichier, même si celui ci est compréssé avec une extension en `.gz`
- lire_fichier() : bool
- Lit un fichier et place son contenu dans le paramètre transmis.
- ecrire_fichier() : bool
- Écrit un fichier de manière un peu sûre
- ecrire_fichier_securise() : mixed
- Écrire un contenu dans un fichier encapsulé en PHP pour en empêcher l'accès en l'absence de fichier htaccess
- ecrire_fichier_calcule_si_modifie() : bool|null
- lire_fichier_securise() : bool
- Lire un fichier encapsulé en PHP
- raler_fichier() : never
- Affiche un message d’erreur bloquant, indiquant qu’il n’est pas possible de créer le fichier à cause des droits sur le répertoire parent au fichier.
- jeune_fichier() : bool
- Teste si un fichier est récent (moins de n secondes)
- supprimer_fichier() : bool
- Supprimer un fichier de manière sympa (flock)
- spip_unlink() : mixed
- Supprimer brutalement un fichier ou un dossier, s'il existe
- spip_clear_opcode_cache() : mixed
- Invalidates a PHP file from any active opcode caches.
- spip_attend_invalidation_opcode_cache() : mixed
- Attendre l'invalidation de l'opcache
- supprimer_repertoire() : bool
- Suppression complete d'un repertoire.
- sous_repertoire() : string
- Crée un sous répertoire
- preg_files() : array<string|int, mixed>
- Parcourt récursivement le repertoire `$dir`, et renvoie les fichiers dont le chemin vérifie le pattern (preg) donné en argument.
Constants
_spip_attend_invalidation_opcode_cache
    public
        mixed
    _spip_attend_invalidation_opcode_cache
    = true
    
    
    
    
Functions
flock_fopen_lock_dist()
    
                    flock_fopen_lock_dist(string $fichier, string $mode, int<0, 7> $verrou) : resource|false
    
        Parameters
- $fichier : string
- $mode : string
- $verrou : int<0, 7>
Return values
resource|false —Ressource sur le fichier ouvert, sinon false.
flock_fclose_unlock_dist()
    
                    flock_fclose_unlock_dist(resource $handle) : bool
    
        Parameters
- $handle : resource
- 
                    Chemin du fichier 
Return values
boolspip_fopen_lock()
Ouvre un fichier et le vérrouille
    
                    spip_fopen_lock(string $fichier, string $mode, int $verrou) : resource|false
    
        Parameters
- $fichier : string
- 
                    Chemin du fichier 
- $mode : string
- 
                    Mode d'ouverture du fichier (r,w,...) 
- $verrou : int
- 
                    Type de verrou 
Tags
Return values
resource|false —Ressource sur le fichier ouvert, sinon false.
spip_fclose_unlock()
Dévérrouille et ferme un fichier
    
                    spip_fclose_unlock(resource $handle) : bool
    
        Parameters
- $handle : resource
- 
                    Chemin du fichier 
Tags
Return values
bool —true si succès, false sinon.
spip_file_get_contents()
Retourne le contenu d'un fichier, même si celui ci est compréssé avec une extension en `.gz`
    
                    spip_file_get_contents(string $fichier) : string
    
        Parameters
- $fichier : string
- 
                    Chemin du fichier 
Return values
string —Contenu du fichier
lire_fichier()
Lit un fichier et place son contenu dans le paramètre transmis.
    
                    lire_fichier(string $fichier, string &$contenu[, array<string|int, mixed> $options = [] ]) : bool
        Décompresse automatiquement les fichiers .gz
Parameters
- $fichier : string
- 
                    Chemin du fichier 
- $contenu : string
- 
                    Le contenu du fichier sera placé dans cette variable 
- $options : array<string|int, mixed> = []
- 
                    Options tel que : - 'phpcheck' => 'oui' : vérifie qu'on a bien du php
 
Tags
Return values
bool —true si l'opération a réussie, false sinon.
ecrire_fichier()
Écrit un fichier de manière un peu sûre
    
                    ecrire_fichier(string $fichier, string $contenu[, bool $ignorer_echec = false ][, bool $truncate = true ]) : bool
        Cette écriture s’exécute de façon sécurisée en posant un verrou sur le fichier avant sa modification. Les fichiers .gz sont compressés.
Parameters
- $fichier : string
- 
                    Chemin du fichier 
- $contenu : string
- 
                    Contenu à écrire 
- $ignorer_echec : bool = false
- 
                    - true pour ne pas raler en cas d'erreur
- false affichera un message si on est webmestre
 
- $truncate : bool = true
- 
                    Écriture avec troncation ? 
Tags
Return values
bool —- true si l’écriture s’est déroulée sans problème.
ecrire_fichier_securise()
Écrire un contenu dans un fichier encapsulé en PHP pour en empêcher l'accès en l'absence de fichier htaccess
    
                    ecrire_fichier_securise(string $fichier, string $contenu[, bool $ecrire_quand_meme = false ][, bool $truncate = true ]) : mixed
    
        Parameters
- $fichier : string
- 
                    Chemin du fichier 
- $contenu : string
- 
                    Contenu à écrire 
- $ecrire_quand_meme : bool = false
- 
                    - true pour ne pas raler en cas d'erreur
- false affichera un message si on est webmestre
 
- $truncate : bool = true
- 
                    Écriture avec troncation ? 
Tags
ecrire_fichier_calcule_si_modifie()
    
                    ecrire_fichier_calcule_si_modifie(string $fichier, string $contenu[, bool $force = false ]) : bool|null
    
        Parameters
- $fichier : string
- $contenu : string
- $force : bool = false
Return values
bool|null —false en cas d'erreur true en cas d'ecriture suite à modification null si fichier inchangé car pas de modif
lire_fichier_securise()
Lire un fichier encapsulé en PHP
    
                    lire_fichier_securise(string $fichier, string &$contenu[, array<string|int, mixed> $options = [] ]) : bool
    
        Parameters
- $fichier : string
- 
                    Chemin du fichier 
- $contenu : string
- 
                    Le contenu du fichier sera placé dans cette variable 
- $options : array<string|int, mixed> = []
- 
                    Options tel que : - 'phpcheck' => 'oui' : vérifie qu'on a bien du php
 
Tags
Return values
bool —true si l'opération a réussie, false sinon.
raler_fichier()
Affiche un message d’erreur bloquant, indiquant qu’il n’est pas possible de créer le fichier à cause des droits sur le répertoire parent au fichier.
    
                    raler_fichier(string $fichier) : never
        Arrête le script PHP par un exit;
Parameters
- $fichier : string
Tags
Return values
neverjeune_fichier()
Teste si un fichier est récent (moins de n secondes)
    
                    jeune_fichier(string $fichier, int $n) : bool
    
        Parameters
- $fichier : string
- 
                    Chemin du fichier 
- $n : int
- 
                    Âge testé, en secondes 
Return values
bool —- true si récent, false sinon
supprimer_fichier()
Supprimer un fichier de manière sympa (flock)
    
                    supprimer_fichier(string $fichier[, bool $lock = true ]) : bool
    
        Parameters
- $fichier : string
- 
                    Chemin du fichier 
- $lock : bool = true
- 
                    true pour utiliser un verrou 
Return values
bool —- true si le fichier n'existe pas ou s'il a bien été supprimé
- false si on n'arrive pas poser le verrou ou si la suppression échoue
spip_unlink()
Supprimer brutalement un fichier ou un dossier, s'il existe
    
                    spip_unlink(string $f) : mixed
    
        Parameters
- $f : string
- 
                    Chemin du fichier 
spip_clear_opcode_cache()
Invalidates a PHP file from any active opcode caches.
    
                    spip_clear_opcode_cache(string $filepath) : mixed
        If the opcode cache does not support the invalidation of individual files, the entire cache will be flushed. kudo : http://cgit.drupalcode.org/drupal/commit/?id=be97f50
Parameters
- $filepath : string
- 
                    The absolute path of the PHP file to invalidate. 
spip_attend_invalidation_opcode_cache()
Attendre l'invalidation de l'opcache
    
                    spip_attend_invalidation_opcode_cache([mixed $timestamp = null ]) : mixed
        Si opcache est actif et en mode validate_timestamps,
le timestamp du fichier ne sera vérifié qu'après une durée
en secondes fixée par revalidate_freq.
Il faut donc attendre ce temps là pour être sûr qu'on va bien bénéficier de la recompilation du fichier par l'opcache.
Ne fait rien en dehors de ce cas
Parameters
- $timestamp : mixed = null
Tags
supprimer_repertoire()
Suppression complete d'un repertoire.
    
                    supprimer_repertoire(string $dir) : bool
    
        Parameters
- $dir : string
- 
                    Chemin du repertoire 
Tags
Return values
bool —Suppression reussie.
sous_repertoire()
Crée un sous répertoire
    
                    sous_repertoire(string $base[, string $subdir = '' ][, bool $nobase = false ][, bool $tantpis = false ]) : string
        Retourne $base/{$subdir}/ si le sous-repertoire peut être crée
Parameters
- $base : string
- 
                    - Chemin du répertoire parent (avec $subdir)
- sinon chemin du répertoire à créer
 
- $subdir : string = ''
- 
                    - Nom du sous répertoire à créer,
- non transmis, $subdirvaut alors ce qui suit le dernier/dans$base
 
- $nobase : bool = false
- 
                    true pour ne pas avoir le chemin du parent $base/dans le retour
- $tantpis : bool = false
- 
                    true pour ne pas raler en cas de non création du répertoire 
Tags
Return values
string —Chemin du répertoire créé.
preg_files()
Parcourt récursivement le repertoire `$dir`, et renvoie les fichiers dont le chemin vérifie le pattern (preg) donné en argument.
    
                    preg_files(string $dir[, int|string $pattern = -1 ][, int $maxfiles = 10000 ][, array<string|int, mixed> $recurs = [] ]) : array<string|int, mixed>
        En cas d'echec retourne un array() vide
Parameters
- $dir : string
- 
                    Répertoire à parcourir 
- $pattern : int|string = -1
- 
                    Expression régulière pour trouver des fichiers, tel que [.]lock$
- $maxfiles : int = 10000
- 
                    Nombre de fichiers maximums retournés 
- $recurs : array<string|int, mixed> = []
- 
                    false pour ne pas descendre dans les sous répertoires 
Tags
Return values
array<string|int, mixed> —Chemins des fichiers trouvés.