2015-10-16 93 views
0

我有支付方法的數據庫枚舉,例如,信用卡,支票等從數組中刪除枚舉項PHP

我有多個地方的代碼引用此,但在一個實例中,我想引用它,但排除列表中的一個項目。

最好還是引用這個枚舉,而不是手動添加一個新數組,因爲如果枚舉本身發生變化,我可能會遇到問題。雖然如果我參考它排除一個項目:如果枚舉更改,這段代碼也會如此。

目前我有:

public function PrepareInputs() 
{ 
    parent::PrepareInputs(); 

    $this->AddInputs(
     $checkbox = new PgFormInputCheckBox2("Prefulfilled"), 
     new PgFormInputSubmit("Back", "Change Order", "start"), 
     **$paymentMethod = new PgFormInputSelect("PaymentMethod", "", true),** 
     $submit = new PgFormInputSubmit("PlaceOrder", "Place Order", "place", true) 
    ); 
    $checkbox->printLabel = true; 
    **$paymentMethod->enumeration = array("tblOrder.PaymentMethod"); 
    $paymentMethod->manualOptions = array(":Please select");** 
} 

任何提示嗎?

回答

1

如果這是一個您希望表現不同的實例,則將該異常本地化爲該實例。

因此,例如,在網站的其他部分,您通常會通過付款方式進行循環。但是,在處理異常時,請正常迭代數組,但在循環中排除。然後,如果有什麼變化等,它只在一個地方,破損的機率幾乎不存在和包容。

foreach($PaymentMethods as $k => $v){ 
    if($k !== 'SpecificMethodYouWantToExclude'){ 
     echo "$v": 
    } 
}