Domanda

ok, quindi quello che sto cercando di fare è scansionare il "precedente" cartella.

$scanned = scandir("..");
foreach($scanned as $file){

if(is_file($file)){
    print $file."<br />";       
   }
}

anche se nel mio " .. " directory ho più di 20 file ottengo solo tre righe

index.jpg
index.php
template.dtd

ho notato che se non uso questo file t is_file se restituisce tutti i nomi dei file; ma ne ho davvero bisogno se la clausola.

È stato utile?

Soluzione

Ci vorrà un po 'di tempo per indovinare che questi tre file esistono sia nella directory corrente che nella directory principale. scandir () restituisce solo nomi di file e stai chiamando is_file ($ file) quando intendi is_file (" ../$ file ") .

Altri suggerimenti

La tua funzione sta testando quei nomi di file nella directory corrente e non nella directory precedente. Per ottenere il risultato desiderato, prova: is_file ('../'. $ File) invece.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top