当前位置:首页 > PHP > 正文内容

PHP中$this和self的区别

高老师8年前 (2017-07-02)PHP1592
<?php
//对比$this和self
 
/*
 * $this更倾向于对象本身
 * 
 */
 
class  Par{
 
 
public   function  a(){
echo '我是A';
}
 
public   function b(){
$this->a();
}
}
 
 
class  Son  extends   Par{
 
//重写父类的A方法
public   function a(){
echo '我是SonA';
}
 
 
}
 
 
//实例化子类
$son=new Son();
$son->b();
 
 
 
 
 
 
/*
 * self更倾向于类本身
 * 
 */
class  Par{
 
 
public static  function  a(){
echo '我是A';
}
 
public static function b(){
self::a();
}
}
 
 
class  Son  extends   Par{
 
//重写父类的A方法
public  static  function a(){
echo '我是SonA';
}
 
 
}
 
 
//实例化子类
 
Son::b();
 
 
?>

扫描二维码推送至手机访问。

版权声明:本文由高久峰个人博客发布,如需转载请注明出处。

本文链接:https://blog.20230611.cn/post/19.html

分享给朋友:

“PHP中$this和self的区别” 的相关文章

swoole中的worker_num和task_worker_num

swoole中的worker_num和task_worker_num

(1)swoole启动的主进程是master进程负责全局管理,然后master进程会再fork一个manager进程。(2)manager进程开始统一管理进程创建回收管理。(3)manager进程根据设置的worker_num和task_worker_num来创建work进程和task进程因此启动s...

php finally使用

php finally使用

<?php /**  * @throws Exception  */ function curl() {     throw  new \Exception('err...

php执行慢原因查找

php执行慢原因查找

今天帮朋友查询wordpress执行超级慢的原因,特此记录开启fpm的慢日志,记录执行超过30秒的脚本request_slowlog_timeout = 30 slowlog = var/log/slow.log查看日志[23-May-2019 17...

php异步信号处理

php异步信号处理

php7.1引入了PHP异步信号处理函数pcntl_async_signals() 来处理阻塞问题。在php7之前信号处理方式有2种,第一种是基于ticks来每执行一行代码来触发执行信号监听,第二种是直接while(true){  //监听信号 }第一种方式如果某行的代码阻塞时间较长会影响...

posix_ttyname函数详解

posix_ttyname函数详解

posix_ttyname - 获取当前终端设备名称。<?php     var_dump( posix_ttyname(STDOUT) );我们启动一个终端,执行上面的代码输出:/dev/tty1我们再启动一个终端,执行上面的代码输...

php通过event扩展创建定时器,php毫秒级定时器

php通过event扩展创建定时器,php毫秒级定时器

PHP简单定时器可以通过pcntl_signal创建闹钟信号来实现。但是缺点很明显,性能一般,要自己实现守护进程,不支持毫秒级定时器,单进程不支持多个闹钟信号,不能跨平台运行event扩展支持的事件多,性能高。<?php //创建event配置.[空配置] $eventConfig ...