thinkPHP中_initialize方法实例分析

举报
lxw1844912514 发表于 2022/03/27 04:37:37 2022/03/27
【摘要】   子类的_initialize方法自动调用父类的_initialize方法。 而php的构造函数construct,如果要调用父类的方法,必须在子类构造函数显示调用parent::__construct(); parent::_initialize() 是调用父类的_initialize方法,如果你的父类_...

 

子类的_initialize方法自动调用父类的_initialize方法。

而php的构造函数construct,如果要调用父类的方法,必须在子类构造函数显示调用parent::__construct();

parent::_initialize() 是调用父类的_initialize方法,如果你的父类_initialize函数没有任何内容,不需要写parent::_initialize()

<?php
class BaseAction extends Action { // 继承Thinkphp
   protected function _initialize() { // thinkphp中的函数
     echo "Base class" ;
   }
}

子类如果没有_initialize方法,则默认调用父类的_initialize方法。

输出:Base class

如果有,则执行自己的_initialize方法。

输出:hello I am child

如果同时执行,则要这样写

?
1
2
3
4
5
6
7
<?php
class IndexAction extends BaseAction {
   public function _initialize(){ // 如果子类存在initialize,则不执行父类的内容
     parent::_initialize(); // 加上这一句,才执行父类的初始化函数
     echo "hello I am child" ;
   }
}

输出:Base class hello I am child

文章来源: blog.csdn.net,作者:lxw1844912514,版权归原作者所有,如需转载,请联系作者。

原文链接:blog.csdn.net/lxw1844912514/article/details/100029204

【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。