Scandir non restituisce mai
-
04-10-2019 - |
Domanda
Sto sviluppando utilizzando una macchina di Windows 7 con il server locale essendo UniServer.
Ho qualche codice PHP per includere tutti i file PHP in una directory.
# Include all library classes.
$library_files = scandir(LIBRARY_PATH);
foreach ($library_files as $file) {
$path_parts = pathinfo($file);
if ($path_parts['extension'] == 'php') {
require(LIBRARY_PATH . DIRECTORY_SEPARATOR . $file);
}
}
La chiamata alla funzione scandir fa sì che lo script non finire mai. Non sono sicuro se questo è un problema con le autorizzazioni della cartella. Sono in grado di includere i file all'interno della cartella.
Che cosa sta andando male qui? Grazie.
Modifica: LIBRARY_PATH è uguale a E: \ Tools \ UniServer \ www \ LIBRARY
Modifica: A quanto pare si sta lavorando ora. Sono confuso, non ho cambiato nulla. Penso che potrei essere necessario reinstallare PHP. Grazie per l'aiuto
Soluzione
La chiamata alla funzione scandir fa sì che lo script non finire mai
un po 'vago.
Hai provato in esecuzione lo script dalla CLI, scrivendo a stdout dopo scandir e il lavaggio del buffer di uscita prima di entrare nel ciclo?
Che cosa succede se si tenta di DIR E: \ Tools \ UniServer \ www \ LIBRARY al prompt dei comandi?
Che cosa succede quando si tenta DIR E:\Tools\UniServer\www\LIBRARY
all'interno di uno script PHP?