Analizimi i Përmbajtjes së një Dosjeje në PHP
Le të themi se kemi një dosje dir,
që përmban si skedarë ashtu edhe nëndosje.
Le të marrim një array me emra nga kjo dosje:
<?php
$files = array_diff(scandir('dir'), ['..', '.']);
?>
Le të kontrollojmë për çdo emër nëse është skedar apo dosje:
<?php
$files = array_diff(scandir('dir'), ['..', '.']);
foreach ($files as $file) {
echo $file;
var_dump(is_file('dir/' . $file));
}
?>
Vini re se emri i dosjes që po skanojmë, është shkruar në dy vende të kodit. Kjo nuk është shumë e përshtatshme. Le ta nxjerrim këtë emër në një ndryshore të veçantë:
<?php
$dir = 'dir';
$files = array_diff(scandir($dir), ['..', '.']);
foreach ($files as $file) {
echo $file;
var_dump(is_file($dir. '/' . $file));
}
?>
Tani le të shfaqim në ekran përmbajtjen e të gjithë skedarëve:
<?php
$dir = 'dir';
$files = array_diff(scandir($dir), ['..', '.']);
foreach ($files as $file) {
if (is_file($dir. '/' . $file)) {
echo file_get_contents($dir. '/' . $file);
}
}
?>
Mund të vërehet se rruga te skedari llogaritet dy herë. Le ta nxjerrim atë në një ndryshore të veçantë:
<?php
$dir = 'dir';
$files = array_diff(scandir($dir), ['..', '.']);
foreach ($files as $file) {
$path = $dir. '/' . $file; // rruga te skedari
if (is_file($path)) {
echo file_get_contents($path);
}
}
?>
Është dhënë një dosje. Shfaqni në ekran një kolonë me emra të nëndosjeve nga kjo dosje.
Është dhënë një dosje. Shfaqni në ekran një kolonë me emra të skedarëve nga kjo dosje.
Është dhënë një dosje. Shkruani në fund të çdo skedari të kësaj dosje momentin aktual kohor.