Monday, 17 April 2017

Overloading and Overriding in php

Overloading in PHP


class overloading {
    public $methodName;
    public function __construct($argu) {
        $this->methodName = $argu;
    }
    public function __call($methodname, $agru) {
         if($methodname == 'sum2') {

          if(count($agru) == 2) {
              $this->sum($agru[0], $agru[1]);
          }
          if(count($agrument) == 3) {

              echo $this->sum1($agru[0], $agru[1], $agru[2]);
          }
        }
    }
    public function sum($a, $b) {
        return $a + $b;
    }
    public function sum1($a,$b,$c) {

        return $a + $b + $c;
    }
}
$object = new overloading('Sum');
echo $object->sum2(1,2,3);//6

Overriding in PHP

<?php

class A {
   function print() {
      return "print::1";
   }
}

class B extends A {
   function print() {
      return "print::2";
   }
}

$foo = new A;
$bar = new B;
echo($foo->print()); //"print::1"
echo($bar->print()); //"print::2"
?>

No comments:

Post a Comment