在網站開發中,對於資料庫的操作是非常常見的。而對於PHP語言,查詢資料庫也是一個非常重要的功能。在PHP中,我們通過MySQLi和PDO兩種擴充套件去運算元據庫。
而在使用MySQLi和PDO查詢資料庫時,我們通常需要寫很長的程式碼,這樣增加了不必要的程式碼量和開發時間。針對這種情況,我們可以封裝從資料庫查詢的函數,以達到程式碼優化和提高開發效率的目的。
一、MySQLi查詢封裝函數
使用MySQLi查詢時,我們可以封裝以下查詢函數:
function connectDb() {
$servername = "yourservername";
$username = "yourusername";
$password = "yourpassword";
$dbname = "yourdbname";
// 建立連線
$conn = new mysqli($servername, $username, $password, $dbname);
// 檢測連線
if ($conn->connect_error) {
die("連線失敗: " . $conn->connect_error);
}
return $conn;
}
登入後複製
function selectDb($query) {
$conn = connectDb();
$result = $conn->query($query);
if ($result === false) {
die("查詢失敗: " . $conn->error);
}
$data = array();
while ($row = $result->fetch_assoc()) {
$data[] = $row;
}
$conn->close();
return $data;
}
登入後複製
function updateDb($query) {
$conn = connectDb();
if ($conn->query($query) === true) {
$status = true;
} else {
$status = false;
}
$conn->close();
return $status;
}
登入後複製
二、PDO查詢封裝函數
使用PDO查詢時,我們可以封裝以下查詢函數:
function connectDb() {
$host = "yourhost";
$username = "yourusername";
$password = "yourpassword";
$dbname = "yourdbname";
try {
$conn = new PDO("mysql:host=$host;dbname=$dbname;charset=utf8", $username, $password);
// 設定 PDO 錯誤模式為異常
$conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
} catch(PDOException $e) {
echo "連線失敗: " . $e->getMessage();
}
return $conn;
}
登入後複製
function selectDb($query) {
$conn = connectDb();
$stmt = $conn->prepare($query);
$stmt->execute();
$data = array();
while ($row = $stmt->fetch()) {
$data[] = $row;
}
$conn = null;
return $data;
}
登入後複製
function updateDb($query) {
$conn = connectDb();
$status = true;
try {
$conn->beginTransaction();
$stmt = $conn->prepare($query);
$stmt->execute();
$conn->commit();
} catch(PDOException $e) {
$conn->rollBack();
$status = false;
}
$conn = null;
return $status;
}
登入後複製
通過對以上兩種查詢封裝函數的使用,我們可以大大減少查詢資料庫所需要的程式碼行數,提升程式碼效率和開發效率。
總結
開發中,封裝函數是提高程式碼品質和開發效率不可或缺的一部分。而在進行資料庫查詢操作時,我們可以通過資料庫查詢封裝函數,優化查詢程式碼,提升開發效率。以上封裝函數僅供參考,讀者根據具體專案需求可進行更改和完善。
以上就是php封裝一個資料庫查詢的函數的詳細內容,更多請關注TW511.COM其它相關文章!