四虎精品视频-四虎精品成人免费网站-四虎黄色网-四虎国产视频-国产免费91-国产蜜臀97一区二区三区

PHP 反射機制實現動態代理的代碼

演示用代碼如下所示: 
復制代碼 代碼如下:
<?php
class ClassOne {
function callClassOne() {
print "In Class One";
}
}
class ClassOneDelegator {
private $targets;
function __construct() {
$this->target[] = new ClassOne();
}
function __call($name, $args) {
foreach ($this->target as $obj) {
$r = new ReflectionClass($obj);
if ($method = $r->getMethod($name)) {
if ($method->isPublic() && !$method->isAbstract()) {
return $method->invoke($obj, $args);
}
}
}
}
}
$obj = new ClassOneDelegator();
$obj->callClassOne();
?>

輸出結果:
In Class One
可見,通過代理類ClassOneDelegator來代替ClassOne類來實現他的方法。
同樣的,如下的代碼也是能夠運行的:
復制代碼 代碼如下:
<?php
class ClassOne {
function callClassOne() {
print "In Class One";
}
}
class ClassOneDelegator {
private $targets;
function addObject($obj) {
$this->target[] = $obj;
}
function __call($name, $args) {
foreach ($this->target as $obj) {
$r = new ReflectionClass($obj);
if ($method = $r->getMethod($name)) {
if ($method->isPublic() && !$method->isAbstract()) {
return $method->invoke($obj, $args);
}
}
}
}
}
$obj = new ClassOneDelegator();
$obj->addObject(new ClassOne());
$obj->callClassOne();
?>

php技術PHP 反射機制實現動態代理的代碼,轉載需保留來源!

鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯系我們修改或刪除,多謝。

主站蜘蛛池模板: 梁祝吉他谱独奏完整| 67pp| 姐夫操小姨子| 明日战记| 椿十三郎| 乔治克鲁尼个人资料| 康熙微服私访记第三部| 日本电影致命诱惑| 古今大战秦俑情 电影| footjob videos| 知否知否应是绿肥红瘦观看| 公共事务在线| 神犬小七2| 大内密探灵灵狗| 仲裁申请书模板及范文| 美国电影player| 极寒之城剧情详细介绍| 山下大辉| 补充电解质喝什么饮料| 少妇的诱惑电影| 冲出堕落城完整高清版| 双妻艳| 免费头像图片| 尹邵熙饰演的全部电影| 战狼15电影在线观看| 速度与激情 电影| 李柯以写真照片| 爱情岛论坛.| 二年级上学期口算题| 视频爱爱| 黄色影视影片| 神迹电影| 男女电视剧| 冒险王2| 电影因果报应完整版观看| 小班健康活动教案40篇| 日韩电影免费观| 小松未可子| 我们的日子电视剧演员表| 成毅壁纸| 张天爱出生于哪年?|