Php 如何获取父函数/方法的变量名?

Php 如何获取父函数/方法的变量名?,php,php-5.3,Php,Php 5.3,debug\u backtrace()只返回名称中只填充了数字的args数组,因此可能还有其他黑客可以访问父作用域上下文?签出反射函数 范例 function test($test){ return $test; } $method = new ReflectionFunction('test'); var_dump( $method->getParameters() ); foreach($params as $param){ echo $param->n

debug\u backtrace()
只返回名称中只填充了数字的args数组,因此可能还有其他黑客可以访问父作用域上下文?

签出反射函数

范例

function test($test){
    return $test;
}


$method = new ReflectionFunction('test');
var_dump( $method->getParameters() ); 

foreach($params as $param){
    echo $param->name.'<br/>';
}
功能测试($test){
返回$test;
}
$method=新的反射函数(“测试”);
var_dump($method->getParameters());
foreach($params作为$param){
echo$param->name.“
”; }
使用ReflectionMethod的类示例

class MyClass{

function test($test,$world){
    return $test;
}
}

$method = new ReflectionMethod('MyClass','test');
$params = $method->getParameters();

foreach($params as $param){
    echo $param->name.'<br/>';
}
class-MyClass{
功能测试($test,$world){
返回$test;
}
}
$method=newreflectionmethod('MyClass','test');
$params=$method->getParameters();
foreach($params作为$param){
echo$param->name.“
”; }
检查反射器功能

范例

function test($test){
    return $test;
}


$method = new ReflectionFunction('test');
var_dump( $method->getParameters() ); 

foreach($params as $param){
    echo $param->name.'<br/>';
}
功能测试($test){
返回$test;
}
$method=新的反射函数(“测试”);
var_dump($method->getParameters());
foreach($params作为$param){
echo$param->name.“
”; }
使用ReflectionMethod的类示例

class MyClass{

function test($test,$world){
    return $test;
}
}

$method = new ReflectionMethod('MyClass','test');
$params = $method->getParameters();

foreach($params as $param){
    echo $param->name.'<br/>';
}
class-MyClass{
功能测试($test,$world){
返回$test;
}
}
$method=newreflectionmethod('MyClass','test');
$params=$method->getParameters();
foreach($params作为$param){
echo$param->name.“
”; }
有人能帮我在提问时如何使用它吗?文档很少。您能提供一些示例如何在类上下文中使用它吗?您的示例是有效的,但如果我在类中执行此操作,我会得到
致命错误:未捕获异常'ReflectionException',消息'Invalid method name\uu construct'
为此,您需要反射方法类,请签出我的编辑。有人帮助我如何在我的问题上下文中使用它吗?文档很少。您能提供一些示例如何在类上下文中使用它吗?您的示例是有效的,但如果我在类中执行此操作,我会得到
致命错误:未捕获异常'ReflectionException',消息'Invalid method name\uu Construction'
为此,您需要反射方法类,请签出我的编辑。这里甚至有一个请求:也许您还应该问问自己,为什么需要这样的机制。通常,这会在某一点或另一点上产生问题。为什么不创建一个新的问题来解释你想要实现什么,你目前如何处理它,还有什么更好的替代方案,使你的代码不依赖于父上下文?我正在尝试编写“清理”方法,该方法将在其他方法上运行,并检查给定的参数是否正确,例如,我们正在匹配一些正则表达式等等——正如你在下面的帖子中看到的,这样的机制是存在的。我知道这些机制是存在的,但这不是重点。问题仍然是:你想要实现什么?你的描述非常模糊,只是在某种程度上描述了它的功能,但是为什么以及你打算如何使用这些信息仍然是未知的。好吧,同样,我有一个有很多方法的类,这些方法需要数据才能工作,这些数据必须符合某些规则,所以是bool或非空字符串或匹配一些正则表达式。我可以轻松地在每个方法中编写ifs和ELSE,但这将是一个重复的任务,因此我编写了一个函数,该函数需要在方法启动后的第一行中运行,如果输入数据与我的规则不匹配,它将引发错误。然后在方法中,我确信我是在安全数据上操作的。在sanitize函数的参数中,我放置了我想要使用的变量名,所以这个函数必须达到UTSID,这里甚至有这样的要求:也许你也应该问问自己,为什么需要这样的机制。通常,这会在某一点或另一点上产生问题。为什么不创建一个新的问题来解释你想要实现什么,你目前如何处理它,还有什么更好的替代方案,使你的代码不依赖于父上下文?我正在尝试编写“清理”方法,该方法将在其他方法上运行,并检查给定的参数是否正确,例如,我们正在匹配一些正则表达式等等——正如你在下面的帖子中看到的,这样的机制是存在的。我知道这些机制是存在的,但这不是重点。问题仍然是:你想要实现什么?你的描述非常模糊,只是在某种程度上描述了它的功能,但是为什么以及你打算如何使用这些信息仍然是未知的。好吧,同样,我有一个有很多方法的类,这些方法需要数据才能工作,这些数据必须符合某些规则,所以是bool或非空字符串或匹配一些正则表达式。我可以轻松地在每个方法中编写ifs和ELSE,但这将是一个重复的任务,因此我编写了一个函数,该函数需要在方法启动后的第一行中运行,如果输入数据与我的规则不匹配,它将引发错误。然后在方法中,我确信我是在安全数据上操作的。在sanitize函数的参数中,我放置了要使用的变量名,因此该函数必须到达utsid