|
|
|
| В папке имеются файлы с именами по аналогии:
234122.txt 234122_stat.txt
234111.txt 234111_stat.txt
112122.txt 112122_stat.txt
324139.txt 324139_stat.txt
Мне нужно вывести только имена файлов не содержащих в имени добавки _stat.
Использую такой код:
<?
function scan_dir($dirname)
{$dir = opendir($dirname);
while (($file = readdir($dir)) !== false){if($file != "." && $file != ".."){$arr[] = $dirname."/".$file."<br>";}}
closedir($dir);
return $arr;}
$dirname = "./folder";
$filename = scan_dir($dirname);
sort($filename);
for($p=0; $p<=sizeof($filename); $p++)
{ if(strpos("$filename[$p]" , "_stat") !== falce) {unset($filename[$p]); } }
for($i=0; $i<=sizeof($filename); $i++)
{
if(!empty($filename[$i])) { echo ("$filename[$i]<br>"); }
}
?>
|
Почему-то такой код не работает- получается, что удаляются все элементы массива. Подскажите, что неправильно? И, если реально как-то просто вывести имена файлов из директории по маске- подскажите как? | |
|
|
|
|
|
|
|
для: Loneliness
(05.12.2008 в 22:15)
| | Модератору: Извиняюсь, не отметил нужный форум. Перместите пожалуйста мой пост в форум php | |
|
|
|
|
|
|
|
для: Loneliness
(05.12.2008 в 22:15)
| | Всё из-за опечатки: falce
Надо работать с включенными E_NOTICE | |
|
|
|
|
|
|
|
для: BinLaden
(05.12.2008 в 22:30)
| | Епт... Пора проспаться. Благодарю! | |
|
|
|
|
|
|
|
для: Loneliness
(05.12.2008 в 22:15)
| |
$fs = glob("*.txt");
foreach($fs as $f) if(!ereg("_stat",$f)) print $f."<br>";
|
| |
|
|
|