1
我有此drupal的幻燈片,其通過圖像標題拉動從文件夾中依次的圖像(01_title.jpg,02_title.jpg等。)隨機化幻燈片放映圖像
我想知道是否有是隨機的一種簡單的方法圖像,所以每次刷新頁面時都會以不同的圖像開始?
您可以查看這裏的幻燈片http://www.rubensteinpr.com/
謝謝!
<div id ="index">
<?php
// Note that !== did not exist until 4.0.0-RC2
$desired_extension = 'jpg'; //extension we're looking for
$banner_imgs_array = array(); // array of banner images
$banner_imgs = ''; // sting of banner images names comma dileneated
if ($handle = opendir(file_directory_path().'/banner_imgs')) {
/* This is the correct way to loop over the directory. */
while (false !== ($file = readdir($handle))) {
if(($file != ".") and ($file != "..")) {
$fileChunks = explode(".", $file);
if($fileChunks[1] == $desired_extension) //interested in second chunk only
{
$banner_imgs_array[] = $file;
}
}
}
closedir($handle);
$banner_imgs = implode(',', $banner_imgs_array);
}
?>
<div id="banner"><img src="<?php print file_directory_path(); ?>/temp_banner.jpg" width="702" height="310" border="0"></div>
<div id="bannerText">media relations • strategic planning • digital communications • crisis management</div>
<script type="text/javascript">
// <![CDATA[
var so = new SWFObject("<?php print file_directory_path(); ?>/banner.swf", "ban", "702", "310", "8", "#ffffff");
so.addParam('menu', 'false');
so.addParam("wmode", "transparent");
so.addParam("base", "<?php print file_directory_path(); ?>");
so.addVariable("banner_imgs", "<?php print $banner_imgs; ?>");
so.write("banner");
// ]]>
</script>
</div>
這段代碼現在已經生效,它確實似乎在源代碼中對數組進行了混洗,但由於某種原因,即使在清除緩存後,幻燈片仍然按順序顯示圖像。也許問題在別處。感謝您的回答! – TheRealBillyT
你確定你把洗牌「前」線?請在「$ banner_imgs = implode(',',$ banner_imgs_array);」之後嘗試「echo $ banner_imgs」並看看它是否真的在字符串中洗牌。也許Flash小程序有一個排序功能。嘗試重命名圖像文件,看看是否改變了順序。 –