[资料]PHP中的__call使用
生活随笔
收集整理的這篇文章主要介紹了
[资料]PHP中的__call使用
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
PHP中的__call使用
官方文檔:http://cn2.php.net/__call
public mixed __call ( string $name , array $arguments )
public static mixed __callStatic ( string $name , array $arguments )
當調用一個不可訪問方法(如未定義,或者不可見)時,__call() 會被調用。
當在靜態方法中調用一個不可訪問方法(如未定義,或者不可見)時,__callStatic() 會被調用。
$name 參數是要調用的方法名稱。$arguments 參數是一個數組,包含著要傳遞給方法$name 的參數。
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(); ?>?
?
轉載于:https://www.cnblogs.com/Athrun/archive/2012/12/04/php__call.html
總結
以上是生活随笔為你收集整理的[资料]PHP中的__call使用的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 个人Wordpress站点设置Windo
- 下一篇: 动态规划算法php,php算法学习之动态