[FAQ]PHP中的一些常识:类篇
2023-06-13 09:13:43 时间
我把一些PHP中类的常识性整理出来,让新手们更容易掌握PHP类,以便能快速看懂那些老大们写的程序,呵呵,不过比较少,希望老大们补充一下或者修正其中错误理解。
Q:PHP中的类可以有构造函数么?
A:可以,只要函数名和类名相同,这个函数将成为构造函数。在使用new操作符来创建一个类的实例时,该构造函数将会自动调用,因此,可以把一些初始化工作放在构造函数里完成。
Q:PHP中的类有析构函数么?
A:没有。当对象被销毁,使用unset()或者简单的脱离范围,析构函数都会自动调用。但PHP中没有析构函数。如:
unset($foo);
就销毁一个类对象$foo了。
Q:要如何继承一个类?
A:使用关键字extends来继承一个类,如:
classBextentsA{
}
Q:在类的定义中如何引用自身?
A:使用$this来引用当前类自身,如:
$this->name="Tom";
Q:在子类中如何使用父类?
A:使用::操作符,且有两种方式,一种是直接用父类名,如:
A::example();
一种是用parent关键字,如:
parent::example();
建议采用parent::来引用父类。
Q:我不想创建类的实例,能直接使用类中的函数或变量吗?
A:可以,采用::操作符,如:
B::example();
就可以执行B类中的函数example(),而并没有创建任何B类的对象,仅仅是作为一个类函数来调用,这对于功能模块归纳组织很有好处。
Q:PHP有多重继承么?//addedbyerquan
A:没有。子类不能同时从两个父类继承,即一个孩子不能同时有两个爸爸:)。子类必须依赖于一个且必须已存在的基类。
Q:PHP中的类可以有构造函数么?
A:可以,只要函数名和类名相同,这个函数将成为构造函数。在使用new操作符来创建一个类的实例时,该构造函数将会自动调用,因此,可以把一些初始化工作放在构造函数里完成。
Q:PHP中的类有析构函数么?
A:没有。当对象被销毁,使用unset()或者简单的脱离范围,析构函数都会自动调用。但PHP中没有析构函数。如:
unset($foo);
就销毁一个类对象$foo了。
Q:要如何继承一个类?
A:使用关键字extends来继承一个类,如:
classBextentsA{
}
Q:在类的定义中如何引用自身?
A:使用$this来引用当前类自身,如:
$this->name="Tom";
Q:在子类中如何使用父类?
A:使用::操作符,且有两种方式,一种是直接用父类名,如:
A::example();
一种是用parent关键字,如:
parent::example();
建议采用parent::来引用父类。
Q:我不想创建类的实例,能直接使用类中的函数或变量吗?
A:可以,采用::操作符,如:
B::example();
就可以执行B类中的函数example(),而并没有创建任何B类的对象,仅仅是作为一个类函数来调用,这对于功能模块归纳组织很有好处。
Q:PHP有多重继承么?//addedbyerquan
A:没有。子类不能同时从两个父类继承,即一个孩子不能同时有两个爸爸:)。子类必须依赖于一个且必须已存在的基类。
相关文章
- php连接ldap服务器,使用PHP连接LDAP服务器[通俗易懂]
- typecho去掉index.php
- PHP if else语句
- MySQL 锁表与 PHP 数据交互实现(mysql锁表php)
- 服务?探索Linux如何启动PHP服务(linux是否启动php)
- 借助 PHP 与 MySQL 轻松实现文件下载(php和mysql下载)
- 使用Linux运行PHP脚本:完美实现(linux执行php脚本)
- 实现Linux版PHP动态编译——一案子的艰辛实践(php编译linux)
- PHP轻松修改MySQL数据,实现数据高效处理(php修改mysql数据)
- 深入理解MySQL转义在PHP中的应用技巧(mysql转义php)
- Linux上PHP重装教程(linux重装php)
- PHP与Redis配合,实现秒杀抢购(redisphp秒杀)
- mysql线程技术驱动PHP程序优化(mysql线程php)
- PHP脚本管理MSSQL数据库:优化时间精度(php mssql 时间)
- php中的时间显示
- apache环境下php的配置注意事项
- PHP在获取指定目录下的目录,在获取的目录下面再创建文件,多平台
- 第二章PHP入门基础之php代码写法
- php一个找二层目录的小东东
- PHP的异常处理、错误的抛出及回调函数等面向对象的错误处理方法
- PHP图片处理之图片背景、画布操作
- php绘制一条弧线的方法