Ajout et appel de méthodes PHP dans la classe userFunction

Bonjour à tous,

Je me sens un peu stupide avec ma question, mais mes cours de programmation remontent à fort longtemps, et je n’ai pas vraiment trouvé la réponse ailleurs.

J’aimerais implémenter une fonction privée dans la classe userFunction, et y faire appel dans une méthode publique, mais pour l’instant tous mes essais ont échoué.

require_once __DIR__ . '/../../core/php/core.inc.php';

class userFunction {

	public static function plop($_arg1 = '') {
                $this->test();
		return 'Argument 1 : ' . $_arg1;
	}

       private function test() {
              return true;
       }
}

Dans l’exemple ci-dessus, comment dois-je déclarer une fonction privée pour y faire appel dans la fonction publique ‹ plop › ? J’ai essayé $this->maFonction() mais cela se traduit par une 500:Internal server error

PS : la fonction n’a aucune utilité, c’est juste pour l’exercice.

Je pense avoir loupé quelque chose…

R.

Salut,

cela ne fonctionne pas car dans l’exemple la fonction est static, c’est à dire quelle peut-être appellée sans passé par le constructeur de la class. Dans ton exemple :

tu ajoute static à ta fonction

private static function test()

et dans plop, tu fais :

self::test();
ou
userFunction::test();

Et bein oui, ça me rappelle quelques notions d’objets et évidemment ça fonctionne bien mieux :slight_smile:

Merci +++