thinkphp中的_initialize方法

简介:

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

复制代码
<?php
class BaseAction extends Action { // 继承Thinkphp
    protected function _initialize() { // thinkphp中的函数
        echo "Base class";
    }
}
复制代码

子类如果没有_initialize方法,则默认调用父类的_initialize方法。

1
输出:Base  class

如果有,则执行自己的_initialize方法。

1
输出:hello I am child

如果同时执行,则要这样写

复制代码
<?php

class IndexAction extends BaseAction {

    public function _initialize(){ // 如果子类存在initialize,则不执行父类的内容
        parent::_initialize(); // 加上这一句,才执行父类的初始化函数
        echo "hello I am child";
    }
}
复制代码
1
输出:Base  class  hello I am child



本文转自TBHacker博客园博客,原文链接:http://www.cnblogs.com/jiqing9006/p/5028321.html,如需转载请自行联系原作者

相关文章
|
11月前
react-Native init初始化项目报错”TypeError: cli.init is not a function“
react-Native init初始化项目报错”TypeError: cli.init is not a function“
580 1
|
12月前
|
设计模式 存储 架构师
ThinkPHP5源码阅读-类的自动加载register与autoload的实现
PHP快速入门与实战ThinkPHP是国内最流行的一款PHP框架,是国人自主研发的框架,起源于2006年,经过了十几年的不断发展。已经成为了一款被PHP广泛认可的性能开发效率兼具的利器。阅读框架源码有助于我们更好的学习语言基础,拓展设计模式等相关能力。同时很多设计与编码的思想也能更好的指导我们日常工作,尤其是想成为资深程序员或者架构师方面的同事,这是一个必须要学习的过程。今天是ThinkPHP5源码第一讲,关于类的自动加载,看看源码底层是怎么实现的。怕迷路的同学,先给个关注吧。
|
11月前
|
PHP
PHP - Laravel 视图模板(blade.php) 模板继承(@extends、@yield、@section)
PHP - Laravel 视图模板(blade.php) 模板继承(@extends、@yield、@section)
206 0
|
SQL 缓存 开发框架
THINKPHP5中的config设置实例
THINKPHP5中的config设置实例
150 0
|
设计模式 Java Python
简述Python类中的 __init__、__new__、__call__ 方法
简述Python类中的 __init__、__new__、__call__ 方法
87 0
Yii2的模型类的 load() 方法是干什么的?底层原理是什么?
Yii2的模型类的 load() 方法是干什么的?底层原理是什么?
204 0
|
PHP
【laravel】call_user_func_array在框架的使用
【laravel】call_user_func_array在框架的使用
184 0
【laravel】call_user_func_array在框架的使用
|
存储 缓存 Go
iOS原理分析之从源码看load与initialize方法(一)
iOS原理分析之从源码看load与initialize方法
217 0
iOS原理分析之从源码看load与initialize方法(一)
|
PHP
thinkphp save($data)的返回值
thinkphp save($data)的返回值
351 0
|
安全 iOS开发
iOS原理分析之从源码看load与initialize方法(二)
iOS原理分析之从源码看load与initialize方法
127 0