[ urkozamanje @ 24.01.2006. 12:20 ] @
| u pitanju je f-ja scandir. moj kod izgleda ovako:
Code: $direktorijum = "../arhiva/1";
$niz_fajlova=(scandir($direktorijum,1));
print_r($niz_fajlova);
pri pravljenju niza ukljucuje dva elementa vise nego sto ima fajlova i imenuje ih sa "." i ".." tj. na naredbu print_r($niz_fajlova); izlista mi sledece:
Array
(
[0] => scan00022.pdf
[1] => scan00019.pdf
[2] => proba.txt
[4] => ..
[5] => .
)
kako da izbegnem listanje ova dva nepostojeca file-a ??
|
[ Nemanja Avramović @ 24.01.2006. 12:31 ] @
To nisu dva nepostojeca fajla. Tacka (.) oznacava trenutni direktorijum a tacka tacka (..) roditeljski direktorijum. Ne mozes izbegnuti listanje ta dva elementa (mozda mozes ako funkcija scandir prima jos neki parametar kojim eliminise te elemente - pogledaj manual). Najbolje je da posle, pri listanju, ili mozda odmah prodjes kroz array i samo proveris ako je trenutni element . ili .. onda ga obrises (preskocis ako je listanje u pitanju).
[ sale83 @ 25.01.2006. 02:19 ] @
Evo ga resenja:
Code:
$direktorijum = "../arhiva/1";
function ListanjeDirektorijuma($folder) {
$skeniraj = scandir($folder);
$niz= array();
foreach($skeniraj as $naziv) {
if ($naziv != '.' && $naziv != '..') {
$niz[] = $naziv;
}
}
if (!ksort($niz)) return false;
return $niz;
}
echo"<pre>";
print_r(ListanjeDirektorijuma($direktorijum));
Copyright (C) 2001-2025 by www.elitesecurity.org. All rights reserved.