PHP mysqli扩展库与mysql用法对比
2019/10/10/17:34:45 阅读:1946 来源:谷歌SEO算法 标签:
SEO培训
本文章来给各位同学介绍在php中的两种数据库操作对比,我们常用的是mysql但php学可以支持mysqli,下面我来给大家介绍他们两的一些用法与比较.
1、在PHP中 使用mysqli扩展库对mysql 的dql操作,代码如下:
- <?php
- header("Content-type:text/html;charset=utf-8");
- //mysqli操作mysql数据库(面向对象方式)
- //1、创建MySQLi对象
- $mysqli=newMySQLi("localhost","root","root","test");
- if($mysqli->connect_error){
- die("连接失败".$mysqli->connect_error);
- }
- //2、操作数据库(发送sql)
- $sql="select*fromuser1";
- //3、处理结果
- $res=$mysqli->query($sql);
- //var_dump($res);
- //fetch_assocfetch_arrayfetch_object
- while($row=$res->fetch_row()){
- var_dump($row);
- /*foreach($rowas$val){
- echo'--'.$val;
- }
- echo'<br/>';*/
- }
- //4、关闭资源
- $res->free();
- $mysqli->close();
- ?>
下面是面向过程的,代码如下:
- <?php
- header("Content-type:text/html;charset=utf-8");
- $mysqli=mysqli_connect("localhost","root","root","test");
- if(!$mysqli){
- die("连接失败".mysqli_connect_error());
- }
- $sql="select*fromuser1";
- $res=mysqli_query($mysqli,$sql);
- //var_dump($res);
- while($row=mysqli_fetch_row($res)){
- foreach($rowas$val){
- echo'-'.$val;
- }
- echo'<br/>';
- }
- //释放内存
- mysqli_free_result($res);
- mysqli_close($mysqli);
- ?>
2、在PHP中 使用mysqli扩展库对mysql 的dml操作,代码如下:
- <?php
- //使用mysqli扩展库对mysql的crud操作
- header("Content-type:text/html;charset=utf-8");
- $mysqli=newMySQLi("localhost","root","root","test");
- if($mysqli->connect_error){
- die("连接失败".$mysql->connect_error);
- }
- //增加一条记录
- //$sql="insertintouser1(name,password,email,age)values('lucy',md5('lucy'),'lucy@163.com',17)";
- //删除一条记录
- //$sql="deletefromuser1whereid=80";
- //更新一条记录
- $sql="updateuser1setage=20whereid=7";
- $res=$mysqli->query($sql);
- if(!$res){
- echo"操作失败".$mysqli->error;
- }else{
- if($mysqli->affected_rows>0){
- echo"成功";
- }else{
- echo"没有行受影响";
- }
- }
- //关闭资源
- $mysqli->close();
- ?>
3、进行封装,代码如下:
- <?php
- classSqlHelper{
- private$mysqli;
- //这里先写死,以后写死的东西用一个文件来配置
- privatestatic$host="localhost";
- privatestatic$user="root";
- privatestatic$pwd="root";
- privatestatic$db="test";
- publicfunction__construct(){
- $this->mysqli=newMySQLi(self::$host,self::$user,self::$pwd,self::$db);
- if($this->mysqli->connect_error){
- die("连接失败".$this->mysqli->connect_error);
- }
- //设置字符集
- $this->mysqli->query("setnamesutf8");
- }
- //dqloperate
- functionexecute_dql($sql){
- $res=$this->mysqli->query($sql)ordie($this->mysqli->error);
- return$res;
- }
- //dmloperate
- functionexecute_dml($sql){
- $res=$this->mysqli->query($sql)ordie($this->mysqli->error);
- //phpfensi.com
- if(!$res){
- return0;//失败
- }else{
- if($this->mysqli->affected_rows>0){
- return1;//成功
- }else{
- return2;//没有行到影响
- }
- }
- }
- }
- ?>
热门评论