php构造方法的作用
php构造方法的作用
php构造方法的作用就是用来在创建对象时初始化对象, 即为对象成员变量赋初始值,总与new运算符一起使用在创建对象的语句中。特别的一个类可以有多个构造函数 ,可根据其参数个数的不同或参数类型的不同来区分它们 即构造函数的重载。
相关推荐:【PHP教程】
构造函数
__construct ([ mixed $args [, $... ]] ) : void
PHP 5 允行开发者在一个类中定义一个方法作为构造函数。具有构造函数的类会在每次创建新对象时先调用此方法,所以非常适合在使用对象之前做一些初始化工作。
注:
如果子类中定义了构造函数则不会隐式调用其父类的构造函数。要执行父类的构造函数,需要在子类的构造函数中调用 parent::__construct()。如果子类没有定义构造函数则会如同一个普通的类方法一样从父类继承(假如没有被定义为 private 的话)。
示例1 使用新标准的构造函数
<?php class BaseClass { function __construct() { print "In BaseClass constructor\n"; } } class SubClass extends BaseClass { function __construct() { parent::__construct(); print "In SubClass constructor\n"; } } class OtherSubClass extends BaseClass { // inherits BaseClass's constructor } // In BaseClass constructor $obj = new BaseClass(); // In BaseClass constructor // In SubClass constructor $obj = new SubClass(); // In BaseClass constructor $obj = new OtherSubClass(); ?>
为了实现向后兼容性,如果 PHP 5 在类中找不到 __construct() 函数并且也没有从父类继承一个的话,它就会尝试寻找旧式的构造函数,也就是和类同名的函数。因此唯一会产生兼容性问题的情况是:类中已有一个名为 __construct() 的方法却被用于其它用途时。
与其它方法不同,当 __construct() 被与父类 __construct() 具有不同参数的方法覆盖时,PHP 不会产生一个 E_STRICT 错误信息。
自 PHP 5.3.3 起,在命名空间中,与类名同名的方法不再作为构造函数。这一改变不影响不在命名空间中的类。
示例2
<?php namespace Foo; class Bar { public function Bar() { // treated as constructor in PHP 5.3.0-5.3.2 // treated as regular method as of PHP 5.3.3 } } ?>
以上就是php构造方法的作用的详细内容,更多请关注其它相关文章!
上一篇: 如何让php用户提交表单不能为空?
下一篇: php如何取不重复的随机数
推荐阅读
-
PHP抓取网页、解析HTML常用的方法总结_php实例
-
php将图片保存入mysql数据库失败的解决方法_PHP
-
php删除文本文件中重复行的方法,_PHP教程
-
ThinkPHP自动填充实现无限级分类的方法,thinkphp填充_PHP教程
-
php ci框架中加载css和js文件失败的解决方法_PHP
-
thinkPHP中多维数组的遍历方法_PHP
-
php自动加载类__autoload()的方法
-
php通过array_merge()函数合并关联和非关联数组的方法,array_merge数组
-
关于url地址传参数时字符串有回车造成页面脚本赋值失败的解决方法_PHP教程
-
PHP对文件夹递归执行chmod命令的方法_PHP