Ich hab ein Verzeichnis, wo mehrere hundert jpeg-Bilder gespeichert sind, die die Namen 1.jpg, 2.jpg, 3.jpg usw... haben. Diese entsprechen den Frames in einem Video und ihre Reihenfolge muss deswegen erhalten bleiben.
Ich will alle diese Dateien in ein Array schreiben, und mit diesem Array was machen. Ich hab dafür folgende Funktion:
PHP
function get_frames ($directory) {
if (is_dir($directory)) {
if ($dh = opendir($directory)) {
$frames = array();
while (($file = readdir($dh)) !== false) {
array_push($frames, $file);
}
}
}
else {
echo "Error: get_frames(): directory not found ";
echo "or isn't one";
}
return $frames;
}
Alles anzeigen
Ich will dann in einer anderen Funktion auf dieses Array sequenziell zugreifen:
PHP
// ...
$frames = get_frames($dir);
for ($i=2;$i<count($frames);$i++) {
// tu irgendwas mit $frames[$i] ...
}
// ...
Das Problem ist das das frames-Array so aussschaut:
$frames: {
[0] => 1.jpg
[1] => 10.jpg
[2] => 100.jpg
[3] => 101.jpg
[4] => 102.jpg
...
}
Die Reihenfolge bleibt also nicht erhalten. Wie kann ich es schaffen, dass die Dateien in der Reihenfolge ins Array eingetragen werden, wie ich es haben will?