phpmysqli面向對象,mysqli面向對象和面向過程

本文目錄一覽:

mysqli面向對象和面向過程有什麼區別

可以這麼講。因為很多PHP程序員不習慣面向對象編程,所以mysqli類庫提供了這個方法供他們使用。這也是方便一些使用mysql擴展的用戶快速遷移到mysqli。實際上,mysqli_query()內部是對面向對象調用過程的封裝。

我個人覺得還是面向對象的寫法比較簡潔,而mysqli_query()需要多傳遞一個參數。

請問PHP怎樣用面向對象方式連接MySQL資料庫?

?php

$servername = “localhost”; //你的連接地址,可以是ip

$username   = “username”; //你的用戶名

$password   = “password”; //你的密碼

$dbname     = “myDB”; //你要連接資料庫的名字

// 創建連接

$conn = new mysqli($servername, $username, $password, $dbname);

// 檢測連接

if ($conn-connect_error) {

    die(“連接失敗: ” . $conn-connect_error);

}

echo “連接成功”;

學習可以參考:

PHP中為什麼mysqli需要實例化,而mysql不需要?

mysqli也不一定需要實例化,之所以你要實例化是因為你是要以面向對象的方式來開發這個程序,但是你要是用面向過程的方式來寫也是可以的,百度裡面有例子你可以看一下

一、面向對象

?php

$mysqli =new mysqli(“localhost”, “my_user”, “my_password”, “world”); //實例化對象

/* check connection */

if (mysqli_connect_errno()) {

printf(“Connect failed: %s\n”, mysqli_connect_error());

exit();

}

printf(“Host information: %s\n”, $mysqli-host_info);

/* close connection */

$mysqli-close();

?

二、面向過程

?php

$link = mysqli_connect(“localhost”, “my_user”, “my_password”, “world”);

/* check connection */

if (!$link) {

printf(“Connect failed: %s\n”, mysqli_connect_error());

exit();

}

printf(“Host information: %s\n”, mysqli_get_host_info($link));

/* close connection */

mysqli_close($link);

?

PHP使用mysqli擴展連接MySQL資料庫

1.面向對象的使用方式

$db

=

new

mysqli(‘localhost’,

‘root’,

‘123456’,

‘dbname’);

如果建立連接時未指定資料庫則選擇使用的資料庫,切換使用的資料庫

$db-select_db(‘dbname’);

$query

=

“SELECT

*

FROM

user

WHERE

uid=4″;

$result

=

$db-query($query);

$result_num

=

$result-num_rows;

$row

=

$result-fetch_assoc();

//返回一個關聯數組,可以通過$row[‘uid’]的方式取得值

$row

=

$result-fetch_row();

//返回一個列舉數組,可以通過$row[0]的方式取得值

$row

=

$result-fetch_array();

//返回一個混合數組,可以通過$row[‘uid’]和$row[0]兩種方式取得值

$row

=

$result-fetch_object();

//返回一個對象,可以通過$row-uid的方式取得值

$result-free();

//釋放結果集

$db-close();

//關閉一個資料庫連接,這不是必要的,因為腳本執行完畢時會自動關閉連接

當進行INSERT、UPDATE、DELETE操作時,使用$db-affected_rows查看影響行數

2.面向過程的使用方式

$db

=

mysqli_connect(‘localhost’,

‘root’,

‘123456’,

‘dbname’);

如果建立連接時未指定資料庫則選擇使用的資料庫,切換使用的資料庫

mysqli_select_db($db,

‘dbname’);

查詢資料庫

$query

=

“SELECT

*

FROM

user

WHERE

uid=4″;

$result

=

mysqli_query($db,

$query);

$result_num

=

mysqli_num_rows($result);

返回一行結果

$row

=

mysqli_fetch_assoc($result);

//返回一個關聯數組,可以通過$row[‘uid’]的方式取得值

$row

=

mysqli_fetch_row($result);

