Primero que nada, debo felicitarlos por la gran comunidad que tienen y todo el apoyo que brindan a los usuarios que como yo, siempre tenemos una duda.
Entre otras cosas, tengo el siguiente código y funciona muy bien, el problema es que no sé como hacerle para que únicamente me devuelva el archivo sin la extensión.
Código PHP:
function obtenerlen($path) {
$path = "lenguaje/";
$files = array();
$fileNames = array();
$i = 0;
if (is_dir($path)) {
if ($dh = opendir($path)) {
while (($file = readdir($dh)) !== false) {
if ($file == "." || $file == "..") continue;
$fullpath = $path . "/" . $file;
$fkey = strtolower($file);
while (array_key_exists($fkey,$fileNames)) $fkey .= " ";
$a = stat($fullpath);
$files[$fkey]['size'] = $a['size'];
if ($a['size'] == 0) $files[$fkey]['sizetext'] = "-";
else if ($a['size'] > 1024) $files[$fkey]['sizetext'] = (ceil($a['size']/1024*100)/100) . " K";
else if ($a['size'] > 1024*1024) $files[$fkey]['sizetext'] = (ceil($a['size']/(1024*1024)*100)/100) . " Mb";
else $files[$fkey]['sizetext'] = $a['size'] . " bytes";
$files[$fkey]['name'] = $file;
$files[$fkey]['type'] = filetype($fullpath);
$fileNames[$i++] = $fkey;
}
closedir($dh);
} else die ("No pudo abrirse el directorio: $path");
} else die ("La ruta no es un directorio: $path");
sort($fileNames,SORT_STRING);
$sortedFiles = array();
$i = 0;
foreach($fileNames as $f) $sortedFiles[$i++] = $files[$f];
return $sortedFiles;
}
$files = obtenerlen("./");
echo "<br><form><select name=\"lenguaje\" class=\"form\">\n";
foreach ($files as $file) print "<option value=\"".$file[name]."\">$file[name]</option>\n";
echo "</select></form>\n"
G.