关键词搜索

源码搜索 ×
×

PHP笔记-PHP中构造函数要注意的地方

发布2022-01-10浏览1122次

详情内容

背景

这里记录下PHP中构造函数的注意点。

这里和C/C++、Java不一样,比较灵活,估计是有隐式调用,在此不研究了,记录下注意的地方。

演示

如下项目:

Base.php

  1. <?php
  2. class Base{
  3. public function __construct(){
  4. echo "__construct() : " . __CLASS__ . "<br/>";
  5. }
  6. }

Child.php

  1. <?php
  2. class Child extends Base{
  3. public function __construct(){
  4. echo "__construct() : " . __CLASS__ . "<br/>";
  5. }
  6. }

call.php

  1. <?php
  2. include "Base.php";
  3. include "Child.php";
  4. $base = new Child();

上面代码的运行截图:

从中可见只有子类的构造函数被调用了。修改Base.php如下:

  1. <?php
  2. class Child extends Base{
  3. }

 运行截图如下:

变成了调用父类。

改成这样后:

  1. <?php
  2. class Child extends Base{
  3. public function __construct(){
  4. echo "__construct() : " . __CLASS__ . "<br/>";
  5. parent::__construct();
  6. }
  7. }

 运行截图:

变成了先子类构造函数,再父类构造函数。

改成这样后:

  1. <?php
  2. class Child extends Base{
  3. public function __construct(){
  4. parent::__construct();
  5. echo "__construct() : " . __CLASS__ . "<br/>";
  6. }
  7. }

 运行截图:

先父类构造函数,再子类构造函数

结束

PHP中的构造函数比较灵活,和C/C++、Java语言先比,感觉是构造函数+子类函数重写的功能合二唯一。

这里要注意,避免以后在开发PHP时遇到问题。

 

相关技术文章

点击QQ咨询
开通会员
返回顶部
×
微信扫码支付
微信扫码支付
确定支付下载
请使用微信描二维码支付
×

提示信息

×

选择支付方式

  • 微信支付
  • 支付宝付款
确定支付下载