Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 11
  1. #1

    elencare nomi files da una cartella senza estensioni

    Salve..
    ho un piccolo problema, sto costruendo una funzione che legge tutti i file img di una cartella e li inserisce in un array; ma vorrei che dopo mi creasse una lista con i nomi dei files senza visualizzare anche l' estensione... ma non so come si fa.

    questo è il codice

    <?
    function viewgallery ($imageDir)
    {
    $dir = "./".$imageDir."/";
    $images = array();
    if ( file_exists($dir) )
    {
    $handle = opendir ($dir);
    while ( false !== ( $file = readdir($handle) ) )
    {
    if ( is_file($dir.$file) )
    {
    // qui devo visualizzare il nome dei files escludendo le estensioni
    }
    }
    $handle = closedir($handle);
    }
    else
    {
    echo "Directory Inesistente!";
    }
    }
    ?>
    Grazie per il vostro aiuto
    Hutton

    "Una tela bianca, offre infinite possibilità."

  2. #2
    Funzione substr per prendere la parte del nome del file senza estensione.

  3. #3
    mhmm .. e come dovrei fare ?

    Hutton

    "Una tela bianca, offre infinite possibilità."

  4. #4
    Originariamente inviato da hutton
    mhmm .. e come dovrei fare ?

    Google no eh? Oppure la documentazione ufficiale su www.php.net

  5. #5
    io ho fatto così ... ma non so se è giusto ( ho provato e funge )

    <?
    function viewgallery ($imageDir)
    {
    $dir = "./".$imageDir."/";
    $images = array();
    if ( file_exists($dir) )
    {
    $handle = opendir ($dir);
    while ( false !== ( $file = readdir($handle) ) )
    {
    if ( is_file($dir.$file) )
    {
    $nameFile = substr($file,0,-4);
    print '[*]'.$nameFile.'';
    }
    }
    $handle = closedir($handle);
    }
    else
    {
    echo "Directory Inesistente!";
    }
    }

    ?>
    Il dubbio è se le estensioni hanno + di 4 caratteri non funziona a modo vero?
    Hutton

    "Una tela bianca, offre infinite possibilità."

  6. #6
    In effetti è meglio la funzione explode, qualcosa del tipo:
    codice:
    $array = explode(".", nomefile);
    e poi prendi tutti gli elementi dell'array risultante tranne l'ultimo.

  7. #7
    e neanche conviene tantissimo

    se ci stanno altri punti nel nome salta tutto!
    codice:
    $fileNameParts = explode('.', $fileName);
    array_pop($fileNameParts);
    $fileName = implode('.', $fileNameParts);
    con questo codice rimuovi solamente l'ultimo blocco dopo il punto

    Inoltre ti consiglio di cambiare il codice da opendir ecc ecc a
    codice:
    foreach(glob("./{$imageDir}/*.*") as $path)
    {
      if (is_file($path) === true)
      {
        $fileNameParts = explode('.', basename($path));
        array_pop($fileNameParts);
        $fileName = implode('.', $fileNameParts);
        echo "[*]{$nameFile}\r\n";
      }
    }

  8. #8
    grazie.. provo subito
    Hutton

    "Una tela bianca, offre infinite possibilità."

  9. #9
    Originariamente inviato da daniele_dll
    e neanche conviene tantissimo
    Infatti ho scritto di prendere tutti gli elementi dell'array tranne l'ultimo.

  10. #10
    Grazie a tutti .. funziona
    Hutton

    "Una tela bianca, offre infinite possibilità."

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.