Programmer avec SPIP 3.0
Documentation technique sur SPIP 3.0

> > > > Filtres issus de classes PHP

Filtres issus de classes PHP

Une écriture peu connue permet aussi d’exécuter des méthodes d’une classe PHP. Si l’on demande un filtre « x::y », SPIP cherchera une classe PHP « filtre_x » possédant une fonction « y » exécutable. S’il ne trouve pas, il cherchera une classe « filtre_x_dist » puis enfin une classe « x ».

  1. [(#BALISE|class::methode)]

Exemple

Imaginons une classe PHP définie comme ci-dessous. Elle contient une fonction (récursive par ailleurs) qui permet de calculer une factorielle (x! = x*(x-1)*(x-2)*...*3*2*1).

  1. class Math{
  2. function factorielle($n){
  3. if ($n==0)
  4. return 1;
  5. else
  6. return $n * Math::factorielle($n-1);
  7. }
  8. }

Télécharger

Elle peut être appelée comme ceci :

  1. [(#VAL{9}|Math::factorielle)]
  2. // renvoie 362880

Télécharger