2015-11-04 97 views
1

如何将多个方法链接在一起而不知道会有多少个?例如,我怎样才能像循环一样多次调用这个addMultiLink方法?PHP动态方法链接

(new EntryField('products'))->addMultiLink($product_ids[0]) 

基本上我想要的结果是这样的:

(new EntryField('products'))->addMultiLink($product_ids[0])->addMultiLink($product_ids[1])->addMultiLink($product_ids[2]) 
+0

没有,它是更多关于如何做一个循环 –

+0

哦一个问题,我看到的。抱歉标记。 – somesoaccount

回答

1

在你addMultiLink回报$this

public function addMultiLink($argument) 
{ 
    // your code here 

    return $this; 
} 

但我可以看到你传递数组中的元素在你的每次通话的功能。 也许最好重写addMultiLink并认为它是数组的参数?或者,检查它是否是数组或某个整数值:

public function addMultiLink($argument) 
{ 
    if (is_array($argument)) { 
     // do a foreach loop for example 
    } else { 
     // do something else 
    } 
} 
0
$product_entry_field = (new EntryField('products')); 
    foreach($product_ids as $product_id) { 
     $product_entry_field->addMultiLink($product_id); 
    }