最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

PHP連接MySql數(shù)據(jù)庫方法簡(jiǎn)化版

 更新時(shí)間:2022年07月25日 16:04:40   作者:清風(fēng)亦思雨  
MySQL是一個(gè)關(guān)系型數(shù)據(jù)庫管理系統(tǒng),由瑞典MySQL?AB?公司開發(fā),屬于?Oracle?旗下產(chǎn)品。MySQL?是最流行的關(guān)系型數(shù)據(jù)庫管理系統(tǒng)之一,這篇文章主要介紹了PHP連接mysql數(shù)據(jù)庫,數(shù)據(jù)庫連接靜態(tài)工具類,簡(jiǎn)化連接

寫這個(gè)PHP連接數(shù)據(jù)庫靜態(tài)工具類之前,是由于當(dāng)時(shí)學(xué)習(xí)C#的asp.net。老師編寫了一個(gè)連接數(shù)據(jù)庫的靜態(tài)工具類,發(fā)現(xiàn)使用此類,每次只需要寫sql語句,而不再需要進(jìn)行連接創(chuàng)建,關(guān)閉等等。方便其他操作,節(jié)約時(shí)間。

轉(zhuǎn)眼一年半,如今php課程需要寫一個(gè)小項(xiàng)目,于是第一件事就是編寫一個(gè)連接數(shù)據(jù)庫的靜態(tài)工具類,php和asp.net的語法極其的相似。

在使用此類之前,可以普及兩點(diǎn)知識(shí):

PHP中使用靜態(tài)的調(diào)用,不同于其他編程語言,它的靜態(tài)調(diào)用為:

類名::$靜態(tài)屬性

類名::靜態(tài)方法()

而Java、C#等編程語言都是通過:

類名.靜態(tài)屬性

類名.靜態(tài)方法()

靜態(tài)方法的優(yōu)點(diǎn):

(1)在代碼的任何地方都可以用,不需要實(shí)例對(duì)象就能訪問靜態(tài)屬性或方法;

(2)類的每個(gè)實(shí)例都可以訪問類中定義的靜態(tài)屬性,可以利用靜態(tài)屬性來設(shè)置值,該值可以被類的所有對(duì)象使用,方便控制數(shù)據(jù)庫參數(shù),連接對(duì)象的創(chuàng)建與關(guān)閉;

DBHelper.php 靜態(tài)工具類

<?php
    /**該P(yáng)HP文件為了連接數(shù)據(jù)庫方便
     * 為連接數(shù)據(jù)庫提供靜態(tài)方法
     */
    header("Content-type: text/html;charset=utf-8");
    class DBHelper {
        static $sqlName = "127.0.0.1";
        static $userName = "root";
        static $passWord = "123456";
        static $dbName = "test";
        //連接數(shù)據(jù)庫
        static function dbConn() {
            $conn = mysqli_connect(self::$sqlName, self::$userName,
                    self::$passWord, self::$dbName);
            if ($conn == false) {
                echo "<script>alert('數(shù)據(jù)庫連接失敗')</script>";
            }
            //設(shè)置連接對(duì)象編碼
            mysqli_query($conn, "set names utf8");
            return $conn;
        }
        //查詢數(shù)據(jù)
        //param1:查詢類型,param2:執(zhí)行語句
        //param1參數(shù)類型:  0單個(gè)數(shù)組,1多個(gè)數(shù)組。
        static function select($state, $mysql):array {
            $conn = self::dbConn(); //獲得連接對(duì)象
            $sql = $mysql;
            $query = mysqli_query($conn, $sql);
            if ($state == 1) {
                $result = mysqli_fetch_all($query,MYSQLI_ASSOC);
            } else {
                $result = mysqli_fetch_assoc($query);
            }
            // 釋放結(jié)果集
            mysqli_free_result($query);
            self::dbClose($conn); //釋放連接對(duì)象
            if ($result == null) { //如果結(jié)果為空,則返回空數(shù)據(jù)集
                return array();
            }
            return $result;
        }
        //增加、刪除、修改數(shù)據(jù)
        //param1:執(zhí)行類型;param2:執(zhí)行語句
        //param1參數(shù)類型:1增加,2修改,3刪除。
        static function sqlHelper($state, $mysql):int {
            $conn = self::dbConn(); //獲得連接對(duì)象
            $sql = $mysql;
            $query = mysqli_query($conn, $sql);
            //判斷狀態(tài),做出相應(yīng)提示。
            //$sts = $state==3?"刪除":($state==2?"修改":($state==1?"增加":$state));
            self::dbClose($conn); //釋放連接對(duì)象
            if ($query){
                return 1;  //有內(nèi)容變化
                //return $sts."成功";
            }
            else{
                return 0;  //無內(nèi)容變化
                //return $sts."失敗";
            }
        }
        //關(guān)閉連接
        static function dbClose($conn) {
            $conn ->Close();
        }
    }
?>

Test.php 用來測(cè)試數(shù)據(jù)

//查詢單個(gè)數(shù)據(jù)
$select = DBHelper ::select(0, "select * from XXX where xx = '$xx'");
//查詢多個(gè)數(shù)據(jù)
$selectAll = DBHelper ::select(1,"select * from XXX");
//添加數(shù)據(jù)
$insert = DBHelper ::sqlHelper(1, "insert into XXX (xx,xx,xx) values ('$xx','$xx','$xx')");
//修改數(shù)據(jù)
$update = DBHelper ::sqlHelper(2, "update XXX set xx = '$xx',xx = '$xx',xx = '$xx', where xx = '$xx'");
//刪除數(shù)據(jù)
$delete = DBHelper ::sqlHelper(3, "delete from XXX where xx = '$xx'");

前兩條測(cè)試數(shù)據(jù),都是查詢,設(shè)置的返回參數(shù)分別為mysqli_fetch_assoc、mysqli_fetch_all,這兩個(gè)參數(shù)返回的都是array,只不過里面有單個(gè)數(shù)據(jù)或多個(gè)數(shù)據(jù)。

mysqli_fetch_assoc:

mysqli_fetch_all:

后三條對(duì)應(yīng)的是增刪改,返回的int類型參數(shù),可以判斷執(zhí)行是否成功。

到此這篇關(guān)于PHP連接MySql數(shù)據(jù)庫方法簡(jiǎn)化版的文章就介紹到這了,更多相關(guān)PHP連接MySql內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

  • Discuz開啟Gzip壓縮多種方法匯總

    Discuz開啟Gzip壓縮多種方法匯總

    GZip可對(duì)多種類型的文件進(jìn)行壓縮,對(duì)于CSS、JS、HTML文件具有極高的壓縮率,尤其對(duì)使用了較多JS特效的網(wǎng)站,開啟GZip后壓縮比高達(dá)70%。
    2023-05-05
  • 用php將任何格式視頻轉(zhuǎn)為flv的代碼

    用php將任何格式視頻轉(zhuǎn)為flv的代碼

    用php將任何格式視頻轉(zhuǎn)為flv的實(shí)現(xiàn)代碼,大家可以參考下。
    2009-09-09
  • PHP實(shí)現(xiàn)的curl批量請(qǐng)求操作示例

    PHP實(shí)現(xiàn)的curl批量請(qǐng)求操作示例

    這篇文章主要介紹了PHP實(shí)現(xiàn)的curl批量請(qǐng)求操作,結(jié)合實(shí)例形式分析了php使用curl進(jìn)行批量請(qǐng)求處理的具體批量創(chuàng)建curl句柄、批量執(zhí)行句柄、防卡死等相關(guān)操作技巧,需要的朋友可以參考下
    2018-06-06
  • PHP常用的三種設(shè)計(jì)模式

    PHP常用的三種設(shè)計(jì)模式

    本文為大家介紹常用的三種php設(shè)計(jì)模式:?jiǎn)卫J?、工廠模式、觀察者模式,具有很好的參考價(jià)值,下面跟著小編一起來看下吧
    2017-02-02
  • php中__destruct與register_shutdown_function執(zhí)行的先后順序問題

    php中__destruct與register_shutdown_function執(zhí)行的先后順序問題

    這篇文章主要介紹了php中__destruct與register_shutdown_function執(zhí)行的先后順序問題,需要的朋友可以參考下
    2014-10-10
  • redis+php實(shí)現(xiàn)微博(二)發(fā)布與關(guān)注功能詳解

    redis+php實(shí)現(xiàn)微博(二)發(fā)布與關(guān)注功能詳解

    這篇文章主要介紹了redis+php實(shí)現(xiàn)微博發(fā)布與關(guān)注功能,結(jié)合實(shí)例形式分析了php結(jié)合redis實(shí)現(xiàn)微博的發(fā)布及關(guān)注相關(guān)操作技巧,需要的朋友可以參考下
    2019-09-09
  • mysql 中InnoDB和MyISAM的區(qū)別分析小結(jié)

    mysql 中InnoDB和MyISAM的區(qū)別分析小結(jié)

    InnoDB和MyISAM是在使用MySQL最常用的兩個(gè)表類型,各有優(yōu)缺點(diǎn),視具體應(yīng)用而定?;镜牟顒e為:MyISAM類型不支持事務(wù)處理等高級(jí)處理,而InnoDB類型支持。MyISAM類型的表強(qiáng)調(diào)的是性能,其執(zhí)行數(shù)度比InnoDB類型更快,但是不提供事務(wù)支持,而InnoDB提供事務(wù)支持已經(jīng)外部鍵等高級(jí)數(shù)據(jù)庫功能。
    2008-04-04
  • MySQL數(shù)據(jù)庫轉(zhuǎn)移,access,sql server 轉(zhuǎn) MySQL 的圖文教程

    MySQL數(shù)據(jù)庫轉(zhuǎn)移,access,sql server 轉(zhuǎn) MySQL 的圖文教程

    MySQL數(shù)據(jù)庫轉(zhuǎn)移,access,sql server 轉(zhuǎn) MySQL 的圖文教程...
    2007-09-09
  • Smarty模板學(xué)習(xí)筆記之Smarty簡(jiǎn)介

    Smarty模板學(xué)習(xí)筆記之Smarty簡(jiǎn)介

    Smarty是一個(gè)使用PHP寫出來的模板PHP模板引擎,是目前業(yè)界最著名的PHP模板引擎之一。它分離了邏輯代碼和外在的內(nèi)容,提供了一種易于管理和使用的方法,用來將原本與HTML代碼混雜在一起PHP代碼邏輯分離。
    2014-05-05
  • 最新評(píng)論

    上蔡县| 焦作市| 揭西县| 会宁县| 瑞丽市| 淮滨县| 湟源县| 梅河口市| 石河子市| 桃园市| 定襄县| 萍乡市| 瑞丽市| 天气| 永和县| 汶川县| 榆林市| 乌兰察布市| 上栗县| 青州市| 探索| 蕉岭县| 老河口市| 陕西省| 鄯善县| 四会市| 河北区| 凤凰县| 安图县| 澎湖县| 宁海县| 合江县| 白城市| 改则县| 山阴县| 台州市| 钟祥市| 融水| 昆山市| 虞城县| 崇阳县|