• 不确


    __isset();  未定义   的   属性调用 isset 时,调用。

    __unset(); 未定义   的   属性调用unset 时,调用。

    __get();   调用一个类内 未定义 属性时,调用。

    __set();      给一个类内 未定义  属性赋值时,调用。

    class C{

    function __set($p, $p1){
    var_dump(__METHOD__);
    }

    function __get($p){
    var_dump(__METHOD__);
    }

    function __isset($p){
    var_dump(__METHOD__);
    }

    function __unset($p){
    var_dump(__METHOD__);
    }
    }


    $c = new C;
    var_dump(isset($c->a));
    unset($c->a);
    var_dump($c->a);
    $c->a = 1;

    =======================>

    string(10) "C::__isset"
    bool(false)
    string(10) "C::__unset"
    string(8) "C::__get"
    NULL
    string(8) "C::__set"

    __invoke();   __debugInfo

    class CallableClass
    {
      function __invoke($x) {
        $x();
      }

      function __debugInfo(){

        return ['property' => 1];

          }
    }


    $obj = new CallableClass;
    $obj(function(){var_dump(1);});//int(1)
    var_dump(is_callable($obj));//bool(true)

    var_dump($obj);//带着参数的对象。

    __set_state();     当调用 var_export() 导出类时,此静态 方法会被调用。

    <?php

    class A
    {
        public $var1;
        public $var2;

        public static function __set_state($an_array) // As of PHP 5.1.0
        {
            $obj = new A;
            $obj->var1 = $an_array['var1'];
            $obj->var2 = $an_array['var2'];
            return $obj;
        }
    }

    $a = new A;
    $a->var1 = 5;
    $a->var2 = 'foo';

    eval('$b = ' . var_export($a, true) . ';'); // $b = A::__set_state(array(
                                                //    'var1' => 5,
                                                //    'var2' => 'foo',
                                                // ));
    var_dump($b);

    ?>

  • 相关阅读:
    SVN迁移到GIT
    Android之高效率截图
    Android TV 开发(5)
    Android 标题栏(2)
    Android 标题栏(1)
    C# 之抽象类和抽象方法
    浏览器渲染原理及流程
    C#中的DateTime
    由于 Web 服务器上的“ISAPI 和 CGI 限制”列表设置,无法提供您请求的页面。
    配置错误:不能在此路径中使用此配置节。如果在父级别上锁定了该节,便会出现这种情况。锁定是默认设置的
  • 原文地址:https://www.cnblogs.com/zhco/p/9568061.html
Copyright © 2020-2023  润新知