-1

嗨,我有一个脚本为我的网站随机显示 5 张图片,但我需要为每张图片提供不同的链接。我有一个朋友帮助我编写代码,因为我对 php 非常陌生,所以任何人都可以给我的任何帮助都会很棒!我的原始代码中有更多图像,但我认为没有必要将它们全部放在这里。

这是我的代码

<?php
    $images=array( // list of files to rotate - add as needed    
     "images/Austin-Mahone-2.jpg",
     "images/Boys-Like-Girls-1.jpg",   
     "images/Boys-Like-Girls-2.jpg",
     "images/Boys-Like-Girls-3.jpg",   
     "images/It-Boys-5.jpg" ); 
    shuffle($images);

    echo '<div class="images">';
    $i = 0;
    while($i < 5){
        echo '<img src="'.$images[$i].'" />';
        $i++;
    }
    echo '</div>';
?>
4

3 回答 3

0

尝试 PHP 关联数组:

<?php
$images=array(
   array(
     "image" => "images/Austin-Mahone-2.jpg",
     "link" => "http://yourlink1.com"
   ),
   array(
     "image" => "images/Boys-Like-Girls-1.jpg",
     "link" => "http://yourlink2.com"
   ),
   array(
     "image" => "images/Boys-Like-Girls-2.jpg",
     "link" => "http://yourlink3.com"
   )
 ); 

shuffle($images);

echo '<div class="images">';
$i = 0;
while($i < 5){
    echo '<a href="'.$images[$i]['link'].'"><img src="'.$images[$i]['image'].'" /></a>';
    $i++;
}
echo '</div>';
?>

这样,您的数组$images包含 X 个关联数组,每个数组都包含['image']['link']值。

在此处阅读有关这些数组(和其他数组)的更多信息:http: //www.w3schools.com/php/php_arrays.asp

于 2013-05-28T09:58:11.683 回答
0

创建一系列链接,并将它们与您的图像结合起来。然后你可以做一个简单的foreach循环来输出它们:

$links = array('link1', 'link2', 'link3'); // etc.
$combined = array_combine($links, $images);

foreach ($combined as $link => $image) {
  echo '<a href="' . $link . '"><img src="' . $image . '" /></a>';
}

如果每个图像每次都必须具有相同的链接,则可以创建一个关联数组,如下所示:

$images = array(
  'http://www.google.com' => 'Google',
  'http://www.bing.com' => 'Bing',
  'http://www.yahoo.com' => 'Yahoo'
);

..并以与上述相同的方式循环:

foreach ($images as $link => $image) { 
  ... 
} 
于 2013-05-28T09:57:16.683 回答
0

所评论的关联数组方法。

<?php
$images = array(
    array("src" => "images/Austin-Mahone-2.jpg", "url" => "http://URL1"),
    array("src" => "images/Boys-Like-Girls-1.jpg", "url" => "http://URL2"),  
    array("src" => "images/Boys-Like-Girls-2.jpg", "url" => "http://URL3"),
    array("src" => "images/Boys-Like-Girls-3.jpg", "url" => "http://URL4"),  
    array("src" => "images/It-Boys-5.jpg", "url" => "http://URL15")
); 

shuffle($images);

echo '<div class="images">';

foreach ($images as $image) {

    echo '<a href="'.$image["url"].'"><img src="'.$image["src"].'" /></a>';

}

echo '</div>';

?>

于 2013-05-28T09:55:02.320 回答