Gennemgår indholdet af en mappe i PHP

Lad os sige, at vi har en given mappe dir, der indeholder både filer og mapper.

Lad os få et array med navne fra denne mappe:

php<?php
  $files = array_diff(scandir('dir'), ['..', '.']);
?>

Lad os for hvert navn kontrollere, om det er en fil eller en mappe:

php<?php
  $files = array_diff(scandir('dir'), ['..', '.']);
  
  foreach ($files as $file) {
    echo $file;
    var_dump(is_file('dir/' . $file));
  }
?>

Bemærk venligst, at navnet på mappen, som vi scanner, er skrevet på to steder i koden. Dette er ikke særlig praktisk. Lad os udskille dette navn i en separat variabel:

php<?php
  $dir = 'dir';
  $files = array_diff(scandir($dir), ['..', '.']);
  
  foreach ($files as $file) {
    echo $file;
    var_dump(is_file($dir. '/' . $file));
  }
?>

Lad os nu for alle filer vise deres indhold på skærmen:

php<?php
  $dir = 'dir';
  $files = array_diff(scandir($dir), ['..', '.']);
  
  foreach ($files as $file) {
    if (is_file($dir. '/' . $file)) {
      echo file_get_contents($dir. '/' . $file);
    }
  }
?>

Man kan bemærke, at stien til filen bliver beregnet to gange. Lad os udskille den i en separat variabel:

php<?php
  $dir = 'dir';
  $files = array_diff(scandir($dir), ['..', '.']);
  
  foreach ($files as $file) {
    $path = $dir. '/' . $file; // sti til filen
    
    if (is_file($path)) {
      echo file_get_contents($path);
    }
  }
?>
Задание 1

Der er givet en mappe. Vis en søjle med navne på undermapper fra denne mappe.

Задание 2

Der er givet en mappe. Vis en søjle med navne på filer fra denne mappe.

Задание 3

Der er givet en mappe. Skriv i slutningen af hver fil i denne mappe det aktuelle tidspunkt.