PHP 函数重载和重写


PHP 函数重载

函数重载是一种允许使用相同名称创建多个方法的功能,这些方法使用作为参数接受的输入参数的类型而相互区别。

示例

让我们看一个实现函数重载的示例−

 动态演示

<?php
   class Shape {
      const PI = 3.142 ;
      function __call($name,$arg){
         if($name == 'area')
            switch(count($arg)){
               case 0 : return 0 ;
               case 1 : return self::PI * $arg[0] ;
               case 2 : return $arg[0] * $arg[1];
            }
      }
   }
   $circle = new Shape();
   echo $circle->area(3);
   $rect = new Shape();
   echo $rect->area(8,6);
?>

输出

这将产生以下输出−

9.42648

PHP 函数重写

在函数重写中,父类和子类具有具有相同数目的参数的相同函数名

示例

让我们看一个实现函数重写的示例−

 动态演示

<?php
   class Base {
      function display() {
         echo "
Base class function declared final!";       }       function demo() {          echo "
Base class function!";       }    }    class Derived extends Base {       function demo() {          echo "
Derived class function!";       }    }    $ob = new Base;    $ob->demo();    $ob->display();    $ob2 = new Derived;    $ob2->demo();    $ob2->display(); ?>

输出

这将产生以下输出−

Base class function!
Base class function declared final!
Derived class function!
Base class function declared final!

更新于: 2020 年 1 月 2 日

11K+ 浏览

开启你的 职业生涯

通过完成课程取得认证

开始学习
广告