在Ubuntu系统中,PHP可以通过多种方式连接到数据库。以下是一些常见的数据库及其连接方法:
1. MySQL/MariaDB
使用mysqli扩展
connect_error) { die("连接失败: " . $conn->connect_error); } echo "连接成功"; // 执行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"]. "
"; } } else { echo "0 结果"; } $conn->close(); ?>
使用PDO扩展
setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); echo "连接成功"; // 执行SQL查询 $stmt = $conn->query("SELECT id, name FROM users"); while ($row = $stmt->fetch(PDO::FETCH_ASSOC)) { echo "id: " . $row["id"]. " - Name: " . $row["name"]. "
"; } } catch(PDOException $e) { echo "连接失败: " . $e->getMessage(); } $conn = null; ?>
2. PostgreSQL
使用mysqli扩展
connect_error) { die("连接失败: " . $conn->connect_error); } echo "连接成功"; // 执行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"]. "
"; } } else { echo "0 结果"; } $conn->close(); ?>
使用PDO扩展
setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); echo "连接成功"; // 执行SQL查询 $stmt = $conn->query("SELECT id, name FROM users"); while ($row = $stmt->fetch(PDO::FETCH_ASSOC)) { echo "id: " . $row["id"]. " - Name: " . $row["name"]. "
"; } } catch(PDOException $e) { echo "连接失败: " . $e->getMessage(); } $conn = null; ?>
3. SQLite
使用SQLite3扩展
query("SELECT id, name FROM users"); if ($result) { while ($row = $result->fetchArray(SQLITE3_ASSOC)) { echo "id: " . $row["id"]. " - Name: " . $row["name"]. "
"; } } else { echo "查询失败"; } $conn->close(); ?>
安装扩展
确保你已经安装了所需的PHP扩展。例如,对于MySQL/MariaDB,你可以使用以下命令安装mysqli和PDO扩展:
sudo apt-get update sudo apt-get install php-mysql php-pdo
对于PostgreSQL,你可以使用以下命令安装pdo_pgsql扩展:
sudo apt-get update sudo apt-get install php-pgsql
配置PHP
确保你的php.ini
文件中启用了所需的扩展。例如,对于MySQL/MariaDB,确保以下行没有被注释掉:
extension=mysqli extension=pdo_mysql
对于PostgreSQL,确保以下行没有被注释掉:
extension=pdo_pgsql
重启你的Web服务器以应用更改:
sudo systemctl restart apache2 # 或者 sudo systemctl restart nginx
通过以上步骤,你应该能够在Ubuntu系统中使用PHP连接到数据库。