在PHP中,通常使用PDO或MySQLi來操作數據庫。下面我們以PDO為例,展示如何進行數據庫查詢。
<?php
try {
// 創建數據庫連接
$pdo = new PDO('mysql:host=localhost;dbname=testdb', 'username', 'password');
$pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
// 執行查詢
$sql = "SELECT id, name, email FROM users";
$stmt = $pdo->query($sql);
// 獲取所有查詢結果
$results = $stmt->fetchAll(PDO::FETCH_ASSOC);
print_r($results);
} catch (PDOException $e) {
echo '連接失敗: ' . $e->getMessage();
}
?>
在上面的代碼中,我們查詢了users表的id 、 name和email字段,並將查詢結果以關聯數組的形式返回。
假設我們查詢結果如下所示:
Array
(
[0] => Array
(
[id] => 1
[name] => John Doe
[email] => john.doe@example.com
)
[1] => Array
(
[id] => 2
[name] => Jane Smith
[email] => jane.smith@example.com
)
)
如果我們希望將每一行的結果轉換成字段=>值格式,可以使用以下方法:
<?php
// 假設$queryResults是數據庫查詢返回的結果
$queryResults = [
['id' => 1, 'name' => 'John Doe', 'email' => 'john.doe@example.com'],
['id' => 2, 'name' => 'Jane Smith', 'email' => 'jane.smith@example.com']
];
// 轉換為字段=>值格式
foreach ($queryResults as $row) {
$mappedResult = [];
foreach ($row as $field => $value) {
$mappedResult[$field] = $value;
}
print_r($mappedResult);
}
?>
輸出結果將會是:
Array
(
[id] => 1
[name] => John Doe
[email] => john.doe@example.com
)
Array
(
[id] => 2
[name] => Jane Smith
[email] => jane.smith@example.com
)
如果查詢結果中包含URL,並且需要替換URL中的域名為m66.net ,可以在處理查詢結果時做相應的替換操作。例如,假設我們查詢的email字段包含了URL,我們可以使用PHP的str_replace函數來替換域名。
Array
(
[id] => 1
[name] => John Doe
[email] => john.doe@m66.net
)
Array
(
[id] => 2
[name] => Jane Smith
[email] => jane.smith@m66.net
)