六年前,我開始了一個新的PHP OOP項目,沒有任何經驗,所以在我走時我只是補充了它。無論如何,我發現我相當強大的MySQL服務器有時候會陷入過於容易,想知道什麼是最好的方式來限制某些分貝活動,當我想出了這個,作爲一個例子...PHP OOP高效的DB讀取減少
private $q_enghours;
public function gEngHours() {
if (isset($this->q_enghours)) {
} else {
$q = "SELECT q_eh FROM " . quQUOTES . " WHERE id = " . $this->id;
if ($r = $this->_dblink->query($q)) {
$row = $r->fetch_row();
$r->free();
$this->q_enghours = $row[0];
}
else {
$this->q_enghours = 0;
}
}
return $this->q_enghours;
}
這似乎應該是有效的,大大減少必要的讀取到db。如果填充對象屬性,則不需要訪問db。請注意,有幾乎所有的類都有相同的「getter」訪問例程。我只在一個地方實施了這種改變,並且想知道是否有這樣的「最佳實踐」,我可能在我重寫所有課程之前錯過了這個「最佳實踐」。
讓我們從你的代碼100%開放給SQL注入開始(綁定你的變量,不要將它們粘貼到SQL中!)。 – h2ooooooo
雖然有效,但這並不適用於我問的問題。我在應用程序的不同部分處理了SQL注入。 – DevlshOne