Rumah  >  Artikel  >  pembangunan bahagian belakang  >  php _call and _callStatic

php _call and _callStatic

WBOY
WBOYasal
2016-06-13 13:11:02836semak imbas

php __call and __callStatic

PHP5?的对象新增了一个专用方法?__call(),这个方法用来监视一个对象中的其它方法。如果你试着调用一个对象中不存在的方法,__call?方法将会被自动调用。

?

__call()?is triggered when invoking inaccessible methods in an object context.

__callStatic()?is triggered when invoking inaccessible methods in a static context.

?

class?MethodTest?{
????public?function?
__call($name,?$arguments)?{
????????
//?Note:?value?of?$name?is?case?sensitive.
????????
echo?"Calling?object?method?'$name'?"
?????????????
.?implode(',?',?$arguments).?"\n";
????}

????
/**??As?of?PHP?5.3.0??*/
????
public?static?function?__callStatic($name,?$arguments)?{
????????
//?Note:?value?of?$name?is?case?sensitive.
????????
echo?"Calling?static?method?'$name'?"
?????????????
.?implode(',?',?$arguments).?"\n";
????}
}

$obj?=?new?MethodTest;
$obj->runTest('in?object?context');

MethodTest::runTest('in?static?context');??//?As?of?PHP?5.3.0
?>

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn