位置: 编程技术 - 正文

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)

  • 个人独资企业税种有哪些
  • 长期应收款的计税基础 陈版
  • 在哪里报个税
  • 公司对供应商罚款合法吗
  • 业务招待产生的快递费
  • 会计凭证在设计中应遵循的设计原则
  • 应交消费税通过什么科目核算
  • 个税专项扣除需要提供哪些依据
  • 收取质保金会计处理
  • 运输业增值税专用发票开具要求
  • 个体户生产经营所得税税率表
  • 会计增长知识方面
  • 工资哪些扣款应该扣税
  • 个人所得税变动率计算公式为多少
  • 企业与个人租赁合同范本
  • 季度企业所得税可以弥补以前年度亏损吗
  • 建筑机械租赁站
  • 携税宝可以不买吗
  • 其他应付款需要做预算会计吗
  • 勾选认证的发票在哪里能查询
  • 分期付款融资账务处理
  • 税务缴纳滞纳金处罚依据
  • 新版edge浏览器设置背景图片
  • 为什么ie浏览器打开是2345浏览器
  • 金融资产有哪三类代码
  • 企业福利费支出范围
  • 印花税是怎么计算
  • 技术服务合同要盖骑缝章吗
  • 一个药厂能够生产药品的三个前提条件
  • php的数组函数
  • 员工福利费会计处理
  • SCP远程VPS快速搬家和WDCP升级php5.3安装memcached和eaccelerator教程
  • 第二季度所得税怎么算
  • php 获取当前url
  • php中自定义函数的语法格式
  • c#怎么使用
  • 自建厂房流程
  • 小规模纳税人采购需要发票吗
  • 期末调整汇兑损益计算
  • mysql的联合查询
  • 旅行社的增值税税率
  • 废料收入是什么会计分录
  • 小规模收入账务
  • sqlserver2008导出表结构和表数据
  • 银行开户费属于现金流量表的哪一类
  • 二手车没有发票能上牌吗
  • 公司缴纳社保会计分录怎么做
  • 我国消费现状分析
  • 赞助支出属于什么科目
  • 双倍余额递减法例题及解析
  • 土地使用权作为存货怎么入账
  • 应收帐款收不回来怎么做会计分录
  • 退回的银行手续费做什么科目
  • 公司备用金使用后没有发票抵扣
  • 可供出售金融资产包括哪些内容
  • 固定资产帐怎么做
  • 什么是备查账
  • mysql innode
  • sql server日期函数有哪些
  • centos7.6无法远程
  • macbookair网页全屏
  • synergy linux
  • extend列表
  • shell脚本实现ssh登录
  • threejs 源码
  • unity jsonobject
  • unity官方插件
  • javascript高级程序设计最新版
  • jquery设置定时器
  • javascript怎么关
  • jquery全选和全不选效果
  • javascript获取当前年份
  • 国家电子税务局云南省电子税务局
  • 税务人员服务态度恶劣怎么办
  • 最新印花税税目内容
  • 天津户籍信息查询
  • 如何在国税网查企业年金
  • 电子税务怎么弄
  • 烟叶税额
  • 社保每个月都要交吗,不交了会怎么样
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设