Blogger Information
Blog 48
fans 3
comment 1
visits 37452
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template
面向对象初体验——构造方法__construct()、魔术方法__get()和__set()——2018年5月2日
JackBlog
Original
758 people have browsed it

知识点:

1、__construct() :允许在实例化一个类之前先执行构造方法

2、__get():用来获取私有成员属性值的,有一个参数

3、__set():用来设置私有成员属性值的

QQ截图20180503225822.png


实例

<?php
/医院
 * Class member
 */

class member
{
//    属性初始化
    private $name = '';
    private $age = 0;

//定义一个构造方法初始化赋值
    public function __construct($name, $age)
    {
        $this->name = $name;
        $this->age = $age;

    }
//魔术方法
 public function __get($name)
 {
    return $this->$name;
 }
public function __set($name, $value)
{
   if($name=='age'){
        if(in_array($value,range(1,100))){
            $this->$name = $value;
        }
   }else{
       $this->$name = $value;
   }

}
}

运行实例 »

点击 "运行实例" 按钮查看在线实例

实例

<?php
require 'class/member.php';

$user = new member('Json',26);

$user->name = 'Mike';
$user->age = 20;
echo '名字:'.$user->name.',年龄:'.$user->age;

运行实例 »

点击 "运行实例" 按钮查看在线实例


Correction status:qualified

Teacher's comments:
Statement of this Website
The copyright of this blog article belongs to the blogger. Please specify the address when reprinting! If there is any infringement or violation of the law, please contact admin@php.cn Report processing!
All comments Speak rationally on civilized internet, please comply with News Comment Service Agreement
0 comments
Author's latest blog post