3

PHP と一緒にレスポンシブ画像属性「srcset」を使用する方法を探しています。サーバー上のディレクトリからランダムな画像を選択するために、現在次のコードを使用しています。

<?php
$dir = "img/";
$images = scandir($dir);
$i = rand(2, sizeof($images)-1);
?>

<img src="img/<?php echo $images[$i]; ?>" alt="image">

ディレクトリ内に、接尾辞を付けたさまざまなバージョンの画像を作成しました(つまり、image-1-small.jpg、image-1-big.jpg ... image-2-small.jpg、image-2-big. jpgなど)

srcset 属性を php 文字列に実装するにはどうすればよいですか? 次のような出力を探しています。

<img sizes="100vw" srcset="img/image-1-small.jpg 400w, img/image-2-medium.jpg 800w, img/image-1-big.jpg 1600w" src="img/image-1-small.jpg" alt="image-1">

ありがとう!

4

1 に答える 1

1

次のようなことを試すことができます:

<?php
$dir = "img/";
$images = scandir($dir);
$i = rand(2, sizeof($images)-1);
// Get image file name.
$image_name_full = $images[$i];
// Define display types.
$image_display_types = array("-small.jpg", "-medium.jpg", "-big.jpg");
// Remove image display type from image name.
$image_name = str_replace($image_display_types, "", $image_name_full);
?>

<img sizes="100vw" srcset="img/<?php echo $image_name; ?>-small.jpg 400w, img/<?php echo $image_name; ?>-medium.jpg 800w, img/<?php echo $image_name; ?>-big.jpg 1600w" src="img/<?php echo $image_name; ?>-small.jpg" alt="<?php echo $image_name; ?>">
于 2015-12-23T09:09:13.363 に答える