PHP学习笔记——魔术方法

编程入门 行业动态 更新时间:2024-10-25 22:31:36

PHP学习笔记——<a href=https://www.elefans.com/category/jswz/34/1760871.html style=魔术方法"/>

PHP学习笔记——魔术方法

在PHP中的魔术方法主要有__toString,__invoke,__call,__callStatic,__get,__set,__isset,__unset,__clone这几种,下面我们分别对他们讲解一下:

1、toString :它是我们在把一个对象当作一个对象输出时调用的,我们可以在该方法中进行相应的操作,并且该方法必须返回一个字符串。

 public function __toString(){echo 'toString is being call';return "";}

2、invoke:它是我们在把一个对象当作方法调用时自动调用的,我们需要在调用的方法中传入一个参数。

<?phpclass MagicTest {public function __invoke($paramtar){echo 'invole is called';}}$test1 = new MagicTest();         echo $test1(1);

3、call:它是在对象中调用不存在的方法时自动调用的,并且这个方法需要传递两个参数$name,$agurament,$name代表的方法名称,$agurrament代表参数集合。

<?phpclass MagicTest {public function __call($name,$parametas){echo 'call method is called';}public static function __callStatic($name,$parametas){echo 'static call method is called';}}$test1 = new MagicTest();         $test1->runTest(1,2);

4、callStatic:它是在对象中调用不存在的静态方法时自动调用的,并且这个方法需要传递两个参数$name,$agurament,$name代表的方法名称,$agurrament代表参数集合。

  class MagicTest {public function __call($name,$parametas){echo 'call method is called';}public static function __callStatic($name,$parametas){echo 'static call method is called';}}$test1 = new MagicTest();         MagicTest::runTest(1,2);

5、set:当我们对对象中某个不存在的属性赋值时系统自动调用该方法,该方法需要两个参数,$key和$value。

public function __set($key,$value){echo 'set method is called and key is '.$key.' value is '.$value;}
$test1->default = 1;
6、get:当我们取出某个不存在的属性的值时系统自动调用该方法,需要一个参数$key

public function __get($key){echo 'get method is called and key is '.$key;}
$test1->default;
7、isset:当我们对对象中的某个不存在的属性调用isset方法或者empty方法时,系统自动调用该方法,需要一个参数。

public function __isset($obj){echo 'isset method is called';
}
isset($default);
8、unset:与isset同理

9、clone:这个方法是在我们对某个对象进行clone修饰时调用。

public function __clone(){echo 'clone method is called';
}
$test2 = clone $test1;


更多推荐

PHP学习笔记——魔术方法

本文发布于:2024-03-15 06:57:26,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1738336.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:魔术   学习笔记   方法   PHP

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!