我想将 SQL 查询的前三个结果保存在变量 $row1
、$row2
和 $row3
中并返回他们到 Ajax 。 SQL 查询对顺序进行排序,以便前三个循环将是我想要保存的。
事实是,我只能弄清楚如何将其中一个保存在 $row1
中,但无法使其他两个单独变量等于 ex.nu 和 lol.de。
id | url
---+------------
1 | www.hi.com //Save
2 | www.ex.nu //Save
3 | www.lol.de //Save
4 | www.mo.ae //Skip
//DB-setup
-
while ($row = mysqli_fetch_array($result)) {
$row1 = $row['url']; //Works
//$row2 = $row['url']; Second result, tried using [1]
//$row3 = $row['url']; Third result, tried using [2]
}
echo
json_encode(array(
'row1' => $row1,
'row2' => $row2,
'row3' => $row3
))
;
简单地,收集前三项并将它们保存在给定的变量中。有没有简单的解决方案来做到这一点?
任何帮助/提示/链接将不胜感激。
最佳答案
如果要将它们存储到 $row1
、$row2
、$row3
中,则需要使用可变变量。尝试以下方法:
$query = "select * from url_list order by url asc limit 3";
$result = mysql_query($query);
$i = 1;
while ($data = mysql_fetch_array($result)) {
$variable = 'row'.$i++;
$$variable = $data['url'];
}
echo
json_encode(array(
'row1' => $row1,
'row2' => $row2,
'row3' => $row3
));
关于php - 使用给定的变量名称将前三个结果保存在 while 循环中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39233824/