Документи

./filename.pdf) // (Опційно) метадані вручну — для гарних назв/описів $manual = [ 'Положення про ЦІТ КНУБА.pdf' => [ 'title' => 'Положення про ЦІТ КНУБА', 'desc' => 'Нормативний документ (проєкт/ред.).', 'tags' => ['Положення','ЦІТ','Норматив'] ], // додай тут інші pdf => метадані за потреби ]; function humanSize($bytes){ $units = ['Б','КБ','МБ','ГБ']; $i = 0; while ($bytes >= 1024 && $i < count($units)-1){ $bytes/=1024; $i++; } return round($bytes, ($i?1:0)).' '.$units[$i]; } setlocale(LC_ALL, 'C.UTF-8'); if (!is_dir($dir)) { echo '
Папку /docs не знайдено. Створи її в корені сайту і додай PDF-файли.
'; } else { $files = glob($dir.'/*.pdf'); if (!$files){ echo '
Немає файлів у /docs. Додай PDF — вони з’являться у списку.
'; } else { echo '
'; echo ''; echo ''; // Виводимо рядки foreach ($files as $path) { $name = basename($path); $enc = mb_detect_encoding($name, ['UTF-8','CP1251','KOI8-U','KOI8-R','ISO-8859-5'], true); $nameUtf8 = $enc && $enc !== 'UTF-8' ? mb_convert_encoding($name, 'UTF-8', $enc) : $name; $title = pathinfo($nameUtf8, PATHINFO_FILENAME); $title=str_replace('_',' ',$title); $desc = $manual[$name]['desc'] ?? ''; $tags = $manual[$name]['tags'] ?? []; $size = humanSize(@filesize($path)); $date = @filemtime($path) ? date('Y-m-d', filemtime($path)) : '—'; $url = $baseUrl . rawurlencode($name); echo ''; echo ''; echo ''; echo ''; echo ''; echo ''; } echo '
НазваОпис / Теги ОновленоФайл
'.htmlspecialchars($title).''; if ($desc) echo '
'.htmlspecialchars($desc).'
'; if ($tags && is_array($tags)){ foreach ($tags as $t){ echo ''.htmlspecialchars($t).''; } } echo '
'.htmlspecialchars($date).'Відкрити PDF
'; } } ?>