~~~
class Ceshi{
public $array;
/*
* 对一个不存在的属性进行赋值时,触发此方法
* */
function __set($name, $value)
{
// TODO: Implement __set() method.
$this->array[$name] = $value;
}
/*
* 获取一个不存在的属性时,触发此方法
* */
function __get($name)
{
// TODO: Implement __get() method.
return $this->array[$name];
}
/*
*当调用一个不存在的非静态方法时,会触发此函数
* */
function __call($name, $arguments)
{
// TODO: Implement __call() method.
echo 'function"'.$name.'"不存在';
}
/*
*当调用一个不存在的静态方法时,会触发此函数
* */
static function __callStatic($name, $arguments)
{
// TODO: Implement __callStatic() method.
echo '静态function"'.$name.'"不存在';
}
/*
*当把对象当成字符串直接输出时,会触发此函数
* */
function __toString()
{
// TODO: Implement __toString() method.
var_dump($this);
return '不能直接输出一个对象';
}
/*
* 当把对象当成函数使用时,会触发此函数
* */
function __invoke($arguments)
{
// TODO: Implement __invoke() method.
echo '不能把对象当成函数使用';
}
}
~~~