2010-01-05 68 views
0

我有ID名稱的第二部分表名加ID。如何根據php函數中的其他參數操作參數?

For example 

admins_id in omc_admins table, 

customers_id in omc_customers table, 

products_id in omc_products table, 

categories_id in omc_categories table etc. 

現在下面的函數代碼應該找到孤兒。例如,當我刪除類別時,它將檢查產品並找到該類別的孤兒。

現在我不知道如何根據其他參數操作參數。例如$ this-> db-> select('id,name');中的'id'。

id將根據$ db_table進行更改。

function checkOrphans($segment, $id, $db_table){ 
$data = array(); 
$this->db->select('id,name'); 
$this->db->where($id,id_clean($segment)); 
$Q = $this->db->get($db_table); 
if ($Q->num_rows() > 0){ 
    foreach ($Q->result_array() as $row){ 
    $data[$row['id']] = $row['name']; 
    } 
} 
$Q->free_result(); 
return $data; 

}

我想我可以用$ db_table。例如$ db_table是omc_categories,我可以使用類別部分並添加到id。

categories_id。

誰能告訴我該怎麼做?

我使用codeigniter,但問題是純粹的PHP。

回答

1

您可以通過這種方式獲得的ID名稱:

$id_name = preg_replace('/.*_(.*)/', '${1}_id', $db_table); 

然後

$this->db->select($id_name . ',name'); 
+0

我要選擇標識和名稱,以及。 – shin 2010-01-05 15:37:11

+0

編輯我的答案 – 2010-01-05 15:42:39