php 容错语句,php 的简略存在 (魔术方法作用之一:容错)

本文介绍了PHP的魔术方法,如__get、__set、__isset和__unset,它们在处理不可访问属性时提供容错能力。通过示例展示了如何使用这些方法进行对象属性的获取、设置、判断存在及销毁,从而实现对对象数据的灵活操作。
摘要由CSDN通过智能技术生成

php 的简单存在 (魔术方法作用之一:容错)

<?php

// 重载

class Person{

//定义属性

public $name;

private $age;

//构造方法

public function __construct($name,$age){

$this->name =$name;

$this->age =$age;

}

//获取魔术方法

# @param string $name

public function __get($param){

// return $this->$param;

#允许被访问的属性

$allow = array('age');

if(in_array($param, $allow)){

return $this->$param;

}

}

//__set() 设置魔术方法

#@param string $name

#param string $val

public function __set($name,$val){

$allow = array('age','money');

if(in_array($name, $allow)){

$this->$name=$val;

}

}

// __isset() 判定数据

public function __isset($name){

return isset($this->$name);

}

//__unset 销毁数据

public function __unset($name){

//建立unset列表

$allow =array('tail');

if(in_array($name,$allow)){

echo 'unset running';

unset($this->$name);

}

}

}

//实例化

$p = new Person('zp',21);

$p->age = 200;

echo $p->money = 200000000;

$p->tail ="a";

var_dump(isset($p->name));

var_dump(isset($p->age));

var_dump(isset($money));

// var_dump(empty($tail));

unset($p->tail);

// var_dump($tail);

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值