Вы не можете поместить две функции __construct с уникальными сигнатурами сигнатур в классе PHP. Я хотел бы сделать это:
class Student 
{
   protected $id;
   protected $name;
   // etc.
   public function __construct($id){
       $this->id = $id;
      // other members are still uninitialized
   }
   public function __construct($row_from_database){
       $this->id = $row_from_database->id;
       $this->name = $row_from_database->name;
       // etc.
   }
}
Каков наилучший способ сделать это в PHP?
