• User Attivo

    mostrare file txt casuale in una cartella

    Ciao 😄
    volevo chiedere come era possibile in PHP fare in modo che in modo casuale venga caricato un diverso file txt contenuto in una determinata cartella

    Ad esempio:
    cartella "testi"
    testo1.txt
    testo2.txt
    testo3.txt

    quando l'utente apre la pagina prova.php viene caricato a caso un file TXT della cartella e viene visualizzato il suo contenuto

    grazie mille

    deste :unz: .


  • ModSenior

    Prova una cosa del genere e dimmi se ti va.

    
    <?php
    function leggi_cartella($directory)
    {
        $dir=$directory;
        $arrayfile=array();
        if ($handle = opendir($dir))
        {
            while (false !== ($file = readdir($handle)))
            {
                if ( ($file<> ".") & ($file<> "..") )
                {
                    $ext = strtolower(substr($file, (strrpos($file, '.') ? strrpos($file, '.') + 1 : strlen($file)), strlen($file)));
                    if($ext=="txt")
                    {
                        
                        array_push($arrayfile,$file);
                    }
                }
            }
        }
        else
        {
            echo "Cartella inesistente. Contattare l'AMMINISTRATORE";
        }
        $lughezzaarray=count($arrayfile);
        $numerocasuale=rand(0,$lughezzaarray-1);
        $filedaaprire=$arrayfile[$numerocasuale];
        $filename=$filedaaprire;
        $handle=fopen($filename, "r");
        $contents=fread($handle, filesize($filename));
        echo "$contents";
        fclose($handle);
    }
    leggi_cartella('.');
    ?>