Php 从文件夹中提取图像以进行反向拉伸
因为我在任何地方都找不到答案,也许其他人也被这个问题困扰着。 我想使用backstretch文件夹中的随机图像,而不指定之前的图像。我不擅长php,所以有人能告诉我怎么做吗,我相信这将是类似于这个解决方案,这是超大型的 () 此外,当重新加载/重新访问页面时,我需要幻灯片以不同的图像开始Php 从文件夹中提取图像以进行反向拉伸,php,image,directory,reload,jquery-backstretch,Php,Image,Directory,Reload,Jquery Backstretch,因为我在任何地方都找不到答案,也许其他人也被这个问题困扰着。 我想使用backstretch文件夹中的随机图像,而不指定之前的图像。我不擅长php,所以有人能告诉我怎么做吗,我相信这将是类似于这个解决方案,这是超大型的 () 此外,当重新加载/重新访问页面时,我需要幻灯片以不同的图像开始 非常感谢你帮助我 我编写了一个简单的php脚本。它从$image_dir获取所有.jpg,并以随机顺序返回它们 第一个映像保存为会话变量,刷新后,将拾取一个新映像并将其添加到数组的开头 代码非常基本,如果您有子
非常感谢你帮助我 我编写了一个简单的php脚本。它从$image_dir获取所有.jpg,并以随机顺序返回它们 第一个映像保存为会话变量,刷新后,将拾取一个新映像并将其添加到数组的开头 代码非常基本,如果您有子文件夹,则必须对其进行自定义: PHP:
<?php
//Start Session
session_start();
function GetRandomImagesFromDir( $image_dir ) {
//Create image array
$images = glob($image_dir . '*.jpg');
//Get first image
//Get one random image from array
$rand_key = array_rand($images, 1);
//Same image as before?
if ( $rand_key == $_SESSION['last_image'] ) {
if ( $rand_key > 1 ) {
$rand_key--;
} else {
$rand_key++;
}
}
//Save Key to Session
$_SESSION['last_image'] = $rand_key;
//Save image to var
$first_image = $images[ $rand_key ];
//Get next images
//Remove first-image from array
unset( $images[ $rand_key ] );
//Shuffle
shuffle( $images );
//Add first image
$images[] = $first_image;
//Reverse array
$images = array_reverse($images);
//Array to string
$return_str = implode('","', $images);
$return_str = '"'.$return_str.'"';
//Return string
return $return_str;
}
?>
<script>
$.backstretch([<?=GetRandomImagesFromDir('backstretch_images/')?>]);
</script>
嘿,维克多,非常感谢,它工作得很好,只是它只显示一张图片,这意味着幻灯片无法继续播放。我做错什么了吗?如果我这样说,它是有效的,这是你想要的吗$.backstretch([“”,“”,“”],{fade:750,//衰减持续时间的速度:4000//图像显示时间});'我已经编辑了代码,现在它应该返回所有图像,并在每次刷新后替换第一个图像。