一起源码网

  • www.171739.xyz
  • 全球最大的互联网技术和资源下载平台
搜索
猜你喜欢
查看: 5500|回复: 1
打印 上一主题 下一主题

php中如何实现各种拦截器的思路

[复制链接]

0

主题

0

帖子

1万

积分

钻石会员

Rank: 8Rank: 8

积分
17424
QQ
跳转到指定楼层
楼主
发表于 2020-4-16 18:30 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式
PHP提供了几个拦截器,用于在访问未定义的方法和属性时被调用,当访问未定义的类属性时,__get($property) 会被调用,$property为被访问的属性名。当给未定义的类属性赋值时,__set($property, $value) 会被调用,$property为被赋值的属性名,$value为被赋予的值。

首先下载我们本节课程所需要用到的php中各种拦截器类库:

下载完成之后找到我们需要的php类文件,解压至我们本地目录,创建新的php文件!

完成之后,我们要在新的php文件里调用这类,以及实例化该类:

<?php
include_once "dingyi.php";//引入类文件
$ob = new lanjie();       //实例化
//当我们调用对象$ob未定义的属性g时,调用拦截器__get()方法,输出"g property not found!”;
echo $ob->g;
echo "<br>";


$p = new person(); //实例化
$p->name = 'bob';
//这里我们可以很清楚的看到 , 当给未定义的'name'赋值时 ,  会调用"__set()”
print_r( array( $p ) );
?>

运行此文件,得到结果如下图所示:

分享到:  QQ好友和群QQ好友和群
收藏收藏
回复

使用道具 举报

0

主题

18

帖子

56

积分

注册会员

Rank: 2

积分
56
沙发
发表于 2022-9-24 20:58 | 只看该作者
简单的网站制作代码
回复

使用道具 举报

一起源码让程序更轻更快

www.171739.xyz

工作时间 周一至周六 8:00-17:30

侵权处理

客服QQ点击咨询

关注抖音号

定期抽VIP

Copyright © 2016-2021 https://www.171739.xyz/ 滇ICP备13200218号

快速回复 返回顶部 返回列表