一区二区久久-一区二区三区www-一区二区三区久久-一区二区三区久久精品-麻豆国产一区二区在线观看-麻豆国产视频

PHP 反射機(jī)制實(shí)現(xiàn)動(dòng)態(tài)代理的代碼

演示用代碼如下所示: 
復(fù)制代碼 代碼如下:
<?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();
?>

輸出結(jié)果:
In Class One
可見(jiàn),通過(guò)代理類ClassOneDelegator來(lái)代替ClassOne類來(lái)實(shí)現(xiàn)他的方法。
同樣的,如下的代碼也是能夠運(yùn)行的:
復(fù)制代碼 代碼如下:
<?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技術(shù)PHP 反射機(jī)制實(shí)現(xiàn)動(dòng)態(tài)代理的代碼,轉(zhuǎn)載需保留來(lái)源!

鄭重聲明:本文版權(quán)歸原作者所有,轉(zhuǎn)載文章僅為傳播更多信息之目的,如作者信息標(biāo)記有誤,請(qǐng)第一時(shí)間聯(lián)系我們修改或刪除,多謝。

主站蜘蛛池模板: 日本狠狠操 | 国内外成人在线视频 | 中文字幕亚洲自拍 | 丁香花五月婷婷开心 | 国产精品久久久久无码av | 亚洲 欧美 国产另类首页 | 福利在线国产 | 中国美女一级毛片 | 性夜黄a爽爽免费视频国产 性夜影院爽黄e爽痛轻点www | 亚洲综合精品香蕉久久网 | 91精品久久久久久久久久 | 另类图片小说 | 天天干天天色天天干 | 亚洲天堂99| 六月天色 | 天天舔天天色 | 国产精品美女在线 | 91视频免费看 | 亚欧成人乱码一区二区 | 国产欧美国产精品第二区 | 亚洲天堂黄色 | 美女张开腿让男人桶爽免费看 | 国产亚洲婷婷香蕉久久精品 | 久久狠狠一本精品综合网 | 日韩综合nv一区二区在线观看 | 国产91免费在线观看 | 深爱五月激情 | 日韩欧美区 | 日本成人免费网站 | 奇米色吧 | 五月天婷婷激情 | 米奇精品一区二区三区 | 中文字幕日本不卡一二三区 | 中文字幕一区二区三区四区 | 免费看国产一级片 | 91小视频在线观看 | 国产在线一区视频 | 亚洲一区免费观看 | 色婷婷综合和线在线 | 日日嗷| 国产日韩欧美不卡www |