2017-10-20 45 views
1

Je ne peux pas comprendre pourquoi cette erreur enregistre même jusqu'à:classe PHP Undefined variable (Mais il est défini)

Avis: Undefined variable: authtime en /.../classname.class. php on line 33

class ClassName { 

private $authTime = null; 


const API_URL  = '...'; 
const CLIENT_ID  = '...'; 
const CLIENT_SECRET = '...'; 

private static $TOKEN  = NULL; 


public function __construct() { 
$this->_authTime = $authTime; // <----- Line 33 
if(!self::$TOKEN OR $this->AuthTime('GET') > 3600 OR !$this->_authTime) { 
    self::authorise(); 
} 
} 

public function getAuthTime() { 
    return $this->_authTime; // Returns NULL 
} 
+0

Où est-ce défini? C'est l'usage juste après la déclaration du constructeur? mais jamais déclaré. Et pourquoi le trait de soulignement devant la propriété? '_authTime' – mega6382

+0

https://stackoverflow.com/review/suggested-edits/17688430 Pourquoi cette modification ajoute-t-elle le retour dans ?? –

Répondre

3

Je vois $authTime n'est pas défini dans le constructeur. Je pense que vous voulez faire:

$this->_authTime = $this->authTime; 
+0

Ok ...: o Cela s'est débarrassé de l'erreur, mais quand j'essaie de spécifier la valeur de cette variable '$ this-> authTime = time();' J'obtiens la même erreur. ** Edit: ** Mon mauvais, j'appelais '$ this->' dans une fonction statique. Merci pour l'aide. Mon héros! : D –

+0

De rien. Je suis heureux d'avoir pu aider :) –