需要注意的是,返回的方法取决于当前作用域。请查看此示例
<?php
class C
{
private function privateMethod()
{
}
public function publicMethod()
{
}
public function __construct()
{
echo '$this:';
var_dump(get_class_methods($this));
echo 'C (类内):';
var_dump(get_class_methods('C'));
}
}
$c = new C;
echo '$c:';
var_dump(get_class_methods($c));
echo 'C (类外):';
var_dump(get_class_methods('C'));
?>
输出
$this
数组
0 => 字符串 'privateMethod' (长度为 13)
1 => 字符串 'publicMethod' (长度为 12)
2 => 字符串 '__construct' (长度为 11)
C (类内)
数组
0 => 字符串 'privateMethod' (长度为 13)
1 => 字符串 'publicMethod' (长度为 12)
2 => 字符串 '__construct' (长度为 11)
$c
数组
0 => 字符串 'publicMethod' (长度为 12)
1 => 字符串 '__construct' (长度为 11)
C (类外)
数组
0 => 字符串 'publicMethod' (长度为 12)
1 => 字符串 '__construct' (长度为 11)