charger_fonction

Cette fonction charger_fonction() permet de récupérer le nom d’une fonction surchargeable de SPIP. Lorsqu’une fonction interne suffixée de _dist() est surchargée (en la recréant sans ce suffixe), ou lorsqu’on surcharge l’ensemble d’un fichier contenant une fonction de la sorte, il faut pouvoir récupérer la bonne fonction au moment de son exécution.

C’est cela que fait charger_fonction(). Elle retourne le nom de la fonction à exécuter.

$ma_fonction = charger_fonction('ma_fonction','repertoire');
$ma_fonction();

Principe de recherche

La fonction se comporte comme suit :

  • elle retourne si la fonction est déjà déclarée repertoire_ma_fonction,
  • sinon repertoire_ma_fonction_dist,
  • sinon tente de charger un fichier repertoire/ma_fonction.php puis
  • retourne repertoire_ma_fonction si existe,
  • sinon repertoire_ma_fonction_dist,
  • sinon renvoie false.

Exemple

Envoyer un mail :

$envoyer_mail = charger_fonction('envoyer_mail', 'inc');
$envoyer_mail($email, $sujet, $corps);

Auteur Matthieu Marcillaud Publié le : Mis à jour : 12/03/23

Traductions : English, français