ubuntu

Ubuntu PHP如何与数据库连接

小樊
40
2025-05-11 22:11:55
栏目: 编程语言

在Ubuntu上,PHP可以通过多种方式连接到数据库。以下是一些常见的数据库及其连接方法:

  1. MySQL/MariaDB:

要使用PHP连接到MySQL或MariaDB数据库,你可以使用mysqli扩展或PDO(PHP Data Objects)扩展。

使用mysqli扩展的示例代码:

<?php
$servername = "localhost";
$username = "your_username";
$password = "your_password";
$dbname = "your_database";

// 创建连接
$conn = new mysqli($servername, $username, $password, $dbname);

// 检查连接
if ($conn->connect_error) {
    die("连接失败: " . $conn->connect_error);
}
echo "连接成功";
$conn->close();
?>

使用PDO扩展的示例代码:

<?php
$servername = "localhost";
$username = "your_username";
$password = "your_password";
$dbname = "your_database";

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();
}
$conn = null;
?>
  1. PostgreSQL:

要使用PHP连接到PostgreSQL数据库,你可以使用pgsql扩展或PDO扩展。

使用pgsql扩展的示例代码:

<?php
$servername = "localhost";
$username = "your_username";
$password = "your_password";
$dbname = "your_database";

// 创建连接
$conn = pg_connect("host=$servername dbname=$dbname user=$username password=$password");

// 检查连接
if (!$conn) {
    echo "连接失败";
    exit;
}
echo "连接成功";
pg_close($conn);
?>

使用PDO扩展的示例代码:

<?php
$servername = "localhost";
$username = "your_username";
$password = "your_password";
$dbname = "your_database";

try {
    $conn = new PDO("pgsql:host=$servername;dbname=$dbname", $username, $password);
    // 设置 PDO 错误模式为异常
    $conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
    echo "连接成功";
} catch(PDOException $e) {
    echo "连接失败: " . $e->getMessage();
}
$conn = null;
?>
  1. SQLite:

要使用PHP连接到SQLite数据库,你可以使用SQLite3扩展。

示例代码:

<?php
$dbname = "your_database.sqlite";

// 创建连接
$conn = new SQLite3($dbname);

// 检查连接
if (!$conn) {
    echo "连接失败";
} else {
    echo "连接成功";
}
$conn->close();
?>

请确保已安装并启用了相应的PHP扩展。你可以使用phpenmod命令启用扩展,例如:

sudo phpenmod mysqli
sudo phpenmod pdo_mysql
sudo phpenmod pgsql
sudo phpenmod sqlite3

然后重启Apache或PHP-FPM服务使更改生效:

sudo systemctl restart apache2
# 或
sudo systemctl restart php-fpm

0
看了该问题的人还看了