Php 如何使用循环在不同id的不同数组中执行结果
我已经从下面的查询中生成了一个结果,如下所示。现在我得到的结果是一个数组,其中所有结果都按照“portfolio_id”存储。。。我需要为不同的投资组合id打印不同的结果数组。这怎么可能 例如,当公文包_id为1时,它将生成一帧9幅图像,公文包_id为18时,它必须生成另一帧9幅图像Php 如何使用循环在不同id的不同数组中执行结果,php,Php,我已经从下面的查询中生成了一个结果,如下所示。现在我得到的结果是一个数组,其中所有结果都按照“portfolio_id”存储。。。我需要为不同的投资组合id打印不同的结果数组。这怎么可能 例如,当公文包_id为1时,它将生成一帧9幅图像,公文包_id为18时,它必须生成另一帧9幅图像 $portfolio_item_query=$ilance->db->query("SELECT * FROM " . DB_PREFIX . "portfolio AS p,
$portfolio_item_query=$ilance->db->query("SELECT * FROM " . DB_PREFIX . "portfolio AS p,
" . DB_PREFIX . "portfolio_images AS pi,
" . DB_PREFIX . "users AS u,
" . DB_PREFIX . "subscription_user AS su,
" . DB_PREFIX . "portfolio_items AS it
WHERE p.portfolio_id = it.portfolio_id
AND u.user_id = p.user_id
AND it.id = pi.portfolio_item_id
AND it.portfolio_id='".$portfolio['portfolio_id']."'
GROUP BY it.id ORDER BY it.id ASC LIMIT 0,9");
$num_rows=$ilance->db->num_rows($portfolio_item_query);
if ($num_rows > 0)
{
while ($portfolio_item = $ilance->db->fetch_array($portfolio_item_query))
{
$portfolio_html.='<li><img height="57" width="57" src="images/portfolio_uploads/orig_'.$portfolio_item['image'].'"></a></li>';
}
echo $portfolio_html;
}
您可以遍历整个数据集,跟踪每行的投资组合id。然后,每次portfoio_id更改时,都会启动一个新列表 如果我理解正确,这应该会有帮助。以下是如何使用group_id定义组,将一组通用图像分割成不同的无序列表:
// select the entire set, group by whichever field defines your groups
$result = mysql_query("SELECT image_path FROM portfolio ORDER BY group_id");
// the group_id associated with the currently growing <ul>
$current_id = null;
while ($row = mysql_fetch_array($result))
{
$group_id = $row['group_id'];
// the first list
if (is_null($current_id))
{
$current_id = $group_id;
echo "<ul>\n";
}
// if a new group_id is encountered, close the list and start a new one
elseif ($group_id != $current_id)
{
$current_id = $group_id;
echo "</ul>\n\n<ul>\n";
}
echo "<li><image src=\"" . $row['image_path'] . "\"></li>\n";
}
echo "</ul>\n";
上述程序的输出如下所示:
mysql> SELECT * FROM portfolio;
+------------+----------+
| image_path | group_id |
+------------+----------+
| a.png | 1 |
| b.png | 3 |
| c.png | 4 |
| d.png | 3 |
| e.png | 3 |
| f.png | 1 |
| g.png | 4 |
+------------+----------+
7 rows in set (0.00 sec)
<ul>
<li><image src="a.png"></li>
<li><image src="f.png"></li>
</ul>
<ul>
<li><image src="b.png"></li>
<li><image src="d.png"></li>
<li><image src="e.png"></li>
</ul>
<ul>
<li><image src="c.png"></li>
<li><image src="g.png"></li>
</ul>
什么是框架?一个新的?是的,结果显示出来了,但是现在不同投资组合的所有结果都在一个数组中……那么,你想为每个投资组合的id添加一个新的ul吗?