__call 魔术方法
//文件名字__call (自己随便起名字)
/**
* 在对象中调用一个不可访问方法时,__call() 会被调用。
*
* 在静态上下文中调用一个不可访问方法时,__callStatic() 会被调用。
*
* $name 参数是要调用的方法名称。$arguments 参数是一个枚举数组,包含着要传递给方法 $name 的参数。
*
* @link http://php.net/manual/zh/language.oop5.overloading.php#object.call
*/
class MethodTest
{
public function __call($name, $arguments)
{
// TODO: Implement __call() method.
echo $name ."<br>";
print_r($arguments);
}
public static function __callStatic($name, $arguments)
{
// TODO: Implement __callStatic() method.
echo $name."<br>";
print_r($arguments);
}
}
echo "<pre>";
$obj = new MethodTest ;
$obj->我自己的方法(['in object context','hello world']);
MethodTest::runTest("in static context");