php 随机包含图片,回显并用逗号分隔?
php include images randomly, echo and seperate by commas?
我想包含文件,如果存在,则回显扩展名为 1.jpg 的文件名,但它需要随机并用逗号分隔,如
('1.jpg','2.jpg','3.jpg','4.jpg')
,但是如果指定文件夹中有些图片不存在,需要手动回显,例如文件夹中只有三张图片,需要这样
( 1.jpg,'2.jpg','3.jpg','default.jpg')
,希望有人理解我的要求。
试试这个:
<?php
$images = glob('/images/*.{jpeg,gif,png}', GLOB_BRACE);
shuffle($images);
$out = '(';
foreach($images as $img)
{
$out .= '"';
$out .= file_exists($img) ? $img : 'default.jpg';
$out .= '",';
}
$out .= ')';
echo $out;
?>
<?php
// set minimum number of images to show
$show_min=4;
// define manual images
$manual[]="1.jpg";
$manual[]="2.jpg";
$manual[]="3.jpg";
$manual[]="4.jpg";
// shuffle images
$images_found = glob("images/bg/*.{jpg,png,gif}", GLOB_BRACE)
shuffle($images_found);
$result = '(';
foreach($images_found as $image)
{
$result.='"' . $image . '",';
}
if (count(images_found) < $show_min)
{
for($i=0;$i<($show_min-count(images_found));$i++)
$result.='"' . $manual[$i] . '",';
}
$result .= ')';
//fix for last comma
$result=str_replace(",)", ")", $result);
echo $result;
?>
希望有用。
我想包含文件,如果存在,则回显扩展名为 1.jpg 的文件名,但它需要随机并用逗号分隔,如
('1.jpg','2.jpg','3.jpg','4.jpg')
,但是如果指定文件夹中有些图片不存在,需要手动回显,例如文件夹中只有三张图片,需要这样
( 1.jpg,'2.jpg','3.jpg','default.jpg')
,希望有人理解我的要求。
试试这个:
<?php
$images = glob('/images/*.{jpeg,gif,png}', GLOB_BRACE);
shuffle($images);
$out = '(';
foreach($images as $img)
{
$out .= '"';
$out .= file_exists($img) ? $img : 'default.jpg';
$out .= '",';
}
$out .= ')';
echo $out;
?>
<?php
// set minimum number of images to show
$show_min=4;
// define manual images
$manual[]="1.jpg";
$manual[]="2.jpg";
$manual[]="3.jpg";
$manual[]="4.jpg";
// shuffle images
$images_found = glob("images/bg/*.{jpg,png,gif}", GLOB_BRACE)
shuffle($images_found);
$result = '(';
foreach($images_found as $image)
{
$result.='"' . $image . '",';
}
if (count(images_found) < $show_min)
{
for($i=0;$i<($show_min-count(images_found));$i++)
$result.='"' . $manual[$i] . '",';
}
$result .= ')';
//fix for last comma
$result=str_replace(",)", ")", $result);
echo $result;
?>
希望有用。