博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
PHP之overload
阅读量:4956 次
发布时间:2019-06-12

本文共 1408 字,大约阅读时间需要 4 分钟。

1 
$_name= $_name;24 $this->$_gender=$_gender;25 }26 27 public function __set($p, $v){28 if(substr($p, 0,1) == "_"){ //判断重载一个 可能不存在 或者是私有的属性29 $p= '_'.$p;30 }31 if (true==property_exists($this, $p)) { //判断 当前类new出的对象 是否有这个形参属性 $p32 $method_name='set'.$p;33 34 $this->$method_name($v); //$method_name 是可变的方法 因此是用 $this->$method_name35 }else{36 trigger_error("您所访问的属性或者方法是私有的或者是不存在的");37 }38 }39 40 public function __get(){41 42 }43 44 public function __isset($pram){45 //当用户调用了 isset() 方法的时候 传递进来的形参 做一系列的自己的业务逻辑处理46 }47 48 public function __unset(){49 50 }51 } 52 53 class Factory{54 55 //声明静态直接由类调用该产生对象的方法56 public static function getInstance($class_name){57 static $instance_list = array();58 59 //首先判断这个类是否已经存在类数组列表中60 if (!isset($instance_list[$class_name])) {61 $instance_list[$class_name] = new $class_name ; //可变类 ,new出一个可变类 62 }63 64 return $instance_list[$class_name];65 } 66 }67 68 69 $test = Factory::getInstance('Test');70 // var_dump($test);71 $test->_name = 'xujin';

 

转载于:https://www.cnblogs.com/sharecorner/p/6129300.html

你可能感兴趣的文章
求一个字符串中最长回文子串的长度(承接上一个题目)
查看>>
简单权限管理系统原理浅析
查看>>
springIOC第一个课堂案例的实现
查看>>
求输入成绩的平均分
查看>>
ORACLE 数据库概述
查看>>
php PDO (转载)
查看>>
保险折扣统计
查看>>
贝叶斯
查看>>
wordpress自动截取文章摘要代码
查看>>
[置顶] 一名优秀的程序设计师是如何管理知识的?
查看>>
关于使用“状态模式”做工作流概要。
查看>>
谈谈:程序集加载和反射
查看>>
mysql主从复制(超简单)
查看>>
scanf和gets
查看>>
highcharts 图表实例
查看>>
定时器使用
查看>>
LeetCode Median of Two Sorted Arrays
查看>>
【知识强化】第二章 线性表 2.2 线性表的顺序表示
查看>>
19.30内置登录处理
查看>>
00_前情回顾
查看>>