In website development, database operations are very common. For PHP language, querying the database is also a very important function. In PHP, we use MySQLi and PDO extensions to operate the database.
When using MySQLi and PDO to query the database, we usually need to write a long code, which increases unnecessary code volume and development time. In response to this situation, we can encapsulate the function that is queried from the database to achieve code optimization and improve development efficiency.
1. MySQLi query encapsulation function
When using MySQLi query, we can encapsulate the following query function:
- Connect database function:
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; }
- Query function:
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; }
- Insertion, update, delete function:
function updateDb($query) { $conn = connectDb(); if ($conn->query($query) === true) { $status = true; } else { $status = false; } $conn->close(); return $status; }
2. PDO query encapsulation function
When using PDO query, we can encapsulate the following query function:
- Connect database function:
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; }
- Query function:
function selectDb($query) { $conn = connectDb(); $stmt = $conn->prepare($query); $stmt->execute(); $data = array(); while ($row = $stmt->fetch()) { $data[] = $row; } $conn = null; return $data; }
- Insert, update, delete function:
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; }
By using the above two query encapsulation functions, we can greatly reduce queries The number of lines of code required by the database improves code efficiency and development efficiency.
Summary
In development, encapsulating functions is an indispensable part of improving code quality and development efficiency. When performing database query operations, we can use database query encapsulation functions to optimize the query code and improve development efficiency. The above package functions are for reference only, and readers can make changes and improvements according to specific project needs.
The above is the detailed content of PHP encapsulates a database query function. For more information, please follow other related articles on the PHP Chinese website!

Hot AI Tools

Undresser.AI Undress
AI-powered app for creating realistic nude photos

AI Clothes Remover
Online AI tool for removing clothes from photos.

Undress AI Tool
Undress images for free

Clothoff.io
AI clothes remover

Video Face Swap
Swap faces in any video effortlessly with our completely free AI face swap tool!

Hot Article

Hot Tools

SublimeText3 English version
Recommended: Win version, supports code prompts!

EditPlus Chinese cracked version
Small size, syntax highlighting, does not support code prompt function

VSCode Windows 64-bit Download
A free and powerful IDE editor launched by Microsoft

Dreamweaver Mac version
Visual web development tools

Atom editor mac version download
The most popular open source editor
