本文目录一览:
php 怎么获取当前函数名称 ?
php提供的一些系统常量可以完成这些
php获取当前方法名(函数名) __FUNCTION__
php获取当前类名 __CLASS__ 或者 get_class($this);
php获取本类所有的方法名 get_class_methods($this);实例如下
class Test{
function kkk(){
return get_class_methods(Test);
}
function meme(){
}
function myfunction(){
}
}
$y=new Test();
print_r($y-kkk());
返回结果如下
Array ( [0] = kkk [1] = meme [2] = myfunction )
php获取类中所有的成员属性,返回一个数组 get_class_vars(class name); 实例如下
class Test{
public $tt="dddd";
public $aa="aaaaaaaa";
function kkk(){
return get_class_vars(Test);
}
}
$y=new Test();
print_r($y-kkk());
返回结果如下
Array ( [tt] = dddd [aa] = aaaaaaaa )
php 中如何得到一个对象的类型
得到一个对象的类型,使用gettype()函数:
?php
echo gettype(1); // 输出integer
echo gettype(array()); // 输出array
得到一个对象是哪个类的实例,使用get_class()函数:
?php
$o = new stdClass();
echo get_class(); // 输出stdClass
得到一个类或对象的方法和属性,要使用反射:
?php
class MyClass {
public $var;
public function foo() {}
}
$ref = new ReflectionClass('MyClass');
$ref-getProperties(); // 会返回一组对象,用法参考PHP手册
$ref-getMethods(); // 会返回一组对象,用法参考PHP手册
$obj = new MyClass();
$ref = new ReflectionObject($obj);
$ref-getProperties();
$ref-getMethods();
PHP中如何获得当前类的名称,而实例化后获取子类的名称
通过 get_declared_classes 获取所有的类,
然后循环这个array,再通过 instance_of 检测是否是你指定类的子类,然后push到一个数组中.
thinkphp3.2 怎么获取当前类名
__FUNCTION__ 函数名称(PHP 4.3.0 新加)。自 PHP 5 起本常量返回该函数被定义时的名字(区分大小写)。在 PHP 4 中该值总是小写字母的。
__CLASS__ 类的名称(PHP 4.3.0 新加)。自 PHP 5 起本常量返回该类被定义时的名字(区分大小写)。在 PHP 4 中该值总是小写字母的。
__METHOD__ 类的方法名(PHP 5.0.0 新加)。返回该方法被定义时的名字(区分大小写)。
注:这些常量前后均是两个下划线。
get_class(class name);//取得当前语句所在类的类名
get_class_methods(class name);//取得class name 类的所有的方法名,并且组成一个数组
get_class_vars(class name);//取得class name 类的所有的变亮名,并组成一个数组