Hey小伙伴们,今天咱们聊聊PHP连接数据库的那些事儿,如果你正打算用PHP来处理一些数据,那么连接数据库绝对是你的必经之路,别担心,我会手把手带你一步步搞定这个技术难题。
我们得知道,PHP连接数据库主要有两种方式:使用PHP原生的函数,或者使用更现代的数据库抽象层PDO(PHP Data Objects),我们就先从PHP原生的函数开始,然后再聊聊PDO。
使用PHP原生函数连接MySQL
假设你已经有一个运行中的MySQL数据库,并且你已经知道数据库的用户名、密码、数据库名称等信息,我们就可以开始编写代码了。
<?php
$servername = "localhost"; // 数据库服务器地址
$username = "your_username"; // 数据库用户名
$password = "your_password"; // 数据库密码
$dbname = "your_dbname"; // 数据库名
// 创建连接
$conn = new mysqli($servername, $username, $password, $dbname);
// 检查连接
if ($conn->connect_error) {
die("连接失败: " . $conn->connect_error);
}
echo "连接成功";这段代码创建了一个名为$conn的mysqli对象,用于与MySQL数据库建立连接,如果连接成功,它会输出“连接成功”,否则会输出错误信息。
执行SQL查询
连接成功后,你就可以执行SQL查询了,你想从数据库中查询一些数据,可以这样做:
$sql = "SELECT id, name FROM users";
$result = $conn->query($sql);
if ($result->num_rows > 0) {
// 输出每行数据
while($row = $result->fetch_assoc()) {
echo "id: " . $row["id"]. " - Name: " . $row["name"]. "<br>";
}
} else {
echo "0 结果";
}
$conn->close();这段代码首先定义了一个SQL查询语句,然后使用$conn->query($sql)来执行这个查询,如果查询成功,它会遍历结果集,输出每一行的数据。
插入、更新和删除数据
除了查询数据,你还可以利用PHP来插入、更新或删除数据库中的数据,这里以插入数据为例:
$sql = "INSERT INTO users (name, email) VALUES ('John', 'john@example.com')";
if ($conn->query($sql) === TRUE) {
echo "新记录插入成功";
} else {
echo "Error: " . $sql . "<br>" . $conn->error;
}
$conn->close();这段代码尝试将一条新记录插入到users表中,如果操作成功,它会输出“新记录插入成功”,否则会输出错误信息。
使用PDO连接数据库
让我们转向PDO,PDO提供了一个数据访问抽象层,这意味着,无论你使用的是哪种数据库(MySQL、PostgreSQL、SQLite等),都可以使用相同的函数来执行操作。
你需要在PHP代码中引入PDO扩展:
<?php
$servername = "localhost";
$username = "your_username";
$password = "your_password";
$dbname = "your_dbname";
try {
$conn = new PDO("mysql:host=$servername;dbname=$dbname", $username, $password);
// 设置 PDO 错误模式为异常
$conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
echo "连接成功";
} catch(PDOException $e) {
echo "连接失败: " . $e->getMessage();
}这段代码尝试使用PDO连接到MySQL数据库,如果连接成功,它会输出“连接成功”,否则会捕获异常并输出错误信息。
使用PDO执行SQL查询
使用PDO执行查询的方式与使用mysqli类似,但语法略有不同:
try {
$stmt = $conn->query("SELECT id, name FROM users");
while($row = $stmt->fetch(PDO::FETCH_ASSOC)) {
echo "id: " . $row['id'] . " - Name: " . $row['name'] . "<br>";
}
} catch(PDOException $e) {
echo "查询失败: " . $e->getMessage();
}
$conn = null; // 关闭连接这段代码使用PDO执行了一个查询,并遍历结果集输出每一行的数据。
小贴士
- 确保你的数据库服务器运行正常,并且你有正确的权限来访问数据库。
- 保护你的数据库免受SQL注入攻击,可以通过使用预处理语句和参数绑定来实现。
- 记得在完成数据库操作后关闭连接,释放资源。
连接数据库是PHP开发中的一项基本技能,无论是使用原生的mysqli还是PDO,都需要你熟练,希望这篇文章能帮助你更好地理解和应用这些技术,如果你有任何问题,或者想要了解更多细节,随时留言讨论哦!


发表评论