我正在创建一个类(Datamap),它将帮助我简化模型类中的查询。基本上,这个类(Datamap)与我的 db 类一起使用。
以前对于我需要的模型中的插入语句。
$db->query("INSERT INTO test(id,name) VALUES("id","name")");
现在,有了 Datamap 类,它就像
$datamap->create("test","id=id&name=name");
下面是我创建的 Datamap 类的代码片段。
function create($tablename,$variables){
$id=0;
$tbl = $this->creturnval($variables);
$tblVal = $tbl[0];
$tblData = $tbl[1];
$this->db->execute("INSERT into $tablename($tblVal) VALUES($tblData);");
$id = $this->db->lastInsertedId();
return $id;
}
function creturnval($variables){
$vars = explode("&",$variables);
$count = sizeOf($vars);
$tblVal = "";
$tblData = "";
for($i=0;$i<$count;$i++){
$d = explode("=",$vars[$i]);
$tblVal.= $d[0].",";
$tblData.= "'".$d[1]."'".",";
}
$tblVal = rtrim($tblVal, ',');
$tblData = rtrim($tblData, ',');
$return[0] = $tblVal;
$return[1] = $tblData;
return $return;
}
我关心的实际上是性能问题。以前在我的模型类中,如果我只是使用$db->query()
,它似乎更快,因为我不必通过 2 个函数。
现在,为了进行插入,我需要解析变量、拆分 & 等,然后处理它。
我使用这个 Datamap 类的想法实际上是为了提供更多的可维护性和标准化。这是为了防止我所有的模型类在看起来不整洁的地方有 sql 语句。
您认为这会造成可能的性能问题吗?
PS:我正在使用我为我的 Web 应用程序构建的自己的框架
感谢所有建议。