使用PHP调用Mysql数据库函数封装,对数据库进行增删改查

/**
 * 连接数据库、选择要操作的数据库、设置汉字编码
 * @return resource  $link;
 */
 

 PHP交流群:294088839

 Python交流群:652376983



function connect(){
    $link=mysql_connect(DB_HOST.':'.DB_PORT,DB_USER,DB_PWD) or die("数据库连接失败,错误编码为:".mysql_errno().",错误信息为".mysql_error());
    mysql_select_db(DB_NAME);
    mysql_set_charset(DB_CHARSET);
    return $link;
}


/**
 * 查找一条记录
 * @param $sql
 * @return array  $arr  返回一维数组
 */
function fetchOne($sql){
    if($res=mysql_query($sql)){
        if(mysql_num_rows($res)>0){
            $arr=mysql_fetch_assoc($res);
            return $arr;
        }else{
            return false;
        }
    }else{
        return false;
    }
}




/**
 * 查找多条记录
 * @return array  $arr  返回二维数组
 *
 */


function fetchAll($sql){
    $arr=array();
    if($res=mysql_query($sql)){
        if(mysql_num_rows($res)>0){
            while($row=mysql_fetch_assoc($res)){
                $arr[]=$row;
            };
            return $arr;
        }else{
            return false;
        }
    }else{
        return false;
    }
}


/**
 * 更新操作
 * @param string $table 要更新的表的表名
 * @param array $arr    要更新的字段和值所组成的数组
 * @param str  $where    更新条件
 * @return int  $rows 返回受影响的行数
 *
 */
//update 表名 set 字段名='值',字段名='值',字段名='值' where ......
function update($table,$arr,$where=null){
    $str='';
    foreach($arr as $key=>$val){
        $str.=$key.'="'.$val.'",';
    }
    //更新的字段和值
    $str=substr($str,0,-1);
    //更新的条件
    $where=$where?'where '.$where:'';
    //更新的SQL语句
    $sql="update $table set $str $where";
    //执行更新
    if(mysql_query($sql)){
        if($rows=mysql_affected_rows()>0){
            return $rows;
        }else{
            return false;
        }
    }else{
        return false;
    }
}


/**
 * 删除操作
 * @param string $table 要删除的表的表名
 * @param str  $where   删除条件
 * @return int  $rows 返回受影响的行数
 */
//delete from 表名 where .....


function delete($table,$where){
    $where=$where?'where '.$where:'';
    $sql="delete from $table $where";
    if(mysql_query($sql)){
        if($rows=mysql_affected_rows()>0){
            return $rows;
        }else{
            return false;
        }
    }else{
        return false;
    }
}


/**
 * 插入操作
 * @param string $table 要插入的表的表名
 * @param array $arr  要插入的数据所组成数组
 * @return int  $id 返回最后一条记录的主键ID
 */
//insert into 表名(字段1,字段2,....) values('值1','值2',....)


function insert($table,$arr){
    //字段1,字段2,....
    $keys=join(',',array_keys($arr));
    //'值1','值2',....
    $values='"'.join('","',array_values($arr)).'"';
    //插入的SQL语句
    $sql="insert into {$table}({$keys}) values({$values})";
    //执行sql,返回最后一条记录的主键ID
    if(mysql_query($sql)){
        if(mysql_affected_rows()>0){
             return mysql_insert_id();
        }else{
            return false;
        }
    }else{
        return false;
    }
}

你可能感兴趣的:(PHP)