Is it possible to define a PHP class property and assign the value dynamically using a property within the same class? Something like:
class user {
public $firstname = "jing";
public $lastname = "ping";
public $balance = 10;
public $newCredit = 5;
public $fullname = $this->firstname.' '.$this->lastname;
public $totalBal = $this->balance+$this->newCredit;
function login() {
//some method goes here!
}
}
Yields:
Parse error: syntax error, unexpected '$this' (T_VARIABLE) on line 6
Is anything wrong in the above code? If so, please guide me and if it is not possible then what is a good way to accomplish this?
No, you cannot set properties like that.
However: you can set them in the constructor, so they will be available if someone creates an instance of the class :
You can put it into the constructor like this:
Why can't you do it the way you wanted? A quote from the manual explains it:
For more infromation about OOP properties see the manual: http://php.net/manual/en/language.oop5.properties.php