php 实现get,set方式读取属性值
来源:互联网 发布:最优化求解软件 编辑:程序博客网 时间:2024/05/22 06:54
JavaBan中的通过get,set方式获取/设置属性值,同时在jstl可以通过对象名.属性名的方式读取属性值。如果想在php中实现前述功能如何处理呢。php需要通过__get和__set两个魔术方法实现java中的get,set方法
/** * 通过魔术方法实现javabean的get方法 * @param $name 参数名 * @return mixed 自动调用对应的方法名 */ public function __get($name){ $getter = 'get'.ucfirst($name); if (method_exists($this, $getter)) { return $this->$getter(); }elseif (method_exists($this, 'set'.$name)){ throw new Exception('read-only property:'.$name); }else{ throw new Exception('unknown property:'.$name); } } /** * 通过魔术方法实现javabean的set方法 * @param $name 参数名 * @param $value 参数值 */ public function __set($name, $value){ $setter = 'set'.ucfirst($name); if (method_exists($this, $setter)) { $this->$setter($value); }elseif (method_exists($this, 'get'.$name)){ throw new Exception('write-only property:'.$name); }else { throw new Exception('unknown property:'.$name); } }
0 0
- php 实现get,set方式读取属性值
- PHP使用方法重载实现动态创建属性的get和set方法
- PHP动态创建属性的get和set方法
- 反射的set/get属性值
- C# get;set;属性。
- 属性之get,set
- 属性 set ,get 方法
- Swift set get 属性
- 深入了解隐式属性和带实现值属性的区别(属性中get{},set{}访问器小解)
- php set get
- C++实现C#的get,set属性操作
- get、set读写属性详解
- 属性,简化get和set
- C# get和set属性
- 属性生成器、set get 方法
- lwj_C#_homework get set 属性
- C++ 实现 get set
- 表达式读取 DataReader 表达式 Get Set 表达式赋值,取值
- inotify+rsync安装配置
- 最大流最小割(概念)
- app:transformClassesWithDexForDebug异常处理
- curl模拟post请求提交
- hibernate的一对一映射-外键映射-双向-mysql数据库
- php 实现get,set方式读取属性值
- Yougth's Game[Ⅲ]
- [华为编程题] 16进制转换为10进制
- 进程间的通信方式
- jquery-zclip插件
- 当file_get_contents或者simplexml_load_file的时候乱码
- description陷阱
- android studio 相关
- 欢迎使用CSDN-markdown编辑器