標籤:
前兩天學習到的知識,挺有用的,因此這裡做個分享
function AutoCreateSql($tab,$dataarr,$mode=‘insert‘,$where=‘ 1 and 1 limit 1‘){ //形如 insert into test(t1,t2) values(‘v1‘,‘v2‘) update test set t1=‘v1‘,t2=‘v2‘ where id = 1 //delete 語句的參數 應該 是 表 where 條件 所以可以另寫一個函數 //因為查詢語句樣式較多 怎樣寫還在思考中 若是有朋友已經會了請指點下小弟 言而總之 就是 沒寫出來,目前只有這兩種語句//對 $dataarr 數組的說明 這是構造的一個特殊的數組 其索引值就是表中的欄位名 其元素值就是表中的欄位對應的值 if(!is_arr($data_arr)){ return false; } if($mode == ‘update‘){ $sql = ‘update ‘.$tab.‘ set ‘; foreach($dataarr as $k=>$v){ $sql.=$k.‘=‘. ".".$v".".‘,‘; } $sql = rtrim($sql,‘,‘); //去掉最右邊的, return $sql; } $sql =‘insert into ‘.$tab; $ziduan = implode(",",array_keys($dataarr));//取得所有的索引值並以,拼成字串---這樣做符合insert的寫法 $sql .= ‘( ‘.$ziduan.‘ ) ‘; $ziduanval = implode("‘,‘",array_values($dataarr));//取得所有的索引值並以‘,‘拼成字串---這樣做符合insert的寫法 $sql .= ‘ values ( \‘ ‘.$ziduanval.‘ \‘) ‘; return $sql}
php-自動產生sql語句