PHP > Bestands eigenschappen weergeven met php

Pagina: 1
Acties:

Onderwerpen


Acties:
  • 0 Henk 'm!

  • Darkprince1234
  • Registratie: Juni 2005
  • Laatst online: 14-08-2021
beste medetweakers,

Begeleidend verhaal
Ik heb een aantal mooie scripts in elkaar gedraait waarbij het script een directory uitleest en de gevonden mappen onder elkaar weergeeft. Waarbij het mogelijk is op de mapnamen te klikken waardoor er aan de rechterzijde van het scherm de inhoud van die map ge-include wordt. Je krijgt hiermee dus in feite een soort van halve verkenner achtige functie. Nu krijg ik de bestandnamen goed uitgelezen met:

PHP:
1
2
3
4
5
6
7
8
9
10
11
12
13
while (false!==($bestand = readdir($map))) {
    if ($bestand != "." && $bestand != "..") {
        // Wat is de extensie?
        $ext = explode('.',$bestand);
        $extl = sizeof($ext) - 1;
        $ext = strtolower($ext[$extl]); 

if ( !ereg('.',$bestand) )
        {
            // Het gaat om een map.
            //$mappen_reeks .= "<a href=\"index.php?mapnaam={$mapnaam}{$bestand}/\">{$bestand}</a><br />";
        }
}


De vraag
En dan komt nu de vraag. Is het mogelijk om (windows)bestandseigenschappen zoals 'gewijzigd op' in te lezen en deze weer te geven zoals dat ook met de bestandsnaam gelukt is?

Acties:
  • 0 Henk 'm!

  • Brian
  • Registratie: Oktober 2006
  • Laatst online: 14-06 10:44
Deze http://nl3.php.net/function.filemtime ?

[ Voor 8% gewijzigd door Brian op 30-03-2009 16:07 ]


Acties:
  • 0 Henk 'm!

  • HuHu
  • Registratie: Maart 2005
  • Niet online
Daar zijn allerlei filesystem functies voor: http://nl.php.net/manual/en/ref.filesystem.php

fileatime — Gets last access time of file
filectime — Gets inode change time of file
filegroup — Gets file group
fileinode — Gets file inode
filemtime — Gets file modification time
fileowner — Gets file owner
fileperms — Gets file permissions
filesize — Gets file size
filetype — Gets file type

Acties:
  • 0 Henk 'm!

  • storeman
  • Registratie: April 2004
  • Laatst online: 21:49
filesize() om de grootte van het bestand te bepalen

- Te laat, mooi compleet lijstje door HuHu.

[ Voor 31% gewijzigd door storeman op 30-03-2009 16:10 ]

"Chaos kan niet uit de hand lopen"


Acties:
  • 0 Henk 'm!

  • HuHu
  • Registratie: Maart 2005
  • Niet online
Owja... de code die je ge-copy-paste-ed hebt van PHPhulp is niet compleet hè. Wat je daar neer zet zal dus niet werken.

Acties:
  • 0 Henk 'm!

  • Darkprince1234
  • Registratie: Juni 2005
  • Laatst online: 14-08-2021
Super! Thanks!

Acties:
  • 0 Henk 'm!

  • HuHu
  • Registratie: Maart 2005
  • Niet online
Ben trouwens fstat nog vergeten, als je alle informatie ineens in een array wilt hebben.

Acties:
  • 0 Henk 'm!

  • Voutloos
  • Registratie: Januari 2002
  • Niet online
En voor het constateren of er een puntje in een string staat heb je dus geen regex nodig. En in een bestandsnaam hoeft niet per se een puntje te zitten, dus die logica klopt sowieso niet...

{signature}


Acties:
  • 0 Henk 'm!

  • HuHu
  • Registratie: Maart 2005
  • Niet online
Voutloos schreef op maandag 30 maart 2009 @ 16:13:
En voor het constateren of er een puntje in een string staat heb je dus geen regex nodig. En in een bestandsnaam hoeft niet per se een puntje te zitten, dus die logica klopt sowieso niet...
Het is dan ook niet zijn logica, maar de logica van een meer dan 3 jaar oud PHPhulp script :X. Er zitten nog wel meer stomme dingen in, zoals:

PHP:
1
2
3
if ( !ereg('.',$bestand) ) { 
  // Het gaat om een map. 
}


Dat is wel een hele kortzichtige conclusie en daar heb je ook gewoon is_dir() voor.

Acties:
  • 0 Henk 'm!

  • Voutloos
  • Registratie: Januari 2002
  • Niet online
Goed zo, mijn reply sloeg inderdaad op dat stukje code.

{signature}


Acties:
  • 0 Henk 'm!

  • Matis
  • Registratie: Januari 2007
  • Laatst online: 18:26

Matis

Rubber Rocket

HuHu schreef op maandag 30 maart 2009 @ 16:12:
Ben trouwens fstat nog vergeten, als je alle informatie ineens in een array wilt hebben.
Persoonlijk gebruik ik altijd fstat. Met een beetje mkdate enzo kun je er alle gegevens uit trekken.

Ik vind dit wel een beetje erg basis...

Edit: Spuit 11 ben ik weer, nvmd :)

[ Voor 4% gewijzigd door Matis op 30-03-2009 16:20 ]

If money talks then I'm a mime
If time is money then I'm out of time


Acties:
  • 0 Henk 'm!

  • Cartman!
  • Registratie: April 2000
  • Niet online
Pagina: 1