博主信息
博文 46
粉丝 1
评论 1
访问量 37540
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
创建一个类--查询器:__get();设置器:__set()--2018年5月2日
笨鸟先飞
原创
574人浏览过

类:

实例

<?php
/**
 * 类的构造方法与查寻器与设置器
 */

class Desk3
{
    //类成员:属性,方法

    //类属性,初始化必须使用标量的字面量,数组也行。不能用变量,表达式,对象
    //值可给可不给,习惯性动作
    private $shape = '';//私有的,仅允许在当前类中被访问,外部不能访问

    private $color = '';

    private $size  = [];

    //声明一个构造方法:在实例化类的时候自动调用
    //构造方法也是构造器:对象属性的初始化

    public function __construct($shape='',$color='',array $size=[])
    {
        $this->shape = $shape;
        $this->color = $color;
        $this->size = $size;
    }

    //查询器__get($name)
    //双下划线开始的是:魔术方法,由系统直接调用
    //当访问一个没有权限的读取属性的时候,会自动触发这个魔术方法
   public function __get($name)
   {
       return $this->$name;

   }

   //设置器:__set($name,$value)
    public function __set($name, $value)
    {
        if($name =='color'){
            if(in_array($value,range(20,90))){
                $this->$name = $value;
            }

        }else{
            $this->$name = $value;
        }
    }
}

运行实例 »

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


demo:”

实例

<?php
/**
 *
 */
header('Content-type:text/html;charset=Utf-8');
require 'class/Desk3.php';

$desk3 = new Desk3('圆型','红色',[30,49,60]);

//$desk3->shape='矩形';
echo $desk3->shape.'<br>';

echo '<hr>';

$desk3->color=80;
echo $desk3->color;

//新增属性也是可以的额
//$desk3->haha = 20;
//echo $desk3->haha;

运行实例 »

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


批改状态:合格

老师批语:
本博文版权归博主所有,转载请注明地址!如有侵权、违法,请联系admin@php.cn举报处理!
全部评论 文明上网理性发言,请遵守新闻评论服务协议
0条评论
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习
PHP中文网抖音号
发现有趣的

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号

  • 登录PHP中文网,和优秀的人一起学习!
    全站2000+教程免费学