Bonjour à tous,

J'ai un petit problème que je ne sais résoudre...

Je possède une méthode d'une classe qui contient elle même une fonction de callback utile uniquement à cette méthode.

Un exemple simplifié :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
class maClasse
{
    private $attr = 10;
    private function maMethode()
    {
        function maFonction($attribut)
        {
           // Ici j'ai besoin de pouvoir accéder à $this->attr
        }
        // Ici un preg_replace_callback() se servant de maFonction()
    }
}
Mon problème est que je ne sais pas comment accéder dans maFonction() à $this.

Je ne peux passer $this->attr dans les arguments de maFonction(), à moins qu'il n'y est un moyen de le faire que je ne connaisse pas.
Je ne peux mettre $this->attr en global, php me jette un fatal error, ce qui est complètement logique.

Ma question donc comment faire pour que maFonction() puisse accéder à $this ?