根据数组生成sql语句的函数

admin 次浏览

摘要:根据数组生成sql语句的函数,当字段比较多时,用传统的insert into 表名(字段1,字段2,字段3....字段N)values(值1,值2,值3....值N) 这样的写法,很容易会出现 字段数量不匹配的问题,还有各种语法的错误....

当字段比较多时,用传统的insert into 表名(字段1,字段2,字段3....字段N)values(值1,值2,值3....值N) 这样的写法,很容易会出现 字段数量不匹配的问题,还有各种语法的错误.

所以用数组生成 insert语句就可以避免这样的问题了, 特别是增删字段时,很方便简单。

$d['title'] = '标题';
$d['classid'] = 1;
$d['create_time'] = time();

$sql = create_sql('data',$d);
//生成sql语句
  function create_sql($table,$arr)
  {
    foreach ($arr as $k => $v)
    {
      $f[] = $k;
      $val[] = "'".$v."'";
    }
    $f = implode(',',$f);
    $val = implode(',',$val);
    return "insert into ".$table."(".$f.")values(".$val.")";
  }


这样最后就可以生成$sql变量的值    insert into data(title,classid,create_time)values('标题',1,当前时间戳)

增减字段,只需要更改$d就可以了。


随机内容