Разбіраем змесціва папкі ў PHP

Няхай у нас дадзена некаторая папка dir, якая змяшчае ў сабе як файлы, так і папкі.

Давайце атрымаем масіў імёнаў з гэтай папкі:

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

Давайце для кожнага імя праверым, гэта файл ці папка:

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

Звярніце ўвагу на тое, што імя папкі, якую мы скануем, напісана ў двух месцах кода. Гэта не вельмі зручна. Вынясем гэта імя ў асобную зменную:

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

Давайце цяпер для ўсіх файлаў вывядзем на экран іх змесціва:

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

Можна заўважыць, што шлях да файла вылічаецца два разы. Давайце вынясем яго ў асобную зменную:

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

Дадзена папка. Вывядзіце на экран слупок імёнаў падпапак з гэтай папкі.

Задание 2

Дадзена папка. Вывядзіце на экран слупок імёнаў файлаў з гэтай папкі.

Задание 3

Дадзена папка. Запішыце ў канец кожнага файла гэтай папкі бягучы момант часу.