25. oktober 2008 - 23:16
Der er
11 kommentarer og 1 løsning
Halvadvanceret liste over filer med ftp
Hej Jeg har en filsystem som jeg registrerer alle ændringer ved. Når jeg laver et print med ftp_rawlist() får jeg nogenlunde følgende: Array ( [0] => drwxr-xr-x 2 user4 ftpgroup 4096 Oct 19 17:38 mappe1 [1] => drwxr-xr-x 1 user4 ftpgroup 4096 Oct 25 19:55 mappe2 [2] => drwxr-xr-x 2 user4 ftpgroup 4096 Oct 19 17:38 mappe3 ) Det skal lige siges at filsystemet er UNIX. Hvad betyder tallet lige får brugeren (user4)? Og hvordan henter jeg det nemmest for en enkelt fil? Findes der en funktion alá fileperms()?? Og hvordan konventerer jeg nemmest og hurtigst filtilladelserne (f.eks. drwxr-xr-x) til en octal værdi? -Morten
Annonceindlæg fra Deloitte
25. oktober 2008 - 23:27
#1
Tallet er antal links til filen.
25. oktober 2008 - 23:29
#2
Permissionsmå kunne parses og konverteres til oktal.
25. oktober 2008 - 23:33
#3
Jeg prøvet at bixe et eksempel.
25. oktober 2008 - 23:38
#4
<?php function tooctal($m) { $v = 0; for($i = 0; $i < 9; $i++) { $v = 2 * $v + ($m[$i] != '-' ? 1 : 0); } return sprintf("%03o", $v); } function modecvt($s) { return tooctal(substr($s, 1, 9)); } echo modecvt('drwxr-xr-x 2 user4 ftpgroup 4096 Oct 19 17:38 mappe1'); ?>
26. oktober 2008 - 08:56
#7
25/10-2008 23:27:10 > Altså f.eks. hvor mange filer der inklude()'er den?
26. oktober 2008 - 09:46
#8
Functionen tooctal() virker upåklageligt, men hvad gør det første tegn i strengen 'drwxr-xr-x' godt for når det alligevel bare fjernes? Kunne antallet af links hentes via en anden funktion? (Behøver ikke være ftp_)
26. oktober 2008 - 10:18
#9
Fandt ud af det. Det første tegn i 'drwxr-xr-x' beskriver hvilken type fil det er. Her er det f.eks. 'd' for dir. Fandt også ud af at antallet af links kan hentes med stat(). Smid et svar hvis du ønsker point arne_v.
26. oktober 2008 - 16:01
#10
svar
26. oktober 2008 - 16:04
#11
d==directory, l==symlink, p==pipe, s==socket
26. oktober 2008 - 19:16
#12
I know
Vi tilbyder markedets bedste kurser inden for webudvikling