鑑於這種類:我將如何從一個變量的類調用方法?
class Tacobell{
public function order_taco(){
echo "3 Tacos, thank you.";
}
public function order_burrito(){
echo "Cheesy bean and rice, please";
}
}
$lunch = new Tacobell;
$lunch->order_burrito();
$lunch->order_taco();
我怎麼會做這樣的事?
$myOrder = 'burrito';
$lunch->order_.$myOrder;
很明顯,代碼是雙層 - 但顯示了我試圖做的比嘗試解釋它更好。
也許我正在討論這一切都是錯誤的。我想到了一個使用switch語句的方法,通過了墨西哥捲餅或塔科,然後從那裏調用正確的方法。但是,我必須從一開始就知道結束,而且我可能有很多方法,我寧願不必每次都更新switch語句。
謝謝!
這可以使用對象來完成,你可以爲每個項目類別,每個人都可以遵循相同的接口,然後有將採取OrderItem的對象的單個訂單()方法,可以是BurritoOrderItem或TacoOrderItem。當需要反射或者當你有可變的方法調用時,我總是畏縮,它對我來說並不乾淨。 – Kekoa 2009-06-01 21:33:57