本帖最后由 z3325450 于 2013-10-24 15:35 编辑
为了更加方便 在模版中查询数据 ,自己定义了一些函数,公布出来方便大家.
* ret_int($整数);//判断整数大于0
* define_sql(操作表,where 语句 array(),排序ORDER id 升降 array('uid {or} uid , type '=>'DESC') , LIMIT "*,*");
//定义sql语句,不需要可留空操作
* ret_sql();//取回sql语句
* sql_fetch();//执行查询并,返回一行数据
* sql_rows();//取查询结果总数
* sql_num();//取执行查询所影响的记录行数
*
通过 定义sql语句 执行查询 在对应操作.省略了很多操作性.
- function ret_int($a)
- {
- if(isset($a))
- {
- $id = (int)($a);
- if(is_int($id) && $id>0)
- {
- return false;
- }
-
- return true;
- }
- return true;
- }
- function ret_chr($a)
- {
- if(strlen($a)>0)
- return false;
- return true;
- }
- function ret_key_val($arr,$add1='',$add2='',$add3='')
- {
- $n = count($arr);
- $key = array_keys($arr);
-
- for($i=0;$i<$n;$i++)
- {
- $i_text = ret_int($i) ? "" :$add3;
- $ret = $ret . $i_text . $key[$i] . $add1 .$add2. $arr[$key[$i]] . $add2 ;
- }
- return $ret;
- }
- function define_sql($Table,$where,$ORDER,$LIMIT)//定义sql语句,不需要可留空操作
- {
- global $_sql;
- $Table = ret_key_val($Table,' FROM pre_');//Table
- $where = ret_key_val($where,'= ',"'"," and ");//where
- $ORDER = ret_key_val($ORDER,' ',"","");//ORDER
- $Table = ret_chr($Table) ? $Table : "SELECT ". $Table;
- $where = ret_chr($where) ? $where : " Where ". $where;
- $ORDER = ret_chr($ORDER) ? $ORDER : " ORDER BY " . $ORDER;
- $LIMIT = ret_chr($LIMIT) ? $LIMIT : "LIMIT " . $LIMIT;
- $_sql['str'] = $Table . $where . $ORDER . $LIMIT;
- $_sql['id'] = DB::query($_sql['str']);
- }
- function ret_sql()//取回sql语句
- {
- global $_sql;
- return $_sql['str'];
- }
- function sql_fetch()//执行查询并,返回一行数据
- {
- global $_sql;
- return DB::fetch($_sql['id']);//取查询结果
- }
- function sql_rows()//执行查询并,返回影响数据
- {
- global $_sql;
- while($re=DB::fetch($_sql['id']))$ret[]=$re;
- return $ret;
- }
- function sql_num()//取执行查询所影响的记录行数
- {
- global $_sql;
- return DB::num_rows($_sql['id']);
- }
- }
复制代码
|