MySQL和PHP是web開發(fā)中最常用的數(shù)據(jù)庫(kù)和編程語(yǔ)言。MySQL作為一個(gè)關(guān)系型數(shù)據(jù)庫(kù)管理系統(tǒng),能夠存儲(chǔ)和處理大量的數(shù)據(jù),PHP則能夠方便地將這些數(shù)據(jù)取出并輸出到瀏覽器中。在本篇文章中,我將介紹如何使用MySQL輸出PHP。
PHP中輸出MySQL數(shù)據(jù)的方法主要有兩種:使用mysqli和PDO。我將先介紹mysqli。
使用mysqli
我們可以使用mysqli_real_connect()函數(shù)連接數(shù)據(jù)庫(kù),該函數(shù)有四個(gè)輸入?yún)?shù),分別是:
$mysqli = mysqli_real_connect($host, $user, $password, $database);
其中$host指MySQL數(shù)據(jù)庫(kù)的位置,通常為localhost;$user和$password是連接數(shù)據(jù)庫(kù)所需的用戶名和密碼;$database是要連接的數(shù)據(jù)庫(kù)名稱。
連接成功之后,我們就可以使用mysqli_query()函數(shù)執(zhí)行SQL語(yǔ)句,并獲取結(jié)果集。例如:
$sql = "SELECT * FROM users";
$result = mysqli_query($mysqli, $sql);
我們可以使用mysqli_fetch_assoc()函數(shù)從結(jié)果集中取出一行數(shù)據(jù),并以關(guān)聯(lián)數(shù)組的形式返回。例如:
while ($row = mysqli_fetch_assoc($result)) {
echo "
姓名:" . $row['name'] . ",郵箱:" . $row['email'] . "
"; } 在上述代碼中,我們使用while循環(huán)遍歷所有行,使用echo輸出HTML內(nèi)容。 現(xiàn)在,我們來(lái)看一下完整的代碼:姓名:" . $row['name'] . ",郵箱:" . $row['email'] . ""; } //關(guān)閉數(shù)據(jù)庫(kù)連接 mysqli_close($mysqli); ?>此代碼將輸出users表中所有用戶的姓名和郵箱。 使用PDO 現(xiàn)在,我們來(lái)看一下另一種輸出MySQL數(shù)據(jù)的方法,即PDO。這是PHP中更加高級(jí)的數(shù)據(jù)庫(kù)訪問(wèn)模塊,支持多種數(shù)據(jù)庫(kù)類型。 首先,我們需要使用PDO的構(gòu)造函數(shù)實(shí)例化一個(gè)PDO對(duì)象,并傳入數(shù)據(jù)庫(kù)連接信息。具體來(lái)講,代碼如下:setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); } catch (PDOException $e) { echo "Connection failed: " . $e->getMessage(); } //執(zhí)行SQL語(yǔ)句 $sql = "SELECT * FROM users"; $stmt = $pdo->prepare($sql); $stmt->execute(); //輸出結(jié)果 while ($row = $stmt->fetch()) { echo "姓名:" . $row['name'] . ",郵箱:" . $row['email'] . "
"; } //關(guān)閉數(shù)據(jù)庫(kù)連接 $pdo = null; ?>在上述代碼中,我們實(shí)例化了PDO對(duì)象,并設(shè)置了一些屬性來(lái)控制錯(cuò)誤報(bào)告和異常處理。我們還使用了PDO的prepare()方法來(lái)準(zhǔn)備SQL語(yǔ)句,并使用execute()方法執(zhí)行它。最后,我們使用fetch()方法迭代結(jié)果集并將其中的數(shù)據(jù)輸出為HTML。 總結(jié) 無(wú)論您使用mysqli還是PDO,都可以方便地將MySQL數(shù)據(jù)庫(kù)中的數(shù)據(jù)取出并輸出到PHP網(wǎng)頁(yè)中。使用mysqli需要使用一些函數(shù)來(lái)連接到數(shù)據(jù)庫(kù)和處理結(jié)果集,而使用PDO則讓這些任務(wù)更加簡(jiǎn)單和直觀。根據(jù)需要選擇適合自己的方法即可。上一篇mysql連不上php