Avatar billede compac Seniormester
25. juni 2010 - 22:06 Der er 4 kommentarer og
1 løsning

Oprettelse af array i php

Jeg har en mappe med billefiler, hvor jeg vil have oplysninger om filerne lagt ind i et array.
Jeg har noget kode som henter filnavn, størrelse og last_modified.

<html>
<head></head>
<body>
<html>
<head></head>
<body>
<?php
$dir = ".";
if (is_dir($dir)) {
    if ($dh = opendir($dir)) {
        while (($file = readdir($dh)) !== false) {
            if (preg_match("/.jpg/", $file)) {
                $size=  filesize($file);                           
                $last_modified = filemtime($file);
                                }
        }
          closedir($dh);
        }
  }
?>       
</body>
</html>       

Der skal formentlig et multidimentionalt array til, men jeg har ikke styr på hvordan jeg får det placeret.
Det skal være sådan at når mappen løbes igennem, lægges værdierne i arrayet.
Avatar billede majbom Novice
25. juni 2010 - 22:36 #1
<?php
$dir = ".";
$files = array();
if (is_dir($dir)) {
    if ($dh = opendir($dir)) {
        while (($file = readdir($dh)) !== false) {
            if (preg_match("/.jpg/", $file)) {
                $size=  filesize($file);                         
                $last_modified = filemtime($file);
                $files[] = array(
                  "name"=>basename($file),
                  "size"=>$size,
                  "last_modified"=>$last_modified
                );
                                }
        }
          closedir($dh);
        }
  }
?>

så har du dem som:

$files[0]['name'];
$files[0]['size'];
$files[0]['last_modified'];

og så 1, 2, 3 osv.

du kan evt. løbe dem igennem med en for-løkke...
Avatar billede compac Seniormester
25. juni 2010 - 23:06 #2
Hvis jeg ikke kender antallet af filer i mappen må 0,1,2,3 erstates af en variabel?
Findes der en nem måde at bestemme hvor mange filer der ligger i mappen?
Avatar billede compac Seniormester
25. juni 2010 - 23:21 #3
Jeg fandt denne løsning på det sidste:

  $i = count($files);
for($i = 0; $i < sizeof($files); ++$i)
  {
  echo $files[$i]['name'];
  }

-læg et svar
Avatar billede majbom Novice
26. juni 2010 - 01:44 #4
kommer her! :)
Avatar billede majbom Novice
27. juni 2010 - 22:57 #5
tfp :)
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester