zoukankan      html  css  js  c++  java
  • PHP3个魔术方法

    1、__toString()转换字符串

    执行时机:在对象被当成字符串使用时自动执行

    功能作用:兼容对象的字符串调用形式,根据用户需求显示出对象的字符串形态

    例:

    class Person{
       public $name;
       public $age;
       public function __construct($name,$age){
           $this->name = $name;
           $this->age = $age;
       }
    
       public function __toString(){
           return $this->name;
       }
    }
    
    
    $p1 = new Person('张三',20);
    echo $p1.'你好';
    

      

    2、__invoke()函数调用方法

    执行时机:在对象被当成函数使用时自动执行

    功能作用:兼容对象的函数调用形式,允许用户像使用函数一样使用对象

    例:

    class Person{
       public $name;
       public $age;
       public function __construct($name,$age){
           $this->name = $name;
           $this->age = $age;
       }
    
       public function __invoke(){
           echo "姓名:$this->name,年龄:$this->age";
       }
    }
    
    
    $p1 = new Person('张三',20);
    $p1();
    

      

    3、__clone()克隆方法

    执行时机:在克隆(clone)对象时自动执行

    功能作用:在克隆对象时可以同时执行一些其它操作,甚至可以阻止对象被克隆

    例:

    class Person{
       public $name;
       public $age;
       public function __construct($name,$age){
           $this->name = $name;
           $this->age = $age;
       }
    
       public function __clone(){
           echo "克隆克隆";
       }
    }
    
    
    $p1 = new Person('张三',20);
    $p2 = clone $p1;
    

      

  • 相关阅读:
    Windows网络编程经验小结
    异步Socket服务器与客户端
    用C#实现C/S模式下软件自动在线升级
    Linux 安装字体
    word 生成目录
    Linux sar使用
    yum 使用说明
    HASH JOIN算法
    row cache lock
    cursor: pin S
  • 原文地址:https://www.cnblogs.com/1500418882qqcom/p/10450192.html
Copyright © 2011-2022 走看看