1. __toString()
2. __invoke()
3. call(),callStatic() —方法重载(overwrite)
4. __get(),__set() —属性重载(overloading)
5. __clone()
<code><span><span>class</span><span>A</span> {</span><span>public</span><span>$name</span>; } <span>$aa</span> = <span>new</span> A(); <span>$aa</span>->name = <span>'wjh'</span> . <span>'<br>'</span>; <span>echo</span><span>$aa</span>->name; <span>$bb</span> = <span>clone</span><span>$aa</span>; <span>$bb</span>->name = <span>'wang lu xi'</span>; <span>//不改变赋值对象的属性</span><span>echo</span><span>$bb</span>->name . <span>'<br>'</span>; <span>echo</span><span>$aa</span>->name . <span>'<br>'</span>;</code>
<code><span><span><?php </span><span><span>class</span><span>A</span> {</span><span>public</span><span>$name</span>; <span>public</span><span><span>function</span><span>__clone</span><span>()</span> // 魔术方法,只要<span>clone</span>就运行这个方法 {</span><span>$this</span>->name = <span>' wei jian hua'</span>; } } <span>$aa</span> = <span>new</span> A(); <span>$aa</span>->name = <span>'wjh'</span> . <span>'<br>'</span>; <span>echo</span><span>$aa</span>->name; <span>$bb</span> = <span>clone</span><span>$aa</span>; <span>echo</span><span>$bb</span>->name;</span></span></code>
以上就介绍了47 PHP 魔术方法,包括了方面的内容,希望对PHP教程有兴趣的朋友有所帮助。