php 类中的各种拦截器
1、__get( $property ) 访问未定义的属性时调用
class lanjie
{function __get($name){echo $name." property not found! ";}
}$ob = new lanjie();
echo $ob->g;
当我们调用对象$ob未定义的属性g时,调用拦截器__get()方法,输出“g property not found!”;
2、__set( $property , $value ) 给未定义的属性调用时赋值
class person
{private $_age;private $_name;function __set($name, $value){$method = "set". ucfirst($name);echo $method;if(method_exists($this, $method) ){return $this->$method( $value );}}function setName( $name ){$this->_name = $name;if( !is_null($this->_name) ){$this->_name = strtoupper($this->_name);}}function setAge( $age ){return $this->_age = (int)$age;}
}$p = new person();
$p->name = 'bob';
print_r( array( $p ) );
这里我们可以很清楚的看到 , 当给未定义的‘name’赋值时 , 会调用“__set()”
其他的还有 __call(), __isset() , __unset();
这里最有用和最常用的的是__call() , 当调用一个为存在的方法时被调用; __isset()是在对一个为定义的属性使用isset()函数时被调用, __unset是在对未定义的数以使用unset时被调用
转自:http://blog.csdn.net/shuiping567541/article/details/7061258
php 类中的各种拦截器相关推荐
- php拦截器配置,php 类中的各种拦截器
1.__get($property)访问未定义的属性时调用 classlanjie{PHP 1.__get( $property ) 访问未定义的属性时调用 class lanjie { funct ...
- spring拦截器覆盖_Spring中使用Interceptor拦截器
SpringMVC 中的Interceptor 拦截器也是相当重要和相当有用的,它的主要作用是拦截用户的请求并进行相应的处理.比如通过它来进行权限验证,或者是来判断用户是否登陆,或者是像12306 那 ...
- SpringMVC中使用Interceptor拦截器
2019独角兽企业重金招聘Python工程师标准>>> SpringMVC 中的Interceptor 拦截器也是相当重要和相当有用的,它的主要作用是拦截用户的请求并进行相应的处理. ...
- 使用struts2中默认的拦截器以及自定义拦截器
转自:http://blog.sina.com.cn/s/blog_82f01d350101echs.html 如何使用struts2拦截器,或者自定义拦截器.特别注意,在使用拦截器的时候,在Acti ...
- SpringBoot中文件下载、拦截器、war包部署、jar包部署
3. SpringBoot中文件下载 将可以被下载资源放在磁盘的 D:\springbootcodes\springboot_day6\download 路径 这里我们使用jsp开发 引入依赖使tom ...
- springboot中配置了拦截器后,拦截器无效的解决方案之一
springboot中配置了拦截器后,拦截器无效的解决方案之一 参考文章: (1)springboot中配置了拦截器后,拦截器无效的解决方案之一 (2)https://www.cnblogs.com/ ...
- vue项目中 axios请求拦截器与取消pending请求功能 - 年少、 - 博客园
在开发vue项目中,请求是不可缺少的,在发送请求时常常需要统一处理一些请求头参数等设置与响应事件,这时利用请求拦截器再好不过. 这里以axios请求为例 实现了设置统一请求头添加token, 其中to ...
- 微软将在新版Edge浏览器中支持广告拦截器
3月31日消息,据路透社报道,微软周四表示,公司正在考虑让下一版本的Edge浏览器实现通过第三方拓展件支持广告过滤功能. 科技网站ZDNet今天早些时候根据一张拍摄自微软开发者大会的产品蓝图指出,该公 ...
- springboot 添加拦截器之后中文乱码_springboot中配置了拦截器后,拦截器无效的解决方案之一...
springboot的启动类xxxApplication不能扫描到拦截器配置类,可加上@ComponentScan(basePackages={"com.maya.common"} ...
最新文章
- 编程自动化,未来机器人将超越人类?
- 安全无忧,函数计算推出访问用户VPC功能,实现自定义的多类VPC网络资源互通...
- 如何使用JCA (J2EE 连接器架构)实现企业应用--转载
- 用python语言调试程序你用的平台是_Python 程序如何高效地调试?
- 项目Alpha冲刺(团队)-代码规范、冲刺任务与计划
- win8f8修复计算机,Win8怎么在启动时按F8出现修复计算机选项
- 从0到1构建支撑企业自动化运维体系
- python列表内置函数_Python-列表总结(操作符、方法、内置函数、相关模块)
- 模拟地铁乘车推荐c语言,模拟地铁新手攻略 新手必看三要素
- linux常用命令速查手册
- 阿里专家:怎么样消除程序员的中年危机?
- javaweb开发后端常用技术_java后端开发需要掌握什么技术
- php通用查询系统excel,php+excel通用课表查询系统
- [Matlab有限元分析] 1.有限元分析的发展、基本概念和特点
- RFID全面梳理(超高频)
- 使用matlab的appdesigner绘制Steward并联机构
- nodejs中使用nodemon加载文件报错
- postman替换快捷键ctrl加什么_你会用 Ctrl + ~ 键吗?
- DfE给学生提供的笔记本电脑感染了恶意软件
- 激励人生10张英文励志海报
热门文章
- mysql 生成json,结合CONCAT()和COALESCE()在MySQL中生成JSON
- 一起来了解React的四种优秀甘特图方案(下篇)
- 机器学习中的算法(4.2):SVM----针对线性可分问题理解
- 直方图(opencv)
- 【深度学习】(4) 梯度下降、损失函数
- ubunntu安装php7.0_在 Ubuntu/Debian 下安装 PHP7.3 教程
- 在CentOS 6.9 x86_64搭建Lua开发环境
- Ubuntu 12.04 64bit上安装Apache Traffic Server 4.1.2
- UE5真实环境设计入门学习教程
- c语言中volatile关键字的作用