filtres_dates.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
Functions
- normaliser_date() : string
- Normaliser une date vers le format datetime (Y-m-d H:i:s)
- vider_date() : string
- Enlève une date considérée comme vide
- recup_heure() : array<string|int, mixed>
- Retrouve à partir d'une chaîne les valeurs heures, minutes, secondes.
- heures() : string
- Retourne l'heure d'une date
- minutes() : string
- Retourne les minutes d'une date
- secondes() : string
- Retourne les secondes d'une date
- heures_minutes() : string
- Retourne l'horaire (avec minutes) d'une date, tel que `12h36min`
- recup_date() : array<string|int, mixed>
- Retrouve à partir d'une date les valeurs année, mois, jour, heures, minutes, secondes
- date_interface() : string
- Retourne une date relative si elle est récente, sinon une date complète
- date_relative() : string
- Retourne une date relative (passée ou à venir)
- date_relativecourt() : string
- Retourne une date relative courte (passée ou à venir)
- affdate_base() : string
- Formatage humain de la date `$numdate` selon le format `$vue`
- nom_jour() : string
- Affiche le nom du jour pour une date donnée
- jour() : string
- Affiche le numéro du jour (1er à 31) pour une date donnée
- journum() : string
- Affiche le numéro du jour (1 à 31) pour une date donnée
- mois() : string
- Affiche le numéro du mois (01 à 12) pour une date donnée
- nom_mois() : string
- Affiche le nom du mois pour une date donnée
- annee() : string
- Affiche l'année sur 4 chiffres d'une date donnée
- saison() : string
- Affiche le nom boréal ou austral de la saison
- saison_annee() : string
- Affiche le nom boréal ou austral de la saison suivi de l'année en cours
- affdate() : string
- Formate une date
- affdate_court() : string
- Formate une date, omet l'année si année courante, sinon omet le jour
- affdate_jourcourt() : string
- Formate une date, omet l'année si année courante
- affdate_mois_annee() : string
- Retourne le mois en toute lettre et l’année d'une date
- affdate_heure() : string
- Retourne la date suivie de l'heure
- affdate_debut_fin() : string
- Afficher de facon textuelle les dates de début et fin en fonction des cas
- date_ical() : string
- Adapte une date pour être insérée dans une valeur de date d'un export ICAL
- date_iso() : string
- Retourne une date formattée au format "RFC 3339" ou "ISO 8601"
- date_822() : string
- Retourne une date formattée au format "RFC 822"
- date_anneemoisjour() : string
- Pour une date commençant par `Y-m-d`, retourne `Ymd`
- date_anneemois() : string
- Pour une date commençant par `Y-m`, retourne `Ym`
- date_debut_semaine() : string
- Retourne le premier jour (lundi) de la même semaine au format `Ymd`
- date_fin_semaine() : string
- Retourne le dernier jour (dimanche) de la même semaine au format `Ymd`
Functions
normaliser_date()
Normaliser une date vers le format datetime (Y-m-d H:i:s)
    
                    normaliser_date(string $date[, bool $forcer_jour = false ]) : string
    
        Parameters
- $date : string
- 
                    La date à normaliser 
- $forcer_jour : bool = false
- 
                    true pour forcer à indiquer un jour et mois (01) s'il n'y en a pas. 
Tags
Return values
string —- une date au format datetime
- une chaîne vide si la date est considérée nulle
vider_date()
Enlève une date considérée comme vide
    
                    vider_date(string|null $letexte[, bool $verif_format_date = false ]) : string
    
        Parameters
- $letexte : string|null
- $verif_format_date : bool = false
Tags
Return values
string —- La date entrée (si elle n'est pas considérée comme nulle)
- Une chaine vide
recup_heure()
Retrouve à partir d'une chaîne les valeurs heures, minutes, secondes.
    
                    recup_heure(string $date) : array<string|int, mixed>
        Les formats 11:29:55 ou 11:29 sont autorisés.
Parameters
- $date : string
- 
                    Chaîne de date contenant éventuellement un horaire 
Return values
array<string|int, mixed> —- [heures, minutes, secondes] si format horaire autorisé
- [0, 0, 0] sinon
heures()
Retourne l'heure d'une date
    
                    heures(string $numdate) : string
    
        Parameters
- $numdate : string
- 
                    La date à extraire 
Tags
Return values
string —heures, sinon 0
minutes()
Retourne les minutes d'une date
    
                    minutes(string $numdate) : string
    
        Parameters
- $numdate : string
- 
                    La date à extraire 
Tags
Return values
string —minutes, sinon 0
secondes()
Retourne les secondes d'une date
    
                    secondes(string $numdate) : string
    
        Parameters
- $numdate : string
- 
                    La date à extraire 
Tags
Return values
string —secondes, sinon 0
heures_minutes()
Retourne l'horaire (avec minutes) d'une date, tel que `12h36min`
    
                    heures_minutes(string $numdate[, string $forme = '' ]) : string
    
        Parameters
- $numdate : string
- 
                    La date à extraire 
- $forme : string = ''
- 
                    . - si vide, précise l'unité des minutes : 12h10min
- si 'abbr' ne précise pas l'unité des minutes : 12h10
 
Tags
Return values
string —L'heure formatée dans la langue en cours.
recup_date()
Retrouve à partir d'une date les valeurs année, mois, jour, heures, minutes, secondes
    
                    recup_date(string $numdate[, bool $forcer_jour = true ]) : array<string|int, mixed>
        Annee, mois, jour sont retrouvés si la date contient par exemple :
- '03/11/2015', '3/11/15'
- '2015-11-04', '2015-11-4'
- '2015-11'
Dans ces cas, les heures, minutes, secondes sont retrouvés avec recup_heure()
Annee, mois, jour, heures, minutes, secondes sont retrouvés si la date contient par exemple :
- '20151104111420'
Parameters
- $numdate : string
- 
                    La date à extraire 
- $forcer_jour : bool = true
- 
                    True pour tout le temps renseigner un jour ou un mois (le 1) s'il ne sont pas indiqués dans la date. 
Tags
Return values
array<string|int, mixed> —[année, mois, jour, heures, minutes, secondes] ou []
date_interface()
Retourne une date relative si elle est récente, sinon une date complète
    
                    date_interface(string $date[, int $decalage_maxi = 43200 ]) : string
        En fonction de la date transmise, peut retourner par exemple :
- «il y a 3 minutes»,
- «il y a 11 heures»,
- «10 mai 2015 à 10h23min»
Parameters
- $date : string
- 
                    La date fournie 
- $decalage_maxi : int = 43200
- 
                    Durée écoulée, en secondes, à partir de laquelle on bascule sur une date complète. Par défaut +/- 12h. 
Tags
Return values
string —La date relative ou complète
date_relative()
Retourne une date relative (passée ou à venir)
    
                    date_relative(string $date[, int $decalage_maxi = 0 ][, string $ref_date = null ]) : string
        En fonction de la date transmise ainsi que de la date de référence (par défaut la date actuelle), peut retourner par exemple :
- «il y a 3 minutes»,
- «il y a 2 semmaines»,
- «dans 1 semaine»
Parameters
- $date : string
- 
                    La date fournie 
- $decalage_maxi : int = 0
- 
                    Durée écoulée, en secondes, au delà de laquelle on ne retourne pas de date relative Indiquer 0(par défaut) pour ignorer.
- $ref_date : string = null
- 
                    La date de référence pour le calcul relatif, par défaut la date actuelle 
Tags
Return values
string —- La date relative
- "" si pas de date ou si elle dépasse le décalage maximum indiqué.
date_relativecourt()
Retourne une date relative courte (passée ou à venir)
    
                    date_relativecourt(string $date[, int $decalage_maxi = 0 ]) : string
        Retourne «hier», «aujourd'hui» ou «demain» si la date correspond, sinon
utilise date_relative()
Parameters
- $date : string
- 
                    La date fournie 
- $decalage_maxi : int = 0
- 
                    Durée écoulée, en secondes, au delà de laquelle on ne retourne pas de date relative Indiquer 0(par défaut) pour ignorer.
Tags
Return values
string —- La date relative
- "" si pas de date ou si elle dépasse le décalage maximum indiqué.
affdate_base()
Formatage humain de la date `$numdate` selon le format `$vue`
    
                    affdate_base(string $numdate, string $vue[, array<string|int, mixed> $options = [] ]) : string
    
        Parameters
- $numdate : string
- 
                    Une écriture de date 
- $vue : string
- 
                    Type de format souhaité ou expression pour strtotime()tel queY-m-d h:i:s
- $options : array<string|int, mixed> = []
- 
                    {param: string, annee_courante: int} - param: 'abbr' ou 'initiale' permet d'afficher les jours au format court ou initiale
- annee_courante: Permet de definir l'annee de reference pour l'affichage des dates courtes
 
Return values
stringnom_jour()
Affiche le nom du jour pour une date donnée
    
                    nom_jour(string $numdate[, string $forme = '' ]) : string
    
        Parameters
- $numdate : string
- 
                    Une écriture de date 
- $forme : string = ''
- 
                    Forme spécifique de retour : - initiale : l'initiale du jour
- abbr : abbréviation du jour
- '' : le nom complet (par défaut)
 
Tags
Return values
string —Nom du jour
jour()
Affiche le numéro du jour (1er à 31) pour une date donnée
    
                    jour(string $numdate) : string
        Utilise une abbréviation (exemple "1er") pour certains jours, en fonction de la langue utilisée.
Parameters
- $numdate : string
- 
                    Une écriture de date 
Tags
Return values
string —Numéro du jour
journum()
Affiche le numéro du jour (1 à 31) pour une date donnée
    
                    journum(string $numdate) : string
    
        Parameters
- $numdate : string
- 
                    Une écriture de date 
Tags
Return values
string —Numéro du jour
mois()
Affiche le numéro du mois (01 à 12) pour une date donnée
    
                    mois(string $numdate) : string
    
        Parameters
- $numdate : string
- 
                    Une écriture de date 
Tags
Return values
string —Numéro du mois (sur 2 chiffres)
nom_mois()
Affiche le nom du mois pour une date donnée
    
                    nom_mois(string $numdate[, string $forme = '' ]) : string
    
        Parameters
- $numdate : string
- 
                    Une écriture de date 
- $forme : string = ''
- 
                    Forme spécifique de retour : - abbr : abbréviation du mois
- '' : le nom complet (par défaut)
 
Tags
Return values
string —Nom du mois
annee()
Affiche l'année sur 4 chiffres d'une date donnée
    
                    annee(string $numdate) : string
    
        Parameters
- $numdate : string
- 
                    Une écriture de date 
Tags
Return values
string —Année (sur 4 chiffres)
saison()
Affiche le nom boréal ou austral de la saison
    
                    saison(string $numdate[, string $hemisphere = 'nord' ]) : string
    
        Parameters
- $numdate : string
- 
                    Une écriture de date 
- $hemisphere : string = 'nord'
- 
                    Nom optionnel de l'hémisphère (sud ou nord) ; par défaut nord 
Tags
Return values
string —La date formatée
saison_annee()
Affiche le nom boréal ou austral de la saison suivi de l'année en cours
    
                    saison_annee(string $numdate[, string $hemisphere = 'nord' ]) : string
    
        Parameters
- $numdate : string
- 
                    Une écriture de date 
- $hemisphere : string = 'nord'
- 
                    Nom optionnel de l'hémisphère (sud ou nord) ; par défaut nord 
Tags
Return values
string —La date formatée
affdate()
Formate une date
    
                    affdate(string $numdate[, string $format = 'entier' ]) : string
    
        Parameters
- $numdate : string
- 
                    Une écriture de date 
- $format : string = 'entier'
- 
                    Type de format souhaité ou expression pour strtotime()tel queY-m-d h:i:s
Tags
Return values
string —La date formatée
affdate_court()
Formate une date, omet l'année si année courante, sinon omet le jour
    
                    affdate_court(string $numdate[, int|null $annee_courante = null ]) : string
        Si l'année actuelle (ou indiquée dans $annee_courante) est 2015,
retournera "21 juin" si la date en entrée est le 21 juin 2015,
mais retournera "juin 2013" si la date en entrée est le 21 juin 2013.
Parameters
- $numdate : string
- 
                    Une écriture de date 
- $annee_courante : int|null = null
- 
                    L'année de comparaison, utilisera l'année en cours si omis. 
Tags
Return values
string —La date formatée
affdate_jourcourt()
Formate une date, omet l'année si année courante
    
                    affdate_jourcourt(string $numdate[, int|null $annee_courante = null ]) : string
        Si l'année actuelle (ou indiquée dans $annee_courante) est 2015,
retournera "21 juin" si la date en entrée est le 21 juin 2015,
mais retournera "21 juin 2013" si la date en entrée est le 21 juin 2013.
Parameters
- $numdate : string
- 
                    Une écriture de date 
- $annee_courante : int|null = null
- 
                    L'année de comparaison, utilisera l'année en cours si omis. 
Tags
Return values
string —La date formatée
affdate_mois_annee()
Retourne le mois en toute lettre et l’année d'une date
    
                    affdate_mois_annee(string $numdate) : string
        Ne retourne pas le jour donc.
Parameters
- $numdate : string
- 
                    Une écriture de date 
Tags
Return values
string —La date formatée
affdate_heure()
Retourne la date suivie de l'heure
    
                    affdate_heure(string $numdate) : string
    
        Parameters
- $numdate : string
- 
                    Une écriture de date 
Tags
Return values
string —La date formatée, sinon ''
affdate_debut_fin()
Afficher de facon textuelle les dates de début et fin en fonction des cas
    
                    affdate_debut_fin(string $date_debut, string $date_fin[, string $horaire = 'oui' ][, string $forme = '' ]) : string
        - Lundi 20 fevrier a 18h
- Le 20 fevrier de 18h a 20h
- Du 20 au 23 fevrier
- Du 20 fevrier au 30 mars
- Du 20 fevrier 2007 au 30 mars 2008
$horaire='oui' ou true permet d'afficher l'horaire,
toute autre valeur n'indique que le jour
$forme peut contenir une ou plusieurs valeurs parmi
- abbr(afficher le nom des jours en abrege)
- hcal(generer une date au format hcal)
- jour(forcer l'affichage des jours)
- annee(forcer l'affichage de l'annee)
Parameters
- $date_debut : string
- $date_fin : string
- $horaire : string = 'oui'
- $forme : string = ''
- 
                    - abbrpour afficher le nom du jour en abrege (Dim. au lieu de Dimanche)
- anneepour forcer l'affichage de l'annee courante
- jourpour forcer l'affichage du nom du jour
- hcalpour avoir un markup microformat abbr
 
Return values
string —texte de la date
date_ical()
Adapte une date pour être insérée dans une valeur de date d'un export ICAL
    
                    date_ical(string $date[, int $addminutes = 0 ]) : string
        Retourne une date au format Ymd\THis\Z, tel que '20150428T163254Z'
Parameters
- $date : string
- 
                    La date 
- $addminutes : int = 0
- 
                    Ajouter autant de minutes à la date 
Tags
Return values
string —Date au format ical
date_iso()
Retourne une date formattée au format "RFC 3339" ou "ISO 8601"
    
                    date_iso(string $date_heure) : string
    
        Parameters
- $date_heure : string
- 
                    Une écriture de date 
Tags
Return values
string —La date formatée
date_822()
Retourne une date formattée au format "RFC 822"
    
                    date_822(string $date_heure) : string
        Utilisé pour <pubdate> dans certains flux RSS
Parameters
- $date_heure : string
- 
                    Une écriture de date 
Tags
Return values
string —La date formatée
date_anneemoisjour()
Pour une date commençant par `Y-m-d`, retourne `Ymd`
    
                    date_anneemoisjour(string $d) : string
    
        Parameters
- $d : string
- 
                    Une écriture de date commençant par un format Y-m-d(comme date ou datetime SQL). Si vide, utilise la date actuelle.
Tags
Return values
string —Date au format Ymd
date_anneemois()
Pour une date commençant par `Y-m`, retourne `Ym`
    
                    date_anneemois(string $d) : string
    
        Parameters
- $d : string
- 
                    Une écriture de date commençant par un format Y-m(comme date ou datetime SQL). Si vide, utilise la date actuelle.
Tags
Return values
string —Date au format Ym
date_debut_semaine()
Retourne le premier jour (lundi) de la même semaine au format `Ymd`
    
                    date_debut_semaine(int $annee, int $mois, int $jour) : string
    
        Parameters
- $annee : int
- $mois : int
- $jour : int
Tags
Return values
string —Date au lundi de la même semaine au format Ymd
date_fin_semaine()
Retourne le dernier jour (dimanche) de la même semaine au format `Ymd`
    
                    date_fin_semaine(int $annee, int $mois, int $jour) : string
    
        Parameters
- $annee : int
- $mois : int
- $jour : int
Tags
Return values
string —Date au dimanche de la même semaine au format Ymd