这是我的代码到目前为止,除了连接:
$query = $handler->query('SELECT imagepath FROM table LIMIT 5');
while($r = $query->fetch()) {
extract($r, EXTR_SKIP);
echo "<img src='{$imagepath}'>";
}
这主要是出于实验目的,现在我卡住了。我的表中有很多行,每行都有一个特定的imagepath&amp;特定值(整数)。我现在想要使用5个random或valuesize排序的元素达到3000的整数,然后加载并显示连接的图像(通过imagepath)。 &#39; 3000&#39;可以具有+ -50到100的容差,如果没有组合,它应该输出错误消息。
您是否了解我如何解决此问题?
提前致谢。
答案 0 :(得分:1)
关闭袖口,这可能最好通过两个查询来实现。在第一个查询中,获取所有图像键(ID)及其整数值的列表。应用程序可以使用其特定逻辑来计算满足您要求的结果(总值在某个范围内的五个随机图像)。最后,一旦你拥有了图像的ID /键,就可以只获取那些图像路径。
如果您在确定如何随机选择五个图像来填充时遇到问题,那么这就是一维bin-packing problem。一种可能的解决方案是使用https://en.wikipedia.org/wiki/Greedy_algorithm。