我正在尝试将图像信息数组插入数据库。该阵列由大量图像信息组成,最初我只允许将阵列中的3张图像输入数据库。图像详细信息进入称为打印的表,三个图像URL中的每一个都有其自己的列,以及每个图像的标题,图像拍摄日期和位置。所有这些信息都与用户ID合并为一行。
// Assign images and data to appropriate variables
$image_one = $feed['0']['images']['standard_resolution']['url'];
$image_one_caption = htmlspecialchars($feed['0']['caption']['text'], ENT_QUOTES);
$image_one_date = $feed['0']['created_time'];
$image_one_location = $feed['0']['location']['name'];
$image_two = $feed['1']['images']['standard_resolution']['url'];
$image_two_caption = htmlspecialchars($feed['1']['caption']['text'], ENT_QUOTES);
$image_two_date = $feed['1']['created_time'];
$image_two_location = $feed['1']['location']['name'];
$image_three = $feed['2']['images']['standard_resolution']['url'];
$image_three_caption = htmlspecialchars($feed['2']['caption']['text'], ENT_QUOTES);
$image_three_date = $feed['2']['created_time'];
$image_three_location = $feed['2']['location']['name'];
但是,我现在要这样做,以使输入到表格中的打印数量最多可以从3到10不等。我想知道这样做的最佳方法。我可以按照上面显示的方式简单地将数组值分配给更多变量,但是这很庞大,而且我觉得不必要重复。
我当时正在考虑一个foreach循环,但是我不确定如何将每个图像和每个图像附带的数据插入到用户打印行的正确列中。
另一个选择是创建一个单独的print_info表并存储用户id和print_job编号,然后在打印表中将图像信息仅包含在具有print_job列的单独行中,以将print_job链接到用户print_info行。这是解决这个小问题的最好方法吗?
那这个呢:
$numOfImages = 4; //the number you want
for ($i=0; $i < $numOfImages; $i++) {
$image = $feed[$i]['images']['standard_resolution']['url'];
$image_caption = htmlspecialchars($feed[$i]['caption']['text'], ENT_QUOTES);
$image_date = $feed[$i]['created_time'];
$image_location = $feed[$i]['location']['name'];
//...operation with $image
}
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句