Jag skulle kolla in en klass för att göra någon enkel frågeabstraktion eller någon form av ORM-lib som gör detta. Ett prov skulle se ut så här.
class Query {
function from($tbl){
return new Table($tbl);
}
}
class Table {
var $prefix = 'PBN_';
var $tblname = '';
function Table($name){
$this->tblname = $this->prefix.$name;
}
function select($cols, $where = false, $order = false, $limit = false){
$query = "SELECT {$cols} FROM {$this->tblname}";
if($where) $query .= " WHERE ".$where; //add where
if($order) $query .= " ORDER BY ".$order; //add order
if($limit) $query .= " LIMIT ".$limit; //add limit
return $query;
}
}
$q = new Query;
$results = mysql_query($q->from('products')->select('*'));
Detta är uppenbarligen inte i närheten av komplett eller säkert. Bara ett exempel på hur en abstraktionsklass kan snabba upp din sql och göra dina prefix åt dig.