Buenas.
¿Alguna forma de obtener correctamente los nombres de ficheros, que incluyan acentos y demás caracteres extraños?
He probado con readdir() y scandir() con idéntico resultado.
A ver se puede obtener un listado con algo como esto:
if ( $dir = opendir( utf8_encode( $path_directorio ))) {
//Recoge los paths de los ficheros del directorio
$arr_files = array();
while ( FALSE !== ( $archivo = readdir( $dir ))) {
//Rellena array con los ficheros del directorio
if ($archivo !== '.' && $archivo !== '..') {
$arr_files[] = ( $path_completo )
? $path_directorio . '/' . utf8_encode( $archivo )
: utf8_encode( $archivo );
}
}
//Cerrar directorio
closedir($dir);
}
Si se imprime el contenido del array los caracteres aparecen correctos, gracias a utf8_encode(), pero si intentas manipular el fichero no se podría, p.e. usar file_exists() devolvería false...