【发布时间】:2015-05-06 14:24:21
【问题描述】:
当我在 while 循环中回显输出时,它给了我我期望的所有结果。 然而,当我在外面回声时,我只得到一个。我知道如果我使用一个数组,它会给我我期望的结果,但不知道如何。 由于某些未知的原因,我不喜欢数组,并且一直在避免使用它们。
$sql="select concat(p.firstName,' ',p.lastName) as parents
from parent p,
parentstudent ps,
student s
where p.parent_id = ps.parent_id
and s.student_id = ps.student_id
and p.parent_id IN ('".$_SESSION['list'][1]."','".$_SESSION['list'][2]."','".$_SESSION['list'][3]."','".$_SESSION['list'][4]."' )";
$result = $conn->query($sql);
if($result->num_rows > 0) {
while($row = $result->fetch_object()) {
echo $participants = $row->parents." ";
}
}
【问题讨论】:
-
避免数组?为什么?它们很有用
-
在编程中避免使用数组?你确定吗?
-
也许我需要一个比php.net更好的来源。
-
希望您对函数没有任何反对意见 :-) 这就是说您的问题的答案很明显:
$row是您的 fesched 对象项在对其进行迭代时的值。在 while 循环之外,该值是循环迭代的最后一个值。 -
“出于某种未知原因” - 请问,这是什么原因?为什么要将输出累积到数组中?如果您只需要打印该值,请在循环内执行。
标签: php mysql while-loop prepared-statement