博客
关于我
php-class构造和访问器的使用方法
阅读量:308 次
发布时间:2019-03-03

本文共 1749 字,大约阅读时间需要 5 分钟。

PHP作为一门强大的编程语言,其类和对象的概念在开发中扮演着核心角色。本文将通过具体实例,详细解析PHP类和对象的基础知识以及实际应用场景。

类和对象的基本概念

在PHP中,class关键字用于定义类,objectinstance则用于创建类实例。类可以想象为一个容器,用于封装相关的属性和方法。每一个类实例都可以被视为一个独立的对象,具有自己的属性和行为。

类属性的定义与访问

类中的属性可以通过privatepublicprotected关键字来修饰。private属性只能在类的方法或同一类的其他方法中访问,避免了属性的不受控制访问。以下是一个简单的例子:

class Guests {    private $name;    private $gender;    function setname($name) {        $this->name = $name;    }    function getname() {        return $this->name;    }    function setgender($g) {        $this->gender = $g;    }    function getgender() {        return $this->gender;    }}$xiao = new Guests();$xiao->setname('xiao');$xiao->setgender('f');$zhang = new Guests();$zhang->setname('zhang');$zhang->setgender('m');

通过上述代码可以看出,每个Guests类实例都有自己的$name$gender属性,并通过setget方法进行赋值和获取操作。

类的构造与析构

类的构造方法(__construct)用于初始化新实例的属性。类的析构方法(__destruct)则在实例被销毁时执行 cleanup 工作。以下是一个实例:

class Peoples {    private $name;    private $sex;    function __construct($name, $sex) {        $this->name = $name;        $this->sex = $sex;    }    function getname() {        return $this->name;    }    function getsex() {        return $this->sex;    }    function __destruct() {        // 可以在这里进行销毁时的 cleanup 工作    }}$wang = new Peoples('wang', '男');$zhao = new Peoples('zhao', '女');

动态属性的访问与设置

在PHP中,类实例的属性可以动态添加,通过$object->property的方式进行访问和赋值。以下是一个示例:

class CP {    public $property;    function _set($proName, $proValue) {        $this->$proName = $proValue;    }    function _get($proName) {        return $this->$proName;    }}$a1 = new CP();$a1->name = '张大鹏';$a1->sex = '男';$b1 = new CP();$b1->name = '刘小萍';$b1->sex = '女';$b1->age = 21;

总结

通过以上代码示例可以看出,PHP类和对象的概念在开发中具有重要的应用价值。类作为代码的蓝图,能够清晰地定义代码的结构和行为;对象则是类在运行时的具体实例,能够通过属性和方法进行操作和管理。在实际开发中,合理运用类和对象的概念能够使代码更加模块化、可维护和扩展。

转载地址:http://mjem.baihongyu.com/

你可能感兴趣的文章
Netty速成:基础+入门+中级+高级+源码架构+行业应用
查看>>
Netty遇到TCP发送缓冲区满了 写半包操作该如何处理
查看>>
netty(1):NIO 基础之三大组件和ByteBuffer
查看>>
Netty:ChannelPipeline和ChannelHandler为什么会鬼混在一起?
查看>>
Netty:原理架构解析
查看>>
Network Dissection:Quantifying Interpretability of Deep Visual Representations(深层视觉表征的量化解释)
查看>>
Network Sniffer and Connection Analyzer
查看>>
Network 灰鸽宝典【目录】
查看>>
Networkx写入Shape文件
查看>>
NetworkX系列教程(11)-graph和其他数据格式转换
查看>>
Networkx读取军械调查-ITN综合传输网络?/读取GML文件
查看>>
NetworkX:是否为每个节点添加超链接?
查看>>
network小学习
查看>>
Netwox网络工具使用详解
查看>>
Net与Flex入门
查看>>
Net任意String格式转换为DateTime类型
查看>>
net包之IPConn
查看>>
net发布的dll方法和类显示注释信息(字段说明信息)[图解]
查看>>
Net处理html页面元素工具类(HtmlAgilityPack.dll)的使用
查看>>
Net操作Excel(终极方法NPOI)
查看>>