我正在重新考慮大量代碼以使其更具可測性,並且我擁有一堆依賴於實例化數據庫對象的有用函數。實例化函數中的類是不好的做法PHP
事情是這樣的:
function id_from_name($table, $name)
{
$db = get_database();
//code that returns an id
}
function username_from_user_id($id)
{
$db = get_database();
//code that returns a username
}
還有一堆更像id_exists,id_active等
現在我在想,這是不是做的對象正確的事情或許應該作爲參數傳遞?但是那意味着每次我想要使用這些函數時,都會創建一個新對象並將其發送到每個函數中。
所以真的,我的問題是:我應該將這些函數移動到他們自己的可以訪問數據庫對象的類/庫嗎?並且是我上面通常表現出的一種糟糕的做事方式的例子?
將函數移動到一個類中,然後使用它需要的任何依賴注入該類。 http://en.wikipedia.org/wiki/Dependency_injection – Mark