[资料]PHP中的__call使用
生活随笔
收集整理的這篇文章主要介紹了
[资料]PHP中的__call使用
小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
PHP中的__call使用
官方文檔:http://cn2.php.net/__call
public mixed __call ( string $name , array $arguments )
public static mixed __callStatic ( string $name , array $arguments )
當(dāng)調(diào)用一個(gè)不可訪問(wèn)方法(如未定義,或者不可見(jiàn))時(shí),__call() 會(huì)被調(diào)用。
當(dāng)在靜態(tài)方法中調(diào)用一個(gè)不可訪問(wèn)方法(如未定義,或者不可見(jiàn))時(shí),__callStatic() 會(huì)被調(diào)用。
$name 參數(shù)是要調(diào)用的方法名稱(chēng)。$arguments 參數(shù)是一個(gè)數(shù)組,包含著要傳遞給方法$name 的參數(shù)。
Demo 1
<?php class PersonWriter {function writeName( Person $p ) {print $p->getName()."\n";}function writeAge( Person $p ) {print $p->getAge()."\n";} }class Person {private $writer;function __construct( PersonWriter $writer ) {$this->writer = $writer;}function __call( $method, $args ) {if ( method_exists( $this->writer, $method ) ) {return $this->writer->$method( $this );}}function getName() { return "Bob"; }function getAge() { return 44; } }$person= new Person( new PersonWriter() ); $person->writeName(); $person->writeAge(); ?>?
?
轉(zhuǎn)載于:https://www.cnblogs.com/Athrun/archive/2012/12/04/php__call.html
總結(jié)
以上是生活随笔為你收集整理的[资料]PHP中的__call使用的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 个人Wordpress站点设置Windo
- 下一篇: sql语句总结一