zoukankan      html  css  js  c++  java
  • Mysql sql语句自动拼接方法

    <?php
    /*燕十八 公益PHP培训  
    课堂地址:YY频道88354001  
    学习社区:www.zixue.it */
    
    class Mysql{
                //拼接sql语句
            public function autoExecute($data='',$table,$mode = "insert",$where = "where 1 limit 1"){        
                //insert 和 update 语句需要传入数组判断
                if(is_array($data)){
                    //Update语句的拼接
                    if($mode == "update"){
                        $sql="update $table set ";
                        foreach($data as $key=>$val){
                            $sql.=$key ." = "."'$val'".',';
                        }
                        //循环后语句是$sql updata $table set filed1 = value1,filed2=value2,filed3=values3,
                        $sql=substr(trim($sql),0,-1).' '.$where;
                         //先将sql语句的首位空格去掉,然后将后面的','给去掉拼接$where条件
                         return $this->query($sql);
                    }
                        //insert 语句的拼接,默认是insert
                        $sql = $mode . " into ".$table ." ( " . implode(',',array_keys($data));
                        $sql.=" ) value "."('".implode("','",array_values($data))."')";
                        return $this->query($sql);
                
                }else{
                        //delete 语句的拼接
                        //当语句为delete时候,此时$data传入是表名,$table传入的是delete $mode传入是where条件
                        if($table = 'delete'){
                            $sql="delete from ".$data.' '.$mode;
                            $this->query($sql);
                            return $this->affected_rows();                    
                        }else{
                                return false;
                        }
                }
            }
    
            //query方法
            public function query($sql){
                $res = mysql_query($sql);
                return $res;
            }
        }
            //+++++++++++++++自动拼接sql语句使用方法+++++++++++++++++++//
    
            $mysql = new Mysql();
            //insert 语句
            $data=array(
                'username'=>'demo',
                'password'=>'admin'
            );
            $mysql->autoExecute($data,'user表');
    
            //updata 语句
            $where = "where id > 10;";
            $mysql->autoExecute($data,'user表','update',$where);
            
            //delete 语句
            $mysql->autoExecute('user表','delete',$where);
  • 相关阅读:
    Picture
    wolf and rabbit
    十进制转换为二进制(一直不会算的)
    各种排序
    折线分割平面
    字母数
    1001
    Primes
    大数的减法神秘数
    转: Windows Internet WinINet 学习笔记(2)
  • 原文地址:https://www.cnblogs.com/luowen/p/2795706.html
Copyright © 2011-2022 走看看