• User

    Mostrare immagini da cartella, ma solo un numero definito

    Buongiorno a tutti. Ho trovato un codice che mi permette di visualizzare le immagini contenute in una cartella. Vorrei aggiungere la regola per stabilire il numero di immagini da visualizzare, per esempio 4 (più recenti). Come posso fare? Il codice è quello che segue. Grazie mille per l'aiuto.

    code_text

    
    <?php
    header('Content-Type: text/javascript; charset=UTF-8');
    
    $imageFolder = 'folder/';
    
    $imageTypes = '{*.jpg,*.JPG,*.jpeg,*.JPEG,*.png,*.PNG,*.gif,*.GIF}';
    
    $sortByImageName = false;
    
    $newestImagesFirst = true;
    
    //...........................................................
    
    $images = glob($imageFolder . $imageTypes, GLOB_BRACE);
    
    if ($sortByImageName) {
        $sortedImages = $images;
        natsort($sortedImages);
    } else {
        $sortedImages = array();
        $count = count($images);
        for ($i = 0; $i < $count; $i++) {
            $sortedImages[date('YmdHis', filemtime($images*)) . $i] = $images*;
        }
        if ($newestImagesFirst) {
            krsort($sortedImages);
        } else {
            ksort($sortedImages);
        }
    }
    
    foreach ($sortedImages as $image) {
        
        $name = 'Image name: ' . substr($image, strlen($imageFolder), strpos($image, '.') - strlen($imageFolder));
        $lastModified = '(last modified: ' . date('F d Y H:i:s', filemtime($image)) . ')';
        
        writeHtml('<div class="ins-imgs-li">');
        
        writeHtml('<img src="' . $image . '" alt="' . $name . '" title="' . $name . '">');
        
        writeHtml('<p class="ins-imgs-label">' . $name . ' ' . $lastModified . '</p>');
        
        writeHtml('</div>');
    }
    
    function writeHtml($html) {
        echo "document.write('" . $html . "');\n";
    }
    
    ?>
    

    romeoausoni 1 Risposta
  • User

    @cosina Ciao,
    Da una rapida lettura del codice quest’ultimo già ti mostra tutte le immagini presenti in una specifica directory dalla più recente alla meno recente. L’unica modifica che devi fare è limitare il numero di immagini da mostrare. Puoi farlo sostituendo semplicemente questa stringa:

    $count = count($images);
    

    Con questa:

    $count = 4;
    

    Dove 4 chiaramente è il numero di immagini da mostrare.
    Spero di esserti stato utile
    Saluti
    Romeo


    cosina 1 Risposta
  • User

    @romeoausoni scusa il ritard. Grazie mille