博客
关于我
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/

你可能感兴趣的文章
Mysql8.0注意url变更写法
查看>>
Mysql8.0的特性
查看>>
MySQL8修改密码报错ERROR 1819 (HY000): Your password does not satisfy the current policy requirements
查看>>
MySQL8修改密码的方法
查看>>
Mysql8在Centos上安装后忘记root密码如何重新设置
查看>>
Mysql8在Windows上离线安装时忘记root密码
查看>>
MySQL8找不到my.ini配置文件以及报sql_mode=only_full_group_by解决方案
查看>>
mysql8的安装与卸载
查看>>
MySQL8,体验不一样的安装方式!
查看>>
MySQL: Host '127.0.0.1' is not allowed to connect to this MySQL server
查看>>
Mysql: 对换(替换)两条记录的同一个字段值
查看>>
mysql:Can‘t connect to local MySQL server through socket ‘/var/run/mysqld/mysqld.sock‘解决方法
查看>>
MYSQL:基础——3N范式的表结构设计
查看>>
MYSQL:基础——触发器
查看>>
Mysql:连接报错“closing inbound before receiving peer‘s close_notify”
查看>>
mysqlbinlog报错unknown variable ‘default-character-set=utf8mb4‘
查看>>
mysqldump 参数--lock-tables浅析
查看>>
mysqldump 导出中文乱码
查看>>
mysqldump 导出数据库中每张表的前n条
查看>>
mysqldump: Got error: 1044: Access denied for user ‘xx’@’xx’ to database ‘xx’ when using LOCK TABLES
查看>>