如何解构 mysqli_result 行
How to destructure mysqli_result row
如何从 mysqli_result 中解构一行?
此模式适用于 PDO,但我希望能够将其用于 mysqli。
<?php
$mysqli = new mysqli('', 'pdo', '123', 'pdo');
foreach ($mysqli->query("select uid, name from users") as [$uid, $name])
print("$uid: $name\n");
// PHP Warning: Undefined array key 0 on line 3
// PHP Warning: Undefined array key 1 on line 3
您只能使用关联数组迭代 mysqli_result
。
foreach ($mysqli->query("select uid, name from users") as ['uid' => $uid, 'name' => $name]) {
print "$uid: $name\n";
}
但是,我建议使用 fetch_all()
,它会将所有内容提取到数组中,甚至使用数字键也是如此。
$result = $mysqli->query("select uid, name from users")->fetch_all(MYSQLI_NUM);
foreach ($result as [$uid, $name]) {
print "$uid: $name\n";
}
如何从 mysqli_result 中解构一行? 此模式适用于 PDO,但我希望能够将其用于 mysqli。
<?php
$mysqli = new mysqli('', 'pdo', '123', 'pdo');
foreach ($mysqli->query("select uid, name from users") as [$uid, $name])
print("$uid: $name\n");
// PHP Warning: Undefined array key 0 on line 3
// PHP Warning: Undefined array key 1 on line 3
您只能使用关联数组迭代 mysqli_result
。
foreach ($mysqli->query("select uid, name from users") as ['uid' => $uid, 'name' => $name]) {
print "$uid: $name\n";
}
但是,我建议使用 fetch_all()
,它会将所有内容提取到数组中,甚至使用数字键也是如此。
$result = $mysqli->query("select uid, name from users")->fetch_all(MYSQLI_NUM);
foreach ($result as [$uid, $name]) {
print "$uid: $name\n";
}