文章 2023-04-11 来自:开发者社区

为什么PHP不允许重载?底层原理是什么?

PHP 不允许方法重载的原因是历史遗留问题和设计选择。在 PHP 早期版本中,函数和方法都是以相同的方式处理的。当一个函数或方法被调用时,PHP 只会根据名称来查找对应的代码。因此,如果一个类定义了多个同名方法,PHP 将无法确定要调用哪个方法。为了解决这个问题,PHP 开发团队决定不支持方法重载,而是采用了魔术方法来模拟重载的行为。这样可以确保方法调用始终只有一个明确的路径,并且可以避免潜在的....

文章 2023-04-07 来自:开发者社区

PHP中的重载只是针对魔术方法吗?底层原理是什么?

在 PHP 中,重载只针对魔术方法,也称为动态方法调用。PHP 中的魔术方法是指以 __ 开头的一些特殊方法,它们可以重载类的行为。PHP 支持以下几种魔术方法:__get($name):在访问不存在或不可见的属性时调用。__set($name, $value):在给不存在或不可见的属性赋值时调用。__isset($name):在对不存在或不可见的属性使用 isset() 时调用。__unset....

本页面内关键词为智能算法引擎基于机器学习所生成,如有任何问题,可在页面下方点击"联系我们"与我们沟通。

产品推荐

PHP学习站

PHP学习资料大全

+关注