• 技术文章 >后端开发 >php教程

    解析在PHP中使用mysqli扩展库对mysql的操作_php技巧

    2016-05-17 08:57:14原创486
    1、在PHP中 使用mysqli扩展库对mysql 的dql操作
    复制代码 代码如下:

    header("Content-type: text/html;charset=utf-8");
    //mysqli操作mysql数据库(面向对象方式)
    //1、创建MySQLi对象
    $mysqli =new MySQLi("localhost","root","root","test");
    if($mysqli->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();
    ?>

    下面是面向过程的
    复制代码 代码如下:

    header("Content-type: text/html;charset=utf-8");

    $mysqli=mysqli_connect("localhost","root","root","test");
    if(!$mysqli){
    die("连接失败".mysqli_connect_error());
    }
    $sql="select *from user1";
    $res=mysqli_query($mysqli,$sql);
    //var_dump($res);
    while($row=mysqli_fetch_row($res)){

    foreach ($row as $val){

    echo '-'.$val;
    }
    echo '
    ';
    }
    //释放内存
    mysqli_free_result($res);
    mysqli_close($mysqli);
    ?>

    2、在PHP中 使用mysqli扩展库对mysql 的dml操作
    复制代码 代码如下:


    //使用mysqli 扩展库对mysql的crud 操作
    header("Content-type: text/html;charset=utf-8");
    $mysqli = new MySQLi("localhost","root","root","test");
    if($mysqli->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;//没有行到影响
    }
    }
    }
    }
    ?>
    声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。
    专题推荐:PHP mysqli扩展库 mysql
    上一篇:解决FastCGI 进程超过了配置的活动超时时限的问题_php技巧 下一篇:解析array splice的移除数组中指定键的值,返回一个新的数组_php技巧
    PHP编程就业班

    相关文章推荐

    • 面试官:列举几种PHP拓展的实现手段及其性能比较?• GD输出汉字的函数的分析_PHP• javascript - 哪里有可以下载的股票历史数据?• Yii rules常用规则示例_php实例• 日常整理PHP中简单的图形处理(经典)_php实例

    全部评论我要评论

  • 取消发布评论发送
  • 1/1

    PHP中文网