2012-01-02 53 views
0

我需要一些幫助。我工作的一個項目,我發現自己寫了一堆的功能從數據庫中抓取信息:PHP/MySQL需要數據庫類

例如:

function getSlideByUserAndSortId($sort_order) { 
global $mysqli; 
global $user_id; 

if ($stmt = $mysqli->prepare("SELECT slide_id FROM user_slides WHERE user_id = ? AND sort_order = ?")) { 
    $stmt->bind_param('ii', $user_id, $sort_order); 
    $stmt->execute(); 
    $stmt->bind_result($returnSlideId); 
    $stmt->store_result(); 
    $stmt->fetch(); 

    return $returnSlideId; 

    $stmt->close(); 
} 
} 

function getSlideText($var) { 
global $mysqli; 
global $user_id; 
global $current_slide; 

if ($stmt = $mysqli->prepare("SELECT text FROM slide_data WHERE slide_id = ? AND user_id = ? LIMIT 1")) { 
    $stmt->bind_param('ii', $current_slide, $user_id); 
    $stmt->execute(); 
    $stmt->bind_result($text); 
    $stmt->store_result(); 
    $stmt->fetch(); 

    $text = ($stmt->num_rows < 1 ? $var : $text); 

    return $text; 

    $stmt->close(); 
} 
} 

,它是那樣凌亂。什麼我需要的是一個類像Codeigniter,我可以這樣做:

$this->db->select('*'); 
$this->db->from('blogs'); 
$this->db->join('comments', 'comments.id = blogs.id'); 

$query = $this->db->get(); 

其他人如何做到這一點?如果您需要獲取大量信息並進行大量查詢,那麼顯示數據的最佳方式是什麼?

回答

3

你正在尋找的是一個Object Relational Mapper並且已經有許多創建用於PHP和MySql。一些最好的和最廣泛使用的是PropelDoctrine

但是你CAND找到這個計算器question

+0

+1許多其他建議。我可以親自推薦學說,它加速了我的發展。 – MrGlass 2012-01-02 21:33:24