随机分配一个图像到我的网站的每个页面


Randomly assign an image to each page in my site?

我有一个50页的网站和一组20张图片。我如何随机分配一个图像到每个页面,但确保每个页面将始终显示相同的图像?

每个页面都有一个分段值,是否有办法将其散列成1-20的整数(或任何一组数字)?

正如@Null Set所说,如果这是静态内容,那么手工操作就足够简单了。另一方面,如果页面是动态生成的,那么将此信息保存在数据库中可能是值得的。您可以有一个images表,其中每个记录都有一个自动递增的id和图像的URL。保存页面信息的db表可以保存相关images表记录的外键。

任何新页面都可以通过使用相当于RAND()的数据库从images表中随机选择一条记录来分配一个图像(尽管要注意,对于MySQL, RAND()很快就会遇到性能问题- 20条记录很好,但如果你开始添加更多,你将不得不开始优化更多)。

我几乎可以肯定,您可以使用body id="page"来定义将使用选择器显示哪个图像。

与使用css精灵为导航设置活动状态的方式大致相同。

如何像$count = md5($str) % 20;,页面图像将保持不变,如果页面str没有改变。如果你改变了内容,那么图像也会改变。

PHP人员通常包括页眉,页脚和其他部分的总页面,但如果这不是真的或内容在某些文件中是分开的,那么您也可以使用md5_file函数