<?php class Employee { private $title; private $lastName; private $firstName; protected $salary; private $ratio = 0; public function __construct($title, $firstName, $mainName, $salary ) { $this->title = $title; $this->firstName = $firstName; $this->lastName = $mainName; $this->salary = $salary; }
public function firstName() { return $this->firstName; }
public function getlastName() { return $this->lastName; }
public function setRatio( $num ) { $this->ratio=$num; }
public function getRatio() { return $this->ratio; } public function getTitle() { return $this->title; }
public function getPrice() { return ($this->salary - $this->ratio); }
public function getFullName() { return "{$this->firstName}" . " {$this->lastName}"; }
function getSummaryLine() { $base = "$this->title ( $this->lastName, "; $base .= "$this->firstName )"; return $base; } }
class Developer extends Employee { private $stayYear = 0;
public function __construct($title, $firstName, $mainName, $salary, $stayYear ) { parent::__construct($title, $firstName, $mainName, $salary ); $this->stayYear = $stayYear; }
public function getStayLength() { return $this->stayYear; }
function getSummaryLine() { $base = parent::getSummaryLine(); $base .= ": playing time - $this->stayYear"; return $base; } } $developer = new Developer("A", "A1", "A2", 10.99, 60.33 );
if ( is_subclass_of( $developer, 'Employee' ) ) { print "Developer is a subclass of Employeen"; }
?>
|