位置: 编程技术 - 正文

浅谈ThinkPHP中initialize和construct的区别(thinkphp import)

编辑:rootadmin

推荐整理分享浅谈ThinkPHP中initialize和construct的区别(thinkphp import),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:thinkphp in,thinkphp insertall,thinkphp invoke,thinkphp pathinfo,thinkphp in,thinkphp in,thinkphp insertall,thinkphp initialize,内容如对您有帮助,希望把文章链接给更多的朋友!

ThinkPHP中initialize()和construct()这两个函数都可以理解为构造函数,前面一个是tp框架独有的,后面的是php构造函数,那么这两个有什么不同呢?

在网上搜索,很多答案是两者是一样的,ThinkPHP中initialize相当于php的construct,这么说是错误的,如果这样,tp为什么不用construct,而要自己弄一个ThinkPHP版的initialize构造函数呢?

自己试一下就知道两者的不同了。

b.php(注意:这里构造函数没有调用parent::__construct();)

运行结果:

b

可见,虽然b类继承了a类,但是输出结果证明程序只是执行了b类的构造函数,而没有自动执行父类的构造函数。

如果b.php的构造函数加上parent::__construct(),就不同了。

浅谈ThinkPHP中initialize和construct的区别(thinkphp import)

那么输出结果是:

ab

此时才执行了父类的构造函数。

我们再来看看thinkphp的initialize()函数。

运行Index下的index方法,输出结果:

baseActionindexAcition

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

这就是ThinkPHP中initialize和construct的不同。

以上这篇浅谈ThinkPHP中initialize和construct的区别就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持积木网。

thinkphp自定义权限管理之名称判断方法 权限管理,就是给不同的用户分配不同的权限。当用户登录或者操作时候进行判断,来阻止用户进行权限以外的操作。本次讲的是当用户登录一刻,只

php使用strpos判断字符串中数字类型子字符串出错的解决方法 原创 本文实例讲述了php使用strpos判断字符串中数字类型子字符串出错的解决方法。分享给大家供大家参考,具体如下:一、问题:最近的开发中在程序代码

thinkphp关于简单的权限判定方法 实例如下:lilabel权限/labelciteinputname="MB_right"type="radio"value="1"checked="checked"超级管理员inputname="MB_right"type="radio"value="0"普通管理员/cite/li//权限判定if($_SESSIO

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

上一篇:centos下file_put_contents()无法写入文件的原因及解决方法

下一篇:thinkphp自定义权限管理之名称判断方法(thinkphp5自定义标签)

免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

鄂ICP备2023003026号

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

友情链接: 武汉网站建设 电脑维修 湖南楚通运网络