PHP __CLASS __,get_class()和get_ Called_class()之间的区别
示例
__CLASS__magic常量返回的结果与get_class()不带参数调用的函数的结果相同,并且都返回定义该类的名称(即,您在其中编写函数call/constantname的位置)。
相反,get_class($this)和get_called_class()函数调用都将返回实例化的实际类的名称:
<?php
class Definition_Class {
public function say(){
echo '__CLASS__ value: ' . __CLASS__ . "\n";
echo 'get_called_class() value: ' . get_called_class() . "\n";
echo 'get_class($this) value: ' . get_class($this) . "\n";
echo 'get_class() value: ' . get_class() . "\n";
}
}
class Actual_Class extends Definition_Class {}
$c = new Actual_Class();
$c->say();
//输出:
//__CLASS__值:Definition_Class
//get_drawn_class()值:Actual_Class
//get_class($this)值:Actual_Class
//get_class()值:Definition_Class
热门推荐
1 训练狗狗憋尿
2 狗狗追踪训练
3 狗狗训练要多少钱
5 深圳狗狗训练
6 训练狗狗唤回
7 狗狗叫怎么训练
8 狗狗训练班
10 狗狗社会化训练
11 狗狗叫回训练
12 广州狗狗训练学校
13 狗狗训练躺下
14 狗狗随行训练
15 训练狗狗巡回
16 狗狗要怎么训练
17 狗狗喂食训练
18 训练狗狗躺下