使用变量在对象上调用方法

时间:2013-05-01 08:20:08

标签: php methods

任何人都可以解释为什么以下不起作用: -

我得到输出: -

var_dump($this->_payableItem->getNet());

但是当我尝试以下列方式访问它时,我收到错误: -

$thresholdUnitMethod = 'getNet()';
$this->_payableItem->$thresholdUnitMethod

错误: -

  

PHP注意:未定义的属性:   

中的PayableItem :: $ getNet()

2 个答案:

答案 0 :(得分:2)

试试这个:

$thresholdUnitMethod = 'getNet';
$this->_payableItem->$thresholdUnitMethod();

这将在getNet上执行一个名为_payableItem的函数。

More Info about Variable Functions

答案 1 :(得分:0)

您可以使用call_user_func

call_user_func(array($this->_payableItem, 'getNet'));