在Python中,我可以在类实例方法中执行此操作:
esc = self.super_long_escape_function_name
print esc(param1) + ", " + esc(param2)
在PHP中,这是我能够编写的最接近的“等价物”:
$self = $this;
$esc = function($str) use($self) {
return $self->super_long_escape_function_name($str);
};
echo $esc($param1) . ", " . $esc($param2);
我甚至不会称之为等同物。我也试过这个没有成功:
$esc = '$this->super_long_escape_function_name';
有没有什么好方法可以为类实例方法创建本地快捷方式?
答案 0 :(得分:2)
在提出这个问题后,我发现这有效:
$esc = array($this, "super_long_escape_function_name");
echo $esc($param1) . ", " . $esc($param2);
这在PHP 5.3中不起作用,所以如果它出现的话我会接受更好的答案。
答案 1 :(得分:0)
试试这个
$esc = array($this, "super_long_escape_function_name");
echo $esc($param1) . ", " . $esc($param2);