Module FONCTIONS

Fonctions utilitaires pour vos projets

Ce module vous permettra d'utiliser des fonctions secondaires génériques qui pourront vous aider en PHP.

getLibelle()

Cette fonction interroge la base de données pour récupérer une valeur précise dans une table, en fonction d’un identifiant. Elle utilise une requête préparée pour éviter les injections SQL.


<?php
function getLibelle($table, $colonne, $colonne_condition, $id, $dbh) 
	{
	$stmt = $dbh->prepare("SELECT `$colonne` FROM `$table` WHERE `$colonne_condition` = :id LIMIT 1");
	$stmt->bindParam(':id', $id);
	$stmt->execute();

	$result = $stmt->fetch(PDO::FETCH_ASSOC);
	return $result ? $result[$colonne] : null;
	}
?>
									
Permet de récupérer une donnée unique en base de manière sécurisée.
Date_FR()

Cette fonction convertit une date vers un format français jj/mm/aaaa. Elle accepte différents formats d’entrée comme Y-m-d ou Y/m/d.


<?php
function Date_FR($date)
    {
    $formats = ['Y-m-d', 'Y/m/d'];

    foreach ($formats as $format) 
        {
        $dt = DateTime::createFromFormat($format, $date);
        if ($dt !== false) 
            {
            return $dt->format('d/m/Y');
            }
        }
    return false; // ou lancer une exception si format invalide
    }
?>
									
Idéal pour afficher des dates lisibles côté utilisateur.
Date_EN()

Cette fonction transforme une date en format standard YYYY-MM-DD, utilisé par les bases de données et les champs HTML <input type="date">. Elle gère aussi les dates en format texte français.


<?php
function Date_EN($date)
    {
    $formats = ['Y-m-d', 'Y/m/d', 'd/m/Y'];

    foreach ($formats as $format) 
        {
        $dt = DateTime::createFromFormat($format, $date);

        if ($dt !== false) 
            {
            return $dt->format('Y-m-d'); // format pour <input type="date">
            }
        }

    // Format français texte : "4 octobre 2024"
    $fmt = new IntlDateFormatter(
        'fr_FR',
        IntlDateFormatter::NONE,
        IntlDateFormatter::NONE,
        null,
        null,
        'd MMMM yyyy'
    );

    $timestamp = $fmt->parse($date);
    if ($timestamp !== false) 
        {
        return date('Y-m-d', $timestamp);
        }
    return false; // format invalide
    }
?>
									
Utile pour normaliser les dates avant insertion en base ou affichage dans un formulaire.
formatPhoneNumber()

Cette fonction nettoie et formate un numéro de téléphone. Si le numéro contient 10 chiffres, il sera affiché avec un espace tous les deux chiffres.


<?php
function formatPhoneNumber($phone) 
    {
    // Supprimer tous les caractères non numériques
    $digits = preg_replace('/\D/', '', $phone);

    // Vérifier si le numéro a exactement 10 chiffres
    if (strlen($digits) === 10) 
        {
        // Ajouter un espace tous les deux chiffres
        return preg_replace('/(\d{2})(\d{2})(\d{2})(\d{2})(\d{2})/', '$1 $2 $3 $4 $5', $digits);
        }

    // Retourner le numéro original si ce n'est pas un numéro à 10 chiffres
    return $phone;
    }
?>
									
Améliore la lisibilité des numéros de téléphone côté interface utilisateur.