比较适合PHP新手学习用的Insert和Update语句构造类,具体代码如下:
class sqlstr { private $param=array(); private $tablename; function sqlstr($tablename) { $this->tablename = $tablename; } public function set($name,$value,$isnum=false){ $value = str_replace("'","''",$value); $this->param[$name]=array($value,$isnum); } public function insertSql(){ $keys=""; $values=""; foreach($this->param as $key =>$value){ $keys = $keys . $key . ","; if($value[1]){ $values = $values . $value[0] . ","; }else{ $values = $values . "'" . $value[0] . "',"; } } if($keys!=""){$keys=substr($keys,0,strlen($keys)-1) ;} if($values!=""){$values=substr($values,0,strlen($values)-1) ;} return "insert into " .$this->tablename ."($keys) values($values)"; } public function updateSql($cond){ $group=""; foreach($this->param as $key =>$value){ $group .= $key . "="; if($value[1]){ $group.= $value[0] . ","; }else{ $group.= "'" . $value[0] . "',"; } } if($group!=""){$group=substr($group,0,strlen($group)-1) ;} return "update " . $this->tablename ." set $group where " . $cond; } }
使用方法如下:
$mysql = new sqlstr("table1"); $mysql->set("name","value"); $mysql->set("name","1",true); echo $mysql->insertSql();