zoukankan      html  css  js  c++  java
  • PHP

    <?php
        class Person
        {
            private $name = null;
            private $sex  = null;
            private $age  = null;
            
            /**
             * 构造函数
             */
            public function __construct($name)
            {
                $this->name = $name;
            }
            
                  
            /**
             * 析构函数
             */
            public function __destruct()
            {
               echo '使用析构方法,销毁了对象!';
            }
            
            /**
             * 在对象中使用不存在的函数时候调用,
             * @param unknown $paramname   使用的函数名称
             * @param unknown $paramarg    使用函数中的参数,数组形式
             */
            public function __call($paramname,$paramarg)
            {
                if ($paramname == 'abc') {
                    echo '参数名是abc'.'参数是:'.$paramarg;
                } else {
                    echo '参数名不是abc,是'.$paramname.'参数是:'.$paramarg[0];
                }
            }
            
            /**
             * 当对不可访问属性或不存在的属性进行赋值时
             * @param unknown $paramname    属性名称
             * @param unknown $paramarg     属性值
             */
            public function __set($paramname,$paramarg)
            {
                echo '不可访问的参数是:'.$paramname.',值是:'.$paramarg.'<br/>';
            }
            
            /**
             * 当对不可访问属性或不存在的属性取值时候调用
             * @param unknown $paramname  要取值得属性名称
             */
            public function __get($paramname)
            {
                if ($paramname == 'name') {
                    echo '你访问的是name属性,我要加上123'.$this->name.'123';
                }
            }
            
            
            /**
             * 魔术方法,直接输出对象时调用,使用return返回值。
             */
            public function __toString()
            {
                return '您直接输出了对象,如果没有__tostring()方法,会报错!';
            }
            
            
            
            /**
             * 当对不可访问属性或不存在的属性调用 isset() 或 empty() 时,__isset() 会被调用。 
             */
            public function __isset($paramname)
            {
                echo '属性是:'.$paramname.'您对不可访问或不存在的属性使用了isset()或empty()方法!';
            }
        }
    ?>
    
  • 相关阅读:
    Java中Date和Calender类的使用方法
    看《做性能测试需要做些什么》
    【笔记】jquery append,appendTo,prepend,prependTo 介绍
    【实践】jquery实现滑动动画及轮播
    【实践】四联联动 + 更加优化
    【实践】jQuery实现三联联动
    关于导入excel报错的处理(xls,xlsx)
    递归算法及经典案例
    验证身份证真假
    正则表达式
  • 原文地址:https://www.cnblogs.com/KTblog/p/5076572.html
Copyright © 2011-2022 走看看