欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  后端开发

php mysqli扩展库操作mysql的例子

程序员文章站 2022-05-12 08:18:04
...
本文分享下php使用mysqli扩展操作mysql数据库的几个例子,挺不错的,有需要的朋友可以参考下,一定会有所帮助的。

1、mysqli扩展库操作mysql的dql

connect_error){
        die("连接失败".$mysqli->connect_error);
    }

    //2、操作数据库(发送sql)
    $sql="select *from user1";

    //3、处理结果
    $res =$mysqli->query($sql);
    //var_dump($res);
    //fetch_assoc \fetch_array \fetch_object
    while($row=$res->fetch_row()){

        var_dump($row);

/*        foreach($row as $val){
            echo '--'.$val;
        }
        echo '
';*/ } //4、关闭资源 $res->free(); $mysqli->close(); ?>

面向过程的例子:

';
    }

    //释放内存
    mysqli_free_result($res);
    mysqli_close($mysqli);
?>

2、mysqli扩展库对mysql的dml操作

connect_error){
        die("连接失败".$mysql->connect_error);
    }

    //增加一条记录
    //$sql="insert into user1 (name,password,email,age) values ('lucy',md5('lucy'),'lucy@163.com',17)";
    //删除一条记录
    //$sql="delete from user1 where id =80";
    //更新一条记录
    $sql="update user1 set age=20 where id=7";

    $res=$mysqli->query($sql);
    if(!$res){
        echo "操作失败".$mysqli->error;
    }else{
        if($mysqli->affected_rows>0){
            echo "成功";
        }else{
            echo "没有行受影响";    
        }
    }

    //关闭资源
    $mysqli->close();
?>

3、进行封装


class SqlHelper{        
        private $mysqli;
        //这里先写死,以后写死的东西用一个文件来配置
        private static $host="localhost";
        private static $user="root";
        private static $pwd="root";
        private static $db="test";

        public function __construct(){
            
            $this->mysqli=new MySQLi(self::$host,self::$user,self::$pwd,self::$db);
            if($this->mysqli->connect_error){
                die("连接失败".$this->mysqli->connect_error);
            }
            //设置字符集
            $this->mysqli->query("set names utf8");
        }

        //dql operate
        function execute_dql($sql){

            $res =$this->mysqli->query($sql) or die($this->mysqli->error);
            return $res;        
        }

        //dml operate
        function execute_dml($sql){

            $res =$this->mysqli->query($sql) or die($this->mysqli->error);
            
            if(!$res){
                return 0;//失败
            }else{
                if($this->mysqli->affected_rows>0){
                    return 1;//成功
                }else{
                    return 2;//没有行到影响
                }
            }
        }
    }
?>