PHP-də qovluq məzmununun təhlili
Tutaq ki, bizə həm faylları, həm də qovluqları özündə saxlayan
müəyyən bir dir qovluğu verilib.
Gəlin bu qovluqdan adlar massivi əldə edək:
<?php
$files = array_diff(scandir('dir'), ['..', '.']);
?>
Gəlin hər bir ad üçün yoxlayaq, bu fayldır yoxsa qovluq:
<?php
$files = array_diff(scandir('dir'), ['..', '.']);
foreach ($files as $file) {
echo $file;
var_dump(is_file('dir/' . $file));
}
?>
Diqqət yetirin ki, skan etdiyimiz qovluğun adı kodda iki yerdə yazılıb. Bu çox rahat deyil. Gəlin bu adı ayrı bir dəyişənə çıxaraq:
<?php
$dir = 'dir';
$files = array_diff(scandir($dir), ['..', '.']);
foreach ($files as $file) {
echo $file;
var_dump(is_file($dir. '/' . $file));
}
?>
Gəlin indi bütün fayllar üçün onların məzmununu ekranda çap edək:
<?php
$dir = 'dir';
$files = array_diff(scandir($dir), ['..', '.']);
foreach ($files as $file) {
if (is_file($dir. '/' . $file)) {
echo file_get_contents($dir. '/' . $file);
}
}
?>
Qeyd etmək olar ki, faylın yolu iki dəfə hesablanır. Gəlin onu ayrı bir dəyişənə çıxaraq:
<?php
$dir = 'dir';
$files = array_diff(scandir($dir), ['..', '.']);
foreach ($files as $file) {
$path = $dir. '/' . $file; // faylın yolu
if (is_file($path)) {
echo file_get_contents($path);
}
}
?>
Bir qovluq verilib. Bu qovluqdakı alt qovluqların adlarını sütun şəklində ekranda çap edin.
Bir qovluq verilib. Bu qovluqdakı faylların adlarını sütun şəklində ekranda çap edin.
Bir qovluq verilib. Bu qovluqdakı hər bir faylın sonuna cari zaman anını əlavə edin.