//返回一個列舉數組,可以通過$row[0]的方式取得值

$row

=

mysqli_fetch_array($result);

//返回一個混合數組,可以通過$row[‘uid’]和$row[0]兩種方式取得值

$row

=

mysqli_fetch_object($result);

//返回一個對象,可以通過$row-uid的方式取得值

斷開資料庫連接

mysqli_free_result($result);

//釋放結果集

mysqli_close($db);

//關閉一個資料庫連接,這不是必要的,因為腳本執行完畢時會自動關閉連接

當進行INSERT、UPDATE、DELETE操作時,使用mysqli_affected_rows()查看影響行數

原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/180168.html

(0)
打賞 微信掃一掃 微信掃一掃 支付寶掃一掃 支付寶掃一掃
小藍的頭像小藍
上一篇 2024-11-22 05:11
下一篇 2024-11-22 05:11

相關推薦

  • Java Bean載入過程

    Java Bean載入過程涉及到類載入器、反射機制和Java虛擬機的執行過程。在本文中,將從這三個方面詳細闡述Java Bean載入的過程。 一、類載入器 類載入器是Java虛擬機…

    編程 2025-04-29
  • 面向對象編程、類和對象

    面向對象編程(Object-Oriented Programming, OOP)是一種編程方法,它將現實世界中的事物抽象為對象(Object),對象的屬性和方法被封裝成類(Clas…

    編程 2025-04-29
  • 使用面向對象程序設計方法改寫猜數字遊戲Python程序

    本文將從以下多個方面對猜數字遊戲程序功能要求,使用面向對象程序設計方法改寫該程序Python做詳細的闡述。 一、遊戲規則 1、遊戲開始時,程序隨機生成一個 1 到 100 之間的整…

    編程 2025-04-28
  • 如何使用Python執行Shell命令並獲取執行過程信息

    本文將介紹如何使用Python執行Shell命令並獲取執行過程信息。我們將從以下幾個方面進行闡述: 一、執行Shell命令 Python內置的subprocess模塊可以方便地執行…

    編程 2025-04-28
  • Python調用C代碼過程用法介紹

    本文將從多個方面詳細闡述Python調用C代碼的過程,包括相關的知識點、實例代碼以及注意事項等內容。 一、概述 Python作為一門高級語言,在很多情況下不能滿足開發人員的需求。此…

    編程 2025-04-27
  • Python自動搶購代碼實現過程

    本文將詳細介紹使用Python實現自動搶購的代碼實現過程。 一、安裝selenium庫 Selenium是一個自動化測試框架,可以在瀏覽器中模擬用戶操作,可以用來實現自動搶購。 首…

    編程 2025-04-27
  • JavaSlice——一種基於面向對象語言的輕量級Web框架

    一、簡介 JavaSlice是一種基於面向對象語言的輕量級Web框架。它採用了MVC設計模式,能夠快速開發、構建、測試和部署Web應用程序。JavaSlice基於Java語言開發,…

    編程 2025-04-23
  • 面向對象的四個基本特徵

    一、封裝性 封裝性是指將對象的屬性和方法封裝在一起,對外界隱藏對象的細節,使得對象對使用者來說更加簡單易用和安全可靠。 例如,我們可以創建一個類Car來表示汽車,在類中定義汽車的屬…

    編程 2025-04-23
  • 從多個方面詳細闡述MySQLi

    一、MySQLi是什麼 MySQLi是PHP訪問MySQL資料庫的擴展,與MySQL擴展相比,MySQLi支持更多的功能和更好的性能。 MySQLi是「MySQL improved…

    編程 2025-04-23
  • 詳解Base64加密解密過程

    一、Base64加密解密的簡介 Base64是一種基於64個可列印字元來表示二進位數據的表示方法,主要應用於電子郵件、網頁傳輸、音樂播放器等多媒體文件的傳輸和保存.由於Base64…

    編程 2025-04-22

發表回復

登錄後才能評論