如何在PHP中实现方法重载?
PHP代表超文本预处理器,它是一种流行的通用脚本语言,主要用于 Web 开发。它快速、灵活、实用,最新版本的PHP是面向对象的,这意味着您可以编写类、使用继承、多态、数据抽象、封装、构造函数、析构函数以及重载(方法和函数)。
重载:重载是一个面向对象的概念,其中两个或多个方法具有相同的方法名称,但具有不同的参数或参数(强制)和返回类型(非必需)。它可以通过构造函数重载、运算符重载和方法重载来完成。
在本文中,我们将在PHP中实现方法重载。
PHP中的方法重载:
示例:给出以下代码将显示一些错误。
PHP
multiply(3,6);
?>
PHP
multiply(2);
$class->multiply(5, 7);
?>
输出:显示错误是因为我们在 GFG 类中重新声明了函数multiply() 。
PHP Fatal error: Cannot redeclare GFG::multiply()
注意:在 C++ 等其他编程语言中,这适用于重载方法。为了在PHP中实现方法重载,我们必须利用 PHP 的神奇方法__call()来实现方法重载。
__call():在PHP中,如果一个类执行__call() ,并且如果该类的对象使用不存在的方法调用,则调用__call()而不是该方法。下面的代码演示了这一点。
例子:
PHP
multiply(2);
$class->multiply(5, 7);
?>
输出:
35