PHP 中的函数重载和覆盖
phpserver side programmingprogramming更新于 2025/5/5 18:52:17
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!