this et fonction statique

Eléphanteau du PHP | 38 Messages

07 oct. 2023, 11:51

Bonjour j'essaie d'adapter un code mais vs code me signale une erreur avec $this, voici le code en question :

Code : Tout sélectionner

public static function db_escape($str) { if(!isset($this)) { $conn = AFFC5Calendar::connect(DB_HOST, DB_USERNAME, DB_PASSWORD, DATABASE); return mysqli_real_escape_string($conn, $str); } else { return mysqli_real_escape_string($this->connection, $str); } }
Pouvez-vous m'aider comment modifier mon code ?

ynx
Mammouth du PHP | 586 Messages

09 oct. 2023, 10:55

Bonjour,

Une méthode statique peut être appelé sans qu'une instance de classe ne soit créé, il n'est donc pas possible d'utiliser le mot-clé $this dans une méthode statique.
Si tu veux faire référence à la classe (et pas l'instance) dans ta méthode, tu peux utiliser le mot-clé self.
https://www.php.net/manual/fr/language. ... otayim.php