Re: unexpected T_NEW on object property

From: Date: Fri, 21 Apr 2006 22:01:30 +0000
Subject: Re: unexpected T_NEW on object property
References: 1  Groups: php.general 
Request: Send a blank email to php-general+get-234531@lists.php.net to get a copy of this message
Paul Barry wrote: ..
Then I have another class: <?php require_once('model/Address.class.php'); class User {
    public $name;
    public $address = new Address();
this is wrong. you can define the property in the class with a constant or scalar value (i.e. literal string, numeric value or an array) but not a return value of a function or a 'new' object. you should initialize the $address property in the contructor of the User object like so: class User {
     public $name;
     public $address;
     function __construct($name = '')
     {
$this->name = strval($name);
        $this->address = new Address;
     }
} it's good practice to only set values to the objects properties once it's contructed (or while it's being constructed - as per my example).
} ?>


« previous php.general (#234531) next »