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

Տրված է պանակ: Գրեք այդ պանակի յուրաքանչյուր ֆայլի վերջում ընթացիկ ժամանակի պահը: