Blogger Information
Blog 65
fans 1
comment 1
visits 118890
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template
php 魔术方法
技术宅的博客
Original
686 people have browsed it
class Test {

	public $name;
	private $class;
	private $age;

	public function __construct($name) {
		$this->name = $name;
	}
	public function __unset($name) {
		echo '该类没有该' . $name . '属性<br>';
	}
	// 当对一个对象不存在的属性进行判断是否有值时,就会自动调用__isset()方法
	public function __isset($name) {
		echo '该类没有该' . $name . '属性,不能判断是否有值<br>';
	}
	// 当类的实例调用其自身私有属性时  自动触发该方法 并返回值
	// 获取类私有属性
	public function __get($name) {
		return $this->$name;
	}
	// 当类的实例 设置其自身私有属性时  自动触发该方法 并返回值
	// 设置类私有属性
	public function __set($name, $vlaue) {
		return $this->$name = $vlaue;
	}
	// 此方法必须返回一个字符串
	// 可以用于把类作为字符串输出 只能用echo print来
	public function __toString() {
		return 'Test1';
	}

	// _call 当要调用的方法不存在或权限不足时,会自动调用__call 方法。
	public function __call($name, $arguments) {
		echo '调用不存在的方法名是:' . $name . '<br>参数是:';
		print_r($arguments);
		echo '<br>';
	}

	// __callStatic 当调用的静态方法不存在或权限不足时,会自动调用__callStatic方法。
	public static function __callStatic($name, $arguments) {
		echo '调用不存在的--静态--方法名是:' . $name . '<br>参数是:';
		print_r($arguments);
	}
	// 当尝试以调用函数的方式调用一个对象时,__invoke() 方法会被自动调用。  $test1(5); echo 5
	public function __invoke($x) {
		echo ($x);
	}
}


Statement of this Website
The copyright of this blog article belongs to the blogger. Please specify the address when reprinting! If there is any infringement or violation of the law, please contact admin@php.cn Report processing!
All comments Speak rationally on civilized internet, please comply with News Comment Service Agreement
0 comments
Author's latest blog post