2

私は写真家で、これが私が達成しようとしていることです:私はこれらのような「本」をより多く表示しようとしています: http://builtbywill.com/code/booklet/

上記のリンクにある例を 1 つのアルバム/本に複製できますが、ギャラリーに表示するアルバムが 20 以上あり、同じコードを 20 回以上コピー/貼り付けしてパスを 20 回以上変更したくありません。 PHPで何かをすることにしました:

IMAGES/ALBUMS/ALBUM1 から ALBUM10 までのフォルダーがあります。

IMAGES/ALBUM をスキャンする必要があり、見つかった ALBUM1 から ALBUMx フォルダーごとに、すべての画像を次のように表示します。

そして、これが私がこれまでに持っているコードです:

function mySlider()
{
        $album = array(
            'Asia i Marcin' => 'images/albums/asiamarcin/',
            'Aneta i Marcin' => 'images/albums/anetamercin/',
        );
        $dir = $album['Asia i Marcin'];
        //$dir = 'images/asiamarcin/';
        $scan = scandir($dir);  

        for ($i=0; $i<count($scan); $i++) {  
            if ($scan[$i] != '.' && $scan[$i] != '..') {  
            echo ' 
                    <div>
                         <img width="450" heigth="385" src="'. $dir . $scan[$i] . '" alt="'. $scan[$i] . '" /> 
                    </div> 
                ';  
            }    

        }   
}

完璧にはほど遠いので、これまでのところ、次のようにhtmlに挿入しています。

<div class="b-load">
    <?php mySlider(); ?>
</div>

そして、私はこれを取得します:

 <div>
 <img width="450" heigth="385" src="images/albums/asiamarcin/asiamarcin01.jpg" alt="asiamarcin01.jpg" /> 
 </div> 
 <div>
 <img width="450" heigth="385" src="images/albums/asiamarcin/asiamarcin02.jpg" alt="asiamarcin02.jpg" /> 
 </div> 
 <div>
 <img width="450" heigth="385" src="images/albums/asiamarcin/asiamarcin03.jpg" alt="asiamarcin03.jpg" /> 
 </div> 

理想的には、次のように呼び出します。

<div class="b-load">
   <?php mySlider('ALBUM1'); ?>
</div>
....
....
<div class="b-load">
  <?php mySlider('ALBUM2'); ?>
</div>
...etc...

これを行う方法がわかりません:(私はプログラマーではありませんが、学びたいので、助けていただければ幸いです。ありがとう、アレックス

4

1 に答える 1

1

これは次のようになります。

function mySlider($dirName)
{
    $dir = 'images/albums/' . $dirName . '/';
    $scan = scandir($dir);  

    for ($i=0; $i<count($scan); $i++) {  
        if ($scan[$i] != '.' && $scan[$i] != '..') {  
        echo ' 
                <div>
                     <img width="450" heigth="385" src="'. $dir . $scan[$i] . '" alt="'. $scan[$i] . '" /> 
                </div> 
            ';  
        }    

    }   
}
于 2012-09-21T14:54:03.043 に答える