This should work, although if there are only 9 lines in the file, it will
run infintely (or until the page times out)... so put a check in for that.
$imagesNeeded = 10;
$imageArr = array();
// Create array with $imagesNeeded number of elements.
for($i=0;$i<$imagesNeeded;$i++) {
// choose image
$tmpImg = $openFile[array_rand($openFile)];
// Keep getting images until the image you have is not in the existing
array of images
while(in_array($tmpImg,$imagesArr)) {
// choose image
$tmpImg = $openFile[array_rand($openFile)];
}
// Put unique image into array
array_push($imageArr,$tmpImg);
}
// You now have an array called imageArr with 10 elements/images in it.
Aaron
On 12/15/05, Mike Rondeau <[EMAIL PROTECTED]> wrote:
>
> Hi,
>
> I'm still very green with PHP, but am working to fix that.
>
> I've searched high and low for an answer to this question and so far
> no solution has presented itself. I have a script to populate my web page
> with random images:
>
> <?php
> #random images example
> #this is your file
> $file = "images.txt";
> #open the file
> $openFile = file($file);
> #generate a random number
> srand((double)microtime()*1000000);
> #get one of the entries in the file
> $random_image = $openFile[array_rand($openFile)];
> #display the entry
> echo "<img src='$random_image' height='170' width='100'></img>";
> ?>
>
>
> This works beautifully, but my problem is that sometimes, the same image
> displays twice or more on the same page-load. My page requires 10
> different
> places where my images need to load, but I can't have any duplicate images
> show up.
>
> Any suggestions on what I need to modify here?
>
> Thanks in advance!
> Mike
>
> --
> PHP General Mailing List (http://www.php.net/)
> To unsubscribe, visit: http://www.php.net/unsub.php
>
>