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;

?>

希望有用。