gpt4 book ai didi

PHP MySQL 如何在 fetch_assoc 之后将列/字段名称设置为变量

转载 作者:行者123 更新时间:2023-11-29 10:01:18 26 4
gpt4 key购买 nike

我正在尝试获取列名称和值,然后将列名称设置为变量...这有意义吗?

$con = mysqli_connect('localhost', 'mysql_user', 'mysql_password', 'db_name');
$sql = "SELECT * FROM `table`";
$res = mysqli_query($con,$sql);
while($row = $res->fetch_assoc()) {
$column1 = $row['column1']; // <- can these be
$column2 = $row['column2']; // as simple as one
...
$column100 = $row['column100']; // line or two?
}
mysqli_close($con);

谁能指导我该怎么做?谢谢。

最佳答案

您可以使用字符串来声明变量,名为 variable variables

while($row = $res->fetch_assoc()) {
foreach ($row as $key => $value)
$$key = $value;
// ^----------------------notice the double dollar
}

或者,您可以使用extract

while($row = $res->fetch_assoc()) {
extract($row);
}
<小时/>

为了确保您不想覆盖某些已经存在的变量,您可以给它们添加前缀。

while($row = $res->fetch_assoc()) {
foreach ($row as $key => $value)
$someNicePrefix_{$key} = $value;
// ^----^-------------notice the curly brackets
}

使用提取,您可以添加更多参数(在上面链接的文档中进行了描述)

while($row = $res->fetch_assoc()) {
extract($row, EXTR_PREFIX_ALL, "someNicePrefix");
}

两种方法具有相同的效果。请注意,对于提取,将在前缀和变量名之间插入字符 _

关于PHP MySQL 如何在 fetch_assoc 之后将列/字段名称设置为变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52888281/

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