извеждане на файлове от директория

koychev

Registered
Пичове, как мога да изведа само определени файлове от дадена директория. По принцип използвам този скрипт
Код:
<?php 
if ($handle = opendir('.')) { 
while (false !== ($file = readdir($handle))) { 
if ($file != "." && $file != "..") { 
echo " 
<table border=1 width=100%><tr><td> 
<a href='$file' >$file</a> 
</td></tr></table> 
"; 
} 
} 
closedir($handle); 
} 
?>

Искам като ми прочете файловете да ми изкарва само .jpg файловете например.
И във списъка да не ми пише разширението а само името на файла.
 
:arrow: http://porostorm.gotdns.com/images%20reader/dir.php

Код:
<?php
function getFiles($path) {
$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);
$file_type = strtolower(end(explode(".",$fkey)));
if($file_type != 'jpg' && $file_type != 'gif' && $file_type != 'png') continue;
$files[$fkey]['type'] = $file_type;
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;

$fileNames[$i++] = $fkey;
}
closedir($dh);
} else die ("Cannot open directory: $path");
} else die ("Path is not a directory: $path");
sort($fileNames,SORT_STRING);
$sortedFiles = array();
$i = 0;
foreach($fileNames as $f) $sortedFiles[$i++] = $files[$f];
return $sortedFiles;
}
$files = getFiles("./");

foreach ($files as $file)

print "
<table border=\"0\" id=\"table1\" cellspacing=\"0\" cellpadding=\"0\">
	<tr>
		<td><img src=\"$file[name]\" border=\"0\" ></td>
		<td>   </td>
		<td>$file[name]</td>
	</tr>
</table>
";
?>
 
имх предвид да извежда файловете пак като списък само че в списъка да ми показва само файловете с дадено разширение (например jpg) и в тоя списък да ми показва само името на файла без разширението. например image.jpg да ми го покзва само image. Скрипта който си ми дал отваря картинките, ан мен ми трябва само да извежда списък с файловете с линкове към самите файлове
 
мм ако съм разбрал по твоя пример трябва да е нещо такова:

<?php
if ($handle = opendir('.')) {
while (false !== ($file = readdir($handle))) {
$lq = explode('.',$file);
if ($file != "." && $file != ".." && (strtolower(end($lq)) == 'jpg')) {
echo "
<table border=1 width=100%><tr><td>
<a href='$file' >$lq[0]</a>
</td></tr></table>
";
}
}
closedir($handle);
}
?>

:?:
 

Back
Горе