zoukankan      html  css  js  c++  java
  • php 中_set()_get()实例解析

    <?php
    class Person {
        // 下面是人的成员属性, 都是封装的私有成员
        private $name; // 人的名子
        private $sex; // 人的性别
        private $age; // 人的年龄
        
        //__get()方法用来获取私有属性
        public function __get($property_name) {
            echo "在直接获取私有属性值的时候,自动调用了这个__get()方法<br>";
            if (isset ( $this->$property_name )) {
                return ($this->$property_name);
            } else {
                return (NULL);
            }
        }
        
        //__set()方法用来设置私有属性
        public function __set($property_name, $value) {
            echo "在直接设置私有属性值的时候,自动调用了这个__set()方法为私有属性赋值<br>";
            $this->$property_name=$value;
        }
    }
    
    header("Content-type:text/html;charset=utf-8");
    $p1 = new Person ();
    //直接为私有属性赋值的操作,会自动调用__set()方法进行赋值
    $p1->name = "张三";
    $p1->sex = "男";
    $p1->age = 20;
    
    //直接获取私有属性的值, 会自动调用__get()方法,返回成员属性的值
    echo "姓名:" . $p1->name . "<br>";
    echo "性别:" . $p1->sex . "<br>";
    echo "年龄:" . $p1->age . "<br>";
    ?>
  • 相关阅读:
    Java 线程池原理分析
    基于 Java NIO 实现简单的 HTTP 服务器
    Java NIO之选择器
    Java NIO之套接字通道
    Django【基础篇-1】
    paramiko_sftp封装
    python random模块生成随机验证码
    Python3 os与sys模块用法
    python生成器并行实例
    python装饰器无参及有参案例
  • 原文地址:https://www.cnblogs.com/timelesszhuang/p/3821882.html
Copyright © 2011-2022 走看看