0

サーバーディレクトリからすべての画像を表示する必要がある課題に取り組んでいます。これを行うために glob() を実装しようとしましたが、ほぼ機能しているように見えますが、何らかの理由で画像が表示されません。私は xampp を使用してページを提供していますが、これまで問題はありませんでした。何が問題なのかわかりません。以下は関連するコードです。

$size = 5;
$images = glob("../../ass1_data_stage2/jpg/*.JPG", GLOB_BRACE);
$width = (600 / $size);  

echo "<table><tr>"; 
for($i=1; $i < count($images); $i++) {
    if (($i % $size) == 0 and $i != 0) {
        echo "</tr><tr>"; 
    }

    $file = $images[$i]; 
    echo '<td><img src=$file width=$width."px" height="100px" alt="Random image" />   </td>'; 
}
echo "</tr>"; 

echo "</table>"; 

出力は次のようになります。

4

2 に答える 2

1

これが正確な問題かどうかはわかりませんが、画像要素の HTML 構文が正しくありません。

echo '<td><img src=$file width=$width."px" height="100px" alt="Random image" /></td>';

次のようにする必要があります。

echo '<td><img src="'.$file.'" width="'.$width.'" height="100" alt="Random image" /></td>';

よりクリーンなこの方法を使用することもできます。

echo "<td><img src='{$file}' width='{$width}' height='100' alt='Random image' /></td>';
于 2013-09-12T15:11:39.370 に答える
0

これは、私のプロジェクトの1つで使用した良い例です:

次のように glob を使用することをお勧めします。

    $images = glob($path . '*.{jpg,jpeg,png,gif,JPG}', GLOB_BRACE);//only images

例 :

<?php

    $folder='name of your folder ';

    $path = 'uploads/'.$folder.'/' ;// slash in the end of path
    $images = glob($path . '*.{jpg,jpeg,png,gif,JPG}', GLOB_BRACE);//only images
    foreach ($images as $image) {
         echo "<img src='$image' />";
    }
?>
于 2013-09-12T15:10:44.087 に答える