Web EndMemo


PHP Object Oriented Programming


PHP is an Object Oriented Programming language. The class keyword is used to declare a class, and the new keyword is used to create an obj of that class.

<?PHP
class colleague
{
	private $name;
	private $age;
	public $city;

	public function colleague($n="",$a=""){
		$this->name = $n;
		$this->age = $a;
		$this->city = "unknown";
	}
	
    public function __construct() {}	
    public function __destruct() {}		
}
$obj = new colleague("john","25");
var_dump($obj); //show contents of object $obj
?>

The class properties with keyword public can be accessed, and those with keyword private cannot.

<?PHP
echo "$obj->city";  //print "unknown"
$obj->city = "New York";
echo "$obj->city";  //print "New York"
//Fatal error: Cannot access private property colleague::$name ...
$obj->name = "Mary";
echo "$obj->name"; 
?>

We can define a method to access the private property:

<?PHP
class colleague
{
	...
	public function setname($n=""){
		$this->name = $n;
	}
	public function getname(){
		echo "$this->name";
	}
}
$obj->setname("Mary");
$obj->getname();   //Print "Mary"
?>

Class inheritance:

<?PHP
class managercolleague extends colleague
{
	private $officenumber;
	public function setoffice($ofc){
		$this->officenumber = $ofc;
	}
	public function getoffice($ofc){
		echo "$this->officenumber";
	}
	//overwite colleague class construct function
	public function _construct(){
		parent::_construct();
		$this->officenumber = "000";
	}
}
$mobj = new managercolleague;
$mobj->setoffice("324");
$mobj->getoffice();  //Print 324
?>