我有一个while循环嵌套在另一个while循环中。第一次将给我5个元素,对于每个元素,我必须转到第二个元素并获得2个元素。
问题是我必须将所有10个值都返回给函数。
我该怎么做?
我尝试合并两个数组,但它没有用。
function ShowCustomers()
{
while($row2 = mysql_fetch_array($result2))
{
while($row3 = mysql_fetch_array($result3))
{
$res = array($row2['f_name'], $row3['name'], $row3['s_name']);
$res1 = array_merge($res1,$res);
}
}
return $res1;
}
答案 0 :(得分:2)
如果您要做的只是将所有结果放入一个数组并将其返回,您可以使用array_push()
或简写:$your_array[] = ...
:
function ShowCustomers()
{
$result_array = array();
while($row2 = mysql_fetch_array($result2))
{
while($row3 = mysql_fetch_array($result3))
{
$res = array($row2['f_name'], $row3['name'], $row3['s_name']);
$result_array[] = $res;
}
}
return $result_array;
}
答案 1 :(得分:1)
您需要在循环范围之外声明$ res1,以便在每次迭代后保持其值:
function ShowCustomers()
{
$res1 = array();
while($row2 = mysql_fetch_array($result2))
{
while($row3 = mysql_fetch_array($result3))
{
$res = array($row2['f_name'], $row3['name'], $row3['s_name']);
$res1 = array_merge($res1,$res);
}
}
return $res1;
}