当前位置:首页 > CN2资讯 > 正文内容

PHP重载php 方法重载

2天前CN2资讯


PHP中的重载指的是动态的创建属性与方法。是通过魔术方法来实现的。

属性的重载通过__set。__get,__isset,__unset来分别实现对不存在属性的赋值、读取、推断属性是否设置、销毁属性。

class Car {
private $ary = array();

public function __set($key, $val) {
$this->ary[$key] = $val;
}

public function __get($key) {
if (isset($this->ary[$key])) {
return $this->ary[$key];
}
return null;
}

public function __isset($key) {
if (isset($this->ary[$key])) {
return true;
}
return false;
}

public function __unset($key) {
unset($this->ary[$key]);
}
}
$car = new Car();
$car->name = '汽车'; //name属性动态创建并赋值
echo $car->name;


方法的重载通过__call来实现,当调用不存在的方法的时候,将会转为參数调用__call方法,当调用不存在的静态方法时会使用__callStatic重载。

class Car {
public $speed = 0;

public function __call($name, $args) {
if ($name == 'speedUp') {
$this->speed += 10;
}
}
}
$car = new Car();
$car->speedUp(); //调用不存在的方法会使用重载
echo $car->speed;

    你可能想看:

    扫描二维码推送至手机访问。

    版权声明:本文由皇冠云发布,如需转载请注明出处。

    本文链接:https://www.idchg.com/info/26065.html

    标签: PHP重载
    分享给朋友:

    “PHP重载php 方法重载” 的相关文章

    年抛域名的优势与续费注意事项,助您成功管理短期项目

    年抛域名是我在互联网世界中常遇到的一个概念,它们指的是那些注册时间为一年,使用者并不打算长期持有的域名。这类域名的价格往往比较低廉,非常适合一些短期项目或者测试用途。或许你有过这样的经历,想要尝试某个新项目,于是申请了一个年抛域名,一年后若不再需要,便无后顾之忧。这样的运作模式灵活高效,适合现代互联...

    解决Linode被封的问题与账户恢复策略分享

    Linode作为一款备受欢迎的美国VPS,其灵活性和服务质量吸引了众多用户。然而,基于我的经验,国内用户在使用Linode时常常面临被封的困扰。这不仅影响了使用体验,也对业务的持续性造成了影响。我想深入分析一下Linode被封的原因。 首先,Linode的全球网络状况在近年来遭遇了严峻挑战。随着越来...

    全面解析UDP攻击:类型、影响及有效防御策略

    在当今网络环境中,UDP攻击是一个话题无法忽视的安全隐患。它是一种常见的网络攻击形式,通常会给目标服务器带来严重的资源消耗。为了更好地理解这一现象,我们不妨简单回顾一下UDP协议的特性,以及攻击者是如何利用这一协议实施攻击的。 UDP,即用户数据报协议(User Datagram Protocol)...

    支付宝与PayPal充值攻略:如何选择适合的支付方式

    支付宝和PayPal是当今全球最受欢迎的支付平台之一,它们各自具有独特的特点和广泛的用户群体。支付宝成立于2004年,由阿里巴巴集团推出,最初是为了支持电子商务交易,逐渐发展成一个多功能的支付应用。用户不仅可以通过它进行在线支付,还可以进行转账、充值、理财等多种活动。随着移动支付的兴起,支付宝也积极...

    P100 GPU价格分析及购买指南 - 如何选择性价比最高的GPU

    在如今的计算技术中,P100 GPU扮演了一个至关重要的角色。尤其是对于那些需要进行大量并行计算的任务,比如深度学习、科学模拟和数据分析,P100 GPU是一款极具吸引力的选项。作为NVIDIA推出的高性能计算单元,P100 GPU不仅具备强大的计算能力,还拥有一系列先进的技术规格,使其在行业中脱颖...

    Husthost:为小型企业提供可靠的网页托管服务的最佳选择

    当我们谈到Husthost时,首先需要理解它的定义及背景。Husthost是一家提供网页托管服务的公司,致力于为个人和小型企业提供可靠的网络解决方案。随着越来越多的人将业务转向在线平台,Husthost应运而生,填补了这个市场的空白。它不仅关注于用户的需求,还不断完善自己的服务,以适应快速变化的网络...