用同一文件夹中的随机图像替换默认图像

时间:2014-02-09 15:28:56

标签: php image random

我只是在学习php而且我遇到了一个基本问题。如果用户没有选择图像,我希望我的网站显示十个随机图像(1.png ... 10.png)中的一个。目前它默认只显示一个图像。此图片有缩略图和完整尺寸版本。

我发现控制它的文件是:

<?php
class Sabai_Helper_NoImageUrl extends Sabai_Helper
{
    public function help(Sabai $application, $small = false)
    {       
        $file = $small ? 'no_image_small.png' : 'no_image.png';
        return $application->getPlatform()->getAssetsUrl() . '/images/' . $file;
    }
}

我试图将'no_image_small.png'替换为用引号输入的图像名称('1.png','2.png',...)。我在stackoverflow上看到的其他答案对我来说有点太高级,因为我不知道在哪里为'no_image_small.png'和'no_image.png'添加数组。

非常感谢

2 个答案:

答案 0 :(得分:0)

我不确定你正在使用什么框架,扩展了什么类,但试试这个:

class Sabai_Helper_NoImageUrl extends Sabai_Helper
{
    public function help(Sabai $application, $small = false)
    {       
        $random = rand(1, 10);
        $file = $small ? $random.'_small.png' : $random.'.png';
        return $application->getPlatform()->getAssetsUrl() . '/images/' . $file;
    }
}

这假定图像“1.png”..“10.png”和“1_small.png”..“10_small.png”位于同一目录中,其中no_image_small.png和no_image.png是存储

例如:

$random = rand(1, 10); // generating random number and saving to $random variable
echo $random.'.png';   // concatenating random number to .png extension

输出:

8.png

或从1到10的任何其他

这应该使用正确的图像设置$ file变量。

参考:rand

答案 1 :(得分:0)

尝试使用php rand()

您可以使用rand(1,10)这意味着回显1到10之间的随机数。

例如:echo rand(1,10)。“jpg”;