gpt4 book ai didi

php - PHP函数中的MySQL查询

转载 作者:行者123 更新时间:2023-11-29 08:08:51 25 4
gpt4 key购买 nike

我正在尝试使用函数从数据库获取某些数据。例如,我想获取 ID 为 1 的用户的信息。

try {
$connection = new PDO("mysql:host=localhost;dbname=database", "root", "password");
}
catch (PDOException $e) {
die("Error: " . $e->getMessage());
}

$connection->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);

function getUser($id) {
global $connection;
$query = $connection->prepare("SELECT * FROM accounts WHERE ID = '$id'");
$query->execute();

while($row = $query->fetch()) {
echo $row['playername'];
$user[] = $row;
}
}

然后在我的index.php中。

include 'inc/db.php';

getUser("1");
foreach($user AS $user) {
echo $user['ID'];
}

第一个 echo 有效,我显示了用户名,但 foreach 没有回显任何内容。我尝试 var_dump($user); 但最终得到 NULL

最佳答案

您需要:

function getUser(...) {
...
$user = array();
while(...) {
$user[] = $row;
}
return $user;
}

然后在你的主代码中:

$users = getUser(1);
foreach($users as $user) { .... }

现在您正在定义局部变量,然后不返回它们,因此当方法退出时它们会丢失。然后无论如何都不捕获任何可能的返回值,使您的代码基本上毫无意义。

关于php - PHP函数中的MySQL查询,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22099586/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com