从 MySQL 结果集构建自定义数组


Building a custom array from a MySQL result set

我有下表,其中包含博客文章的图像:

+----+---------+------------------------+-----------+-----------+-------+
| id | id_post | imagine                | descriere | tip       | sters |
+----+---------+------------------------+-----------+-----------+-------+
|  1 |       4 | asdasdsadasdasdasd.jpg | NULL      | thumbnail |     0 |
|  2 |       4 | asdasdsadasdasdasd.jpg | NULL      | full      |     0 |
|  3 |       4 | asdasdsadasdasdasd.jpg | NULL      | thumbnail |     0 |
|  4 |       4 | asdasdsadasdasdasd.jpg | NULL      | full      |     0 |
+----+---------+------------------------+-----------+-----------+-------+

在此表中,有一个名为"tip"(或类型,英文)的列,它表示图像类型:全屏或缩略图。当有人上传图像时,总会有一对"完整"和"缩略图"条目。

我想做的是获取帖子的所有图像并将它们存储到一个数组中,但每个图像都有一个条目,如下所示:数组 ( [0] => 数组 ( [缩略图] => "1.jpg", [完整] => "11.jpg")...

首先,您需要某种变量,将full图像与thumbnail图像绑定。目前没有办法告诉女巫缩略图去女巫图像。添加一个字段,如full_id或只是将条目合并为一行,例如:

+----+---------+--------------+---------------+-----------+-------+
| id | id_post | imagine_full | imagine_thumb | descriere | sters |
+----+---------+--------------+---------------+-----------+-------+

之后,使用循环遍历您的值,如@voodoo417所示:

$items = array();
while ( $row = mysql_fetch_array( $result ) ) {
    $items[] = array( 
                 'thumbnail' => $row['imagine_thumb'],
                 'full' => $row['imagine_full']
            );
}

选择您的表并按照以下代码操作,

$array[]= array();
while($row = mysql_fetch_assoc($result))
{
    //using 2-d array
    $array[$row[id]][$row[tip]]= $row[imagine];
}

现在,当您想检索特定帖子的图像时,您可以使用

$array[$post_id]['full']
$array[$post_id]['thumbnail']

尝试这样做

$items = array();
while ($row=mysql_fetch_array(RESOURSE)){
 $items[] = array( 'thumbnail'=>$row['thumbnail'], 'full' =>$row['full'] );
}