Check filename and copy
Bestanden in deze map hebben de volgende naam variant: 20150724_XXXXX.mp3
Waarbij XXXX telkens weer anders is, en het bestand dus begint met een datum notatie.
Wanneer het script de inhoud van een map uitleest en een bestand tegenkomt met de datum van die dag, dan dient het bestand naar een andere map verplaatst te worden en moet de datum "eraf" worden gehaald zodat je alleen "XXXXX".mp3 over houd.
http://www.phphulp.nl/forum/newtopic/26/
Lees eerst even de regels: http://www.phphulp.nl/php/forum/topic/criteria-php-vacature-berichten/16800/
Je zou dan de namen van de mp3-bestanden gelijk kunnen maken aan een nummer wat correspondeert met het record-id van de database-data.
Je vertelt er niet bij of deze bestanden vrij op te vragen zijn. Indien dat niet het geval is zou je deze bestanden af kunnen schermen voor publiek en kunnen serveren via een script die controleert of iemand voldoende privileges heeft om het mp3-bestand op te vragen.
Het beveiligen van het bestand door het geven van een ingewikkelde naam (security-through-obscurity) is waarschijnlijk niet heel erg veilig (geeft je geen garanties).
Kon het niet laten om toch maar wat te schrijven..
Grt Pieter
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
<?php
$dir1 = '/path/to/folder1/';
$dir2 = '/path/to/folder2/';
$files_to_scan = scandir($dir1);
$today = date("Ymd");
foreach ($files_to_scan as $scan) {
if (preg_match('/^'.$today.'/' , $scan)) {
$old_path_name = $dir1 . $scan;
$new_path_name = $dir2 . substr($scan, 9);
rename($old_path_name , $new_path_name);
}
}
?>
$dir1 = '/path/to/folder1/';
$dir2 = '/path/to/folder2/';
$files_to_scan = scandir($dir1);
$today = date("Ymd");
foreach ($files_to_scan as $scan) {
if (preg_match('/^'.$today.'/' , $scan)) {
$old_path_name = $dir1 . $scan;
$new_path_name = $dir2 . substr($scan, 9);
rename($old_path_name , $new_path_name);
}
}
?>
Gewijzigd op 24/07/2015 17:52:01 door Pieter R
Dat gaat met preg_match() ook, maar glob() schijnt veel sneller te zijn.
Met behulp van het script voorbeeld van PieterR heb ik het aan het werk.