位置: 编程技术 - 正文

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)

  • 出售写字楼需要什么手续
  • 一般税收协定是多少
  • 消费型增值税的含义
  • 怎么确认债权
  • 从价定率的计算公式
  • 领用包装物的会计分录
  • 融资租赁租入设备
  • 咨询服务合同印花税税目
  • 代扣个人社保的账务处理
  • 个人投资企业投资人签字
  • 应纳出口关税怎么算
  • 员工福利费是不是加班费
  • 公司没有收入算正常经营吗
  • 用于文化活动费用的科目
  • 电费发票勾选是啥意思
  • 小规模收到货运专用发票
  • 固定资产销售税务处理
  • 工程开票是否需要资质?
  • 开具发票有哪些特殊规定?
  • 总资产减少率怎么算
  • 财务报表的总投资怎么算
  • 代收代缴消费税要交城建税吗?
  • 现在就是去年
  • 调整bios配置设置
  • win11进入黑屏
  • 产品入库是什么
  • 用后期进项抵欠怎么做账
  • 鸿蒙系统蓝牙耳机声音小怎么办
  • 系统托盘无法隐藏文件夹
  • 发票开了对方未付款
  • 向股东借款支付利息划算还是做工资划算
  • 黑沙滩是什么意思
  • symfony是最好的框架
  • 小微企业城建税及附加减免优惠
  • php获取文本框输入的值
  • php-xml
  • 以固定资产增资流程是怎样操作
  • 销项负数发票需不需要增加库存
  • 用友重新安装步骤
  • 自然人专项扣除填报
  • 房产公司业务招待费扣除政策
  • 绩效工资交个人所得税吗
  • 无形资产一般包括哪些权利
  • access字符型数据
  • 金税四期有什么变化
  • 房地产中介公司排名
  • 商场联营方案
  • 员工出差报销补贴政策
  • 公司支出发票
  • 代收污水处理费免税
  • 其他应付款能否直接做实收资本的账务处理
  • 员工自己承担的社保费用进入管理费用吗
  • 汇算清缴缴纳的所得税怎么做账
  • 赠送电影票文案
  • 商品买一送一应该怎么写
  • 变更公司股东要收费吗
  • 母公司销售给控股子公司
  • 收到工程款怎么入账
  • 商业医疗保险的缺点
  • 销项负数发票如何勾选
  • 什么是稳岗补贴有多少
  • linux服务端
  • windows8远程桌面连接
  • ubuntu搭建tftp服务器
  • un_a.exe
  • win8.1怎么打开设置
  • win10老是弹窗广告
  • ubuntu 无法正常启动
  • mac wife
  • linux 管道实现
  • win7安全模式
  • ecmascript5
  • Shell脚本统计文件行数
  • javascript教程推荐知乎
  • javascript入门书
  • javascript的基本数据
  • python中txt文件的读写
  • 杭州没有户口可以上幼儿园吗
  • 盐城买家电到哪里买
  • 开健身会所国家有补贴吗
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设