Compare commits
No commits in common. "039c2948c4d46f77867d5ddfadfa371e9d0f1151" and "bee9c1cc00b8f17de7daca46c0c9f0b96b34d92e" have entirely different histories.
039c2948c4
...
bee9c1cc00
52
php/get.php
Normal file
52
php/get.php
Normal file
@ -0,0 +1,52 @@
|
||||
<?php
|
||||
define("ROOT_URL", "http://localhost/react-photo-viewer/");
|
||||
define("RELATIVE_IMG", "../img/");
|
||||
define("ABSOLUTE_IMG", "img/");
|
||||
|
||||
main();
|
||||
|
||||
function main(): void {
|
||||
$data = json_decode(file_get_contents('php://input'), true);
|
||||
$array = [];
|
||||
|
||||
$category = $data["category"];
|
||||
$directory = RELATIVE_IMG.$category;
|
||||
if (!is_dir($directory)) return;
|
||||
foreach (scandir($directory) as $file) {
|
||||
if ($file === ".") continue;
|
||||
if ($category === "" && $file === "..") continue;
|
||||
|
||||
if ($category != "") $file = $category.'/'.$file;
|
||||
$is_dir = is_dir(RELATIVE_IMG.$file);
|
||||
if (!$is_dir && !is_valid_file_type($file)) continue;
|
||||
|
||||
$file_item = [];
|
||||
$file_item["is_dir"] = $is_dir;
|
||||
$file_item["url"] = ROOT_URL.ABSOLUTE_IMG.$file;
|
||||
array_push($array, $file_item);
|
||||
}
|
||||
echo json_encode($array);
|
||||
}
|
||||
|
||||
function is_valid_file_type(string $filename): bool {
|
||||
$file_extensions = [
|
||||
// Image extensions
|
||||
'jpg',
|
||||
'jpeg',
|
||||
'png',
|
||||
'gif',
|
||||
'tiff',
|
||||
'bmp',
|
||||
'webp',
|
||||
'svg',
|
||||
// Video extensions
|
||||
'mp4',
|
||||
];
|
||||
|
||||
foreach ($file_extensions as $file_extension) {
|
||||
if (str_ends_with($filename, $file_extension)) return true;
|
||||
}
|
||||
return false;
|
||||
}
|
||||
?>
|
||||
|
Loading…
Reference in New Issue
Block a user