一区二区久久-一区二区三区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ò)代理類(lèi)ClassOneDelegator來(lái)代替ClassOne類(lèi)來(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)系我們修改或刪除,多謝。

主站蜘蛛池模板: 小视频免费在线观看 | 午夜欧美福利视频 | 色婷婷六月丁香在线观看 | 久久精品麻豆 | 一区二区三区免费视频网站 | 欧美另类杂交a | 91免费看国产 | 国产一区二区精品久久 | 欧美经典成人在观看线视频 | 国产自在线 | 91精品国产高清91久久久久久 | 性夜影院爽黄e爽痛轻点www | 五月婷婷综合激情 | 亚洲一区视频在线播放 | 大伊人网 | 成人网欧美亚洲影视图片 | 免费观看四虎精品国产永久 | 日韩理论在线 | 成人一区专区在线观看 | 色哟哟高清视频在线观看 | 欧美视频在线观看免费播放 | 欧美日韩一区二区三区久久 | 五月天婷婷综合 | 色噜噜视频 | 激情五月开心网 | 在线观看成人免费 | 日韩一区二区三区视频在线观看 | 精品一区二区三区的国产在线观看 | chinese麻豆自制国产 | 国产无套在线播放 | 麻豆一区二区三区四区 | 国产网站免费 | h片视频在线观看 | 国产在线精品一区二区不卡 | 椎名空中文字幕一区二区 | 亚洲国产成人精品小蝌蚪 | 免费看黄网站在线 | 真实国产乱子伦久久 | 国产亚洲综合成人91精品 | 综合久久久久久中文字幕 | 免看一级a毛片一片成人不卡 |