28 lines
925 B
PHP
28 lines
925 B
PHP
<?php
|
|
$media_root = '../media';
|
|
$data = [];
|
|
|
|
// Fichiers dans le dossier racine
|
|
$root_files = array_diff(scandir($media_root), ['.', '..']);
|
|
$data['racine'] = array_values(array_filter($root_files, function ($file) use ($media_root) {
|
|
return is_file("$media_root/$file") && preg_match('/\.(mp3|wav)$/i', $file);
|
|
}));
|
|
|
|
// Fichiers dans les sous-dossiers
|
|
foreach ($root_files as $entry) {
|
|
$subdir = "$media_root/$entry";
|
|
if (is_dir($subdir)) {
|
|
$subfiles = array_diff(scandir($subdir), ['.', '..']);
|
|
$audio_files = array_values(array_filter($subfiles, function ($file) use ($subdir) {
|
|
return is_file("$subdir/$file") && preg_match('/\.(mp3|wav)$/i', $file);
|
|
}));
|
|
if (!empty($audio_files)) {
|
|
$data[$entry] = $audio_files;
|
|
}
|
|
}
|
|
}
|
|
|
|
// Écriture du JSON
|
|
file_put_contents(__DIR__ . '/media_list.json', json_encode($data));
|
|
echo "Media list updated.";
|
|
?>
|