位置: 编程技术 - 正文

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)

  • 小规模纳税人0税率发票
  • 个人劳务费怎么交税
  • 抄报税校验失败调用系统服务出错怎么办
  • 季报利润表本期数
  • 自行研发无形资产暂时性差异
  • 税务稽查可否清算土地增值税
  • 全额税前扣除的公益捐赠有几类
  • 计划成本法委托加工物资例题
  • 换汇成本太低怎么处理?
  • 当月进项税额大于销项税额
  • 长期待摊费用摊销表
  • 营改增后不动产销售增值税 5%还是9%
  • 非居民企业所得税源泉扣缴管理暂行办法
  • 小规模纳税人免税会计分录
  • 一般纳税人适用税种及税率
  • 小额贷款公司可以跨区域经营吗
  • 资本化和费用化的条件
  • 原始凭证是出纳粘贴还是会计粘贴
  • 汇票和本票之间在使用上有什么差别
  • 利空啥意思
  • 支付工伤赔偿款怎么做账
  • 怎么检查电脑硬件是否正常
  • win8怎么提高性能
  • kb4586853更新
  • 电脑启用aero
  • 记账凭证不见了怎么办
  • 为员工购买商业保险的通知
  • 莱奇沃思田园城市
  • 注销公司需要缴纳注册资金吗
  • 企业所得税申报表在哪里打印
  • batset命令
  • 每个公司都要交房产税吗
  • 公司的日常费用包括哪些
  • 计提工资扣社保的凭证
  • sql随机函数rand怎么用
  • 一般纳税人是怎么征收
  • 工会经费按每月
  • 建筑企业预缴
  • 征地费用会计分录
  • 工商年检截止日期
  • 矿泉水发票能否抵税
  • 小规模减免税款会计分录
  • 红冲发票操作步骤
  • 工程违约金账务处理规定
  • 在建工程转固定资产是什么意思?
  • 企业购买的原材料确认为资产,这属于会计确认的范畴
  • 企业筹建期间利润计算
  • 销售费用进项税抵扣
  • 在建工程的人工费会计分录
  • 计提利息为什么贷方是应付利息
  • 淘宝电商怎么做账
  • 记帐凭证会计处理程序及其应用
  • mysql数据库的总结
  • win7旗舰版系统怎么样
  • 如何使用mac book
  • ghost安装盘的制作
  • windows7关机点了没反应
  • win7任务栏跑到右边了
  • win10右下角功能列表不见了
  • linux监控软件zabbix
  • windows8怎么关闭广告弹窗
  • win7系统怎么修改开机密码
  • win10系统怎么卸载ie浏览器
  • c#+unity3d
  • 鼠标焦点离开触发查询
  • 安卓炫酷壁纸
  • shell的逻辑运算符
  • 断开网络联结的手机
  • linux搭载服务器
  • 噩梦原版
  • jquery mobile
  • 基于Android的人脸门禁系统
  • unity3d documentation
  • 电子税务局个体工商户如何登陆
  • 开增值税专用发票需要注意什么
  • 四川国税局局长是谁
  • 技术进出口指什么技术
  • 国税 地税比例
  • 房屋设备租赁费
  • 江苏盐在什么地方
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设