class Person { private $firstName, $lastName, $phone, $email; public function __construct($first, $last) { $this->firstName = $first; $this->lastName = $last; } public function getFirstName() { return $this->firstName; } public function setFirstName($value) { $this->firstName = $value; } public function getLastName() { return $this->lastName; } public function setLastName($value) { $this->lastName = $value; } public function getPhone() { return $this->phone; } public function setPhone($value) { $this->phone = $value; } public function getEmail() { return $this->email; } public function setEmail($value) { $this->email = $value; } }
class Employee extends Person { private $ssn, $hireDate; public function __construct($first, $last, $ssn, $hireDate) { $this->ssn = $ssn; $this->hireDate = $hireDate; // Call Person constructor to finish initialization parent::__construct($first, $last); } public function getSSN() { return $this->ssn; } } public function setSSN($value) { $this->ssn = $value; } public function getHireDate() { return $this->hireDate; } public function setHireDate($value) { $this->hireDate = $value; } }
$emp = new Employee('John', 'Doe', '999-14-3456', '8-25-1996'); $emp->setPhone('919-555-4321'); // Inherited from Person Class