我可以在PHP中使用$ this中的变量值吗?

时间:2017-12-16 21:49:38

标签: php

我想知道在使用$this调用函数时是否可以使用变量。它看起来与this question不同,因为它不需要将类用作变量。此处没有提供建议的答案。

有时候说$x == 1,有时说$x == 2。你能做到吗?

if($x == 1)
 $var = 'name_1';

if($x == 2)
 $var = 'name_2';

$this->$var->a_function_here();

而不是:

if($x = 1)
 $this->name_1->a_function_here();

if($x = 2)
 $this->name_2->a_function_here();

1 个答案:

答案 0 :(得分:1)

是的,你可以。

只需使用$this->{$var}->your_function();

即可

修改 “博士论文”适合那些想要了解更多的人。

对可能有相同问题的其他用户的“完整”答案。

有时最好使用带有函数名称的变量来使系统更具动态性。你可以用床垫做到这一点。

也可以使用大括号来清楚地界定属性名称。当访问包含数组的属性中的值,属性名称由多个部分组成时,或者属性名称包含其他方式无效的字符时,它们最有用

http://php.net/manual/pt_BR/language.variables.variable.php