解析在PHP中使用mysqli擴充庫對mysql的操作

來源:互聯網
上載者:User

1、在PHP中 使用mysqli擴充庫對mysql 的dql操作
複製代碼 代碼如下:<?php
    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 '<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 *from user1";
    $res=mysqli_query($mysqli,$sql);
    //var_dump($res);
    while($row=mysqli_fetch_row($res)){

        foreach ($row as $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 = 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;//沒有行到影響
                }
            }
        }
    }
?>

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.