位置: 编程技术 - 正文

ThinkPHP中类的构造函数_construct()与_initialize()的区别详解(thinkphp框架结构)

编辑:rootadmin

推荐整理分享ThinkPHP中类的构造函数_construct()与_initialize()的区别详解(thinkphp框架结构),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:thinkphp curl类,thinkphp 构造函数,thinkphp d方法,thinkphp db类,thinkphp 构造函数,thinkphp 构造函数,thinkphp curl类,thinkphp db类,内容如对您有帮助,希望把文章链接给更多的朋友!

前言

相信熟悉THINKPHP的phper基本上都很熟悉_initialize()这个方法,我们似乎也很少去使用_construct() ,除非自己写插件,否则还真是很少用到。

今天查看代码突然看到_construct()这个php自带的构造方法,我的第一感觉是比较陌生,虽然之前学习java时经常遇到,但是很久不用基本忘记。我平时的习惯是将知识的重点写

在我那本小笔记上,但是很久不写字,曾经高中那个那种飘逸灵动的书写笔法彻底丢到异次元。再加上之前的想法,所以就来学习学习技术大牛们写写博客,这不是为了装逼,而只是让自己工作成果的点点滴滴都能不随时间流逝而消散。下面来看看详细的介绍吧。

先贴上代码(我的环境是wamp,使用了TP框架):

创建的FatherAction.class.php文件

创建的SonAction.class.php文件

运行子类SonAction里的index()可以看到输出的结果:

如果将子类改为:

运行结果为;

ThinkPHP中类的构造函数_construct()与_initialize()的区别详解(thinkphp框架结构)

上面的结果可以得出结论:

在执行子类的构造函数时并不会自动调用父类的构造函数,如果你要调用的话,那么要加上parent::__construct()

当我们把上述的构造方法改为THINKPHP_initialize()方法时运行会发现:结果与前面的一致,若要执行父类的_initialize()方法,也需要使用这一句:parent::_initialize()

那是不是说明php自带的构造函数__construct()与THINKPHP的_initialize()方法一样的呢?

先贴上两段代码:

当执行子类SonAction的index方法时发现,输出的结果为:father

即子类调用了父类的构造函数,而没有调用子类的_initialize()方法

再贴上两段代码:

执行子类SonAction的index方法,发现输入的结果为hellofather

由此可以得出结论:

  当THINKPHP的父类有构造函数而子类没有时,THINKPHP不会去执行子类的_initialize() ;

  当THINKPHP的父类子类均有构造函数时,要调用父类的构造函数必须使用parent::__construct() ----------------- _initialize()同理;

  当THINKPHP的子类同时存在__construct构造函数和_initialize()方法,只会执行子类的__construct构造函数(这个本人亲测,上述代码没有)。

总结

标签: thinkphp框架结构

本文链接地址:https://www.jiuchutong.com/biancheng/294727.html 转载请保留说明!

上一篇:php解析mht文件转换成html的实例(php 解析)

下一篇:PHP+MYSQL实现读写分离简单实战(php读取mysql)

  • 一般纳税人增值税税率
  • 居民企业投资收益免征企业所得税
  • 什一税是什么意思?
  • 金税四期上线后还需要会计吗
  • 公司买的微波炉计入什么科目
  • 残疾人加计扣除政策文件
  • 出口货物不能退税的原因
  • 注册资本需要实交吗
  • 一般纳税人变成小规模 在电子税务局哪里可以找到
  • 劳务派遣公司简介模板范文
  • 附加税费申报表出不来数据
  • 国外客户付款方式
  • 发放给员工的通讯费要上个税吗
  • 购置新建商品房,自房屋交付使用
  • 企业购买的商业保险赔偿多少
  • 3项经费计提比例2015
  • 什么时候计提资本成本
  • 村集体收入所得税率多少
  • 没有产权的房子可以公证吗
  • 用友t3怎样查询报表
  • 应付职工薪酬年底怎么结转
  • 为什么路由器经常断网
  • macos big sur更新后能改回来吗
  • gsicon.exe是什么进程 作用是什么 gsicon进程查询
  • macOS 11 Big Sur beta 4值得升级吗?macOS 11 Big Sur beta 4更新详解
  • win11怎么更改壁纸
  • 上市公司发行股票是好还是坏
  • 苹果macOSBigSur是什么型号
  • win7系统配置服务哪些启用
  • 公司整体收购缴税
  • composer环境变量
  • 金蝶怎么加人
  • 超级鸽卫星
  • vue更改数据
  • 大前端入门指南
  • iphone添加自定义提示音
  • 进项税额转出需要补税
  • 食堂增值服务有哪些
  • 公司申报是每月一次吗
  • 应付职工薪酬相关认定有哪些
  • 几种财务自由
  • 入库时的会计分录
  • 办公室租金会有公摊吗
  • 个税全员全额扣除怎么算
  • 小型公司怎么做账
  • 企业其他业务收入要交税吗
  • 超过两年记入错误的主营业务成本怎么调账?
  • 对公转账房租如何填写备注
  • 出租机械设备
  • 冲销以前年度多提税金
  • 中小企业的判定标准
  • 应付账款一直挂在账上会有问题吗
  • 不动产登记流程有哪些
  • 同一控制下的企业合并和非同一控制下的企业合并的区别
  • 发票优惠金额怎么开
  • 信用证保证金的计算公式
  • 辞退福利是入工资还是福利费
  • 交所得税的分录
  • 土地作为无形资产还是固定资产
  • 购车融资是什么意思
  • 金税盘技术维护费可以不交吗
  • 进料加工与来料加工
  • 员工预支工资现金流量
  • 汇算清缴要补交0.01怎么调成0
  • 注销股本对所有股票影响
  • sql server怎么分离
  • window10怎么启用net 3.5
  • 如何在mac上保存文件
  • win8系统怎么到桌面
  • linux滚动更新是什么
  • Win7笔记本突然wifi功能没了
  • win7电脑dpi怎么设置800
  • win10极限模式
  • ecmascript5
  • 在flash中制作课件一般会遵循什么流程
  • axios使用jsonp
  • unity3d documentation
  • Javascript字符串长度
  • 嵌入式安卓开发入门
  • 租赁发票交多少税费
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设