我創建了一個主類,所有我的主要成員激活失活的功能是,所有與之相關的其他事情也做擁有更高效的代碼返回
這個主類(包含一些重要的功能一起)錯誤從不同的地方,包括通過捲曲
現在讓我activaton功能(其中一個主要的功能)在
activationFunction($data)
{
//use data to generate total, discount etc
$this->giveAffiliates($total);
if($this->_error){ return $this->_error;}
$this->activateOrder($total,$discount,id);
if($this->_error){ return $this->_error;}
$this->activatePlan($total,$discount,id);
if($this->_error){ return $this->_error;}
//similarily calling various functions which themselves call other functions
}
activatePlan()
{
try{
//call other functions and do necessary stuff for plan A
}
catch(Exception $e)
{
$this->_error.="Error occurred while activating plan A";
}
//for plan B
try{
//call other functions and do necessary stuff for plan B
}
catch(Exception $e)
{
$this->_error.="Error occurred while activating plan B";
}
//for other plans similarily
}
}
現在的問題是每個子函數調用後有if($this->_error){ return $this->_error;}
類(共我打電話一個m有大約35條這樣的相似線) 我需要這個,因爲我需要將錯誤發送給用戶並阻止我的代碼進一步運行。但它使我的代碼長而且效率不高。 如何減少所有這些返回值,但在其中一個子函數失敗時向用戶顯示錯誤,並嘗試保留我的代碼結構。 我必須調用每個主函數的各種子函數(這我不能改變,只有一個類和其中的各種函數),並且錯誤將主要在每個級別被捕獲並返回(很少有簡單的錯誤是沒有返回並且代碼被允許繼續運行)。 我還必須記住,稍後可能會添加其他各種功能,並且它應該足夠靈活,以便稍後處理所有內容。
我不認爲代碼執行效率真的是這裏的問題。代碼可維護性/可讀性。 – 2013-05-03 21:01:02
是代碼的可維護性/可讀性肯定是一個問題,如果不是主要問題 – user1913849 2013-05-03 21:08:01