文档章节

PHP $this->方法调用

ch-gilbert
 ch-gilbert
发布于 2015/06/16 12:27
字数 136
阅读 151
收藏 0
PHP

Reference: http://docs.php.net/manual/en/language.oop5.late-static-bindings.php

Note: In non-static contexts, the called class will be the class of the object instance. Since $this-> will try to call private methods from the same scope, using static:: may give different results. Another difference is that static:: can only refer to static properties.

Example #1

class Father
{
    public function __construct()
    {
        $this->init();
    }

    private function init()
    {
        echo 'father' . PHP_EOL;
    }
}

class Son extends Father
{
    public function __construct()
    {
        parent::__construct();
        $this->init();
    }
    
    private function init()
    {
        echo 'son' . PHP_EOL;
    }
}

new Son();

输出

father
son

Example #2

class Father
{
    public function __construct()
    {
        $this->init();
    }

    private function init()
    {
        echo 'father' . PHP_EOL;
    }
}

class Son extends Father
{  
    private function init()
    {
        echo 'son' . PHP_EOL;
    }
}

new Son();

输出

father

© 著作权归作者所有

共有 人打赏支持
ch-gilbert
粉丝 1
博文 4
码字总数 1347
作品 0
浦东
高级程序员
PHP之新手自学基础知识(五)——拓展篇之魔术变量及魔术函数

PHP 魔术变量 魔术变量就是指那些根据不同环境有不同的取值,以下介绍的是魔术常量,由于在不同环境有不同的取值所以也叫魔术变量。知道本质是个常量就好了。 PHP 向它运行的任何脚本提供了大...

天谴残魂
01/06
0
0
PHP_魔术函数、魔术常量、预定义常量(常用)

PHP魔术函数、魔术常量、预定义常量 一、魔术函数(13个) 1、construct() 实例化对象时被调用, 当construct和以类名为函数名的函数同时存在时,construct将被调用,另一个不被调用。 2、d...

喵王不瞌睡
2014/11/27
0
0
PHP_007 魔术变量和魔术函数

魔术变量 PHP 向它运行的任何脚本提供了大量的预定义常量。 不过很多常量都是由不同的扩展库定义的,只有在加载了这些扩展库时才会出现,或者动态加载后,或者在编译时已经包括进去了。 有八...

g00m
2015/02/23
0
0
THINKPHP的_initialize方法

1、PHP中只有construct方法为构造方法,会自动执行,_initialize方法本身不是构造方法,不会自动执行,只是在thinkphp的Controller.class.php中我们可以看到如下代码 public function constr...

tree2013
2016/03/11
501
0
PHP5中魔术方法

魔术函数 1。construct() 实例化对象时被调用, 当construct和以类名为函数名的函数同时存在时,construct将被调用,另一个不被调用。 2。destruct() 当删除一个对象或对象操作终止时被调用。...

zchd
2014/05/05
0
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

以太坊总结

一、概念说明 1.以太坊(Ethereum blockchain)由V神(Vitalik Buterin)发明,是一个交易记录的永久数据库,它以一个“无信任”的交易系统来运行,不需要任何第三方信任机构即可进行点对点的...

盼望明天
34分钟前
1
0
Java并发工具类——AtomicInteger

基本类型int的递增等操作并不是线程安全的,加上synchronized又会影响性能,因此在并发情况下我们应该使用AtomicInteger,下面通过一个例子验证一哈。 public class TestAtomicInteger {...

东都大狼狗
36分钟前
1
0
基于CentOS7.2系统对RabbitMQ单机版安装过程

准备虚拟机系统 我的系统如下 系统版本7.2 安装perl yum install perl 安装wget工具 yum install -y wget 安装相关依赖工具 yum install ncurses ncurses-base ncurses-devel ncurses-libs ...

凌晨一点
40分钟前
1
0
Maven常用命令

Maven常用命令 说到命令,则不得不提一下环境变量,在之前的博文中简单提了一下环境变量的配置,这里具体说一下。说完环境变量的配置,然后就是Maven的常用命令,这里说的是常用的几个命令,...

星汉
56分钟前
0
0
Flink操作mysql kafka和hbase

主程序 package com.streaming.flink;import java.util.Properties;import org.apache.flink.api.common.functions.FlatMapFunction;import org.apache.flink.api.common.functi......

守望者之父
今天
2
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部