"Erreur fatale PHP : utilisation de $this lorsqu'il n'est pas dans le contexte de l'objet" résolu
Rencontre de l'erreur "Erreur fatale : utilisation de $this lorsque pas dans le contexte d'objet" indique que le mot clé $this référencé est utilisé en dehors d'un contexte de classe. Pour mieux comprendre cela, disséquons votre code :
Dans votre index.php, vous avez besoin du fichier load.php, qui à son tour nécessite le class.php. Dans class.php, l'erreur se produit en raison de l'affectation $this->foo dans le constructeur.
La ligne $this->foo = $foo; tente d'accéder à la propriété foo de l'objet actuel, mais sans instancier un objet, il n'y a pas de $this auquel faire référence. Ainsi, cette ligne n'est pas valide en dehors d'un contexte d'objet.
Pour rectifier l'erreur, vous devez instancier un objet de la classe foobar et appeler ses méthodes sur cet objet. Ceci peut être réalisé grâce aux exemples suivants :
Invocation de méthode statique :
Modifiez votre class.php en déclarant la méthode foobarfunc comme statique et en définissant une variable statique $foo . Cela vous permet d'appeler directement la méthode sans instancier un objet.
Invocation d'objet :
Instancier un objet de la classe foobar en utilisant $foobar = new foobar; puis appelez ses méthodes sur cet objet en utilisant $foobar->foobarfunc();.
Par conséquent, l'erreur se produit lorsque vous tentez d'utiliser $this en dehors du contexte d'un objet. Pour le résoudre, utilisez des méthodes statiques sans $this référence ou instanciez un objet et appelez des méthodes dessus.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!