Hi!
1.)
Was passiert, wenn zwei (oder mehre) Leute gleichzeitig einen Download starten,
also zur gleichen Zeit auf die Text-Datei zugreifen?
Das ist relativ unwahrscheinlich, wenn die Anfragen sehr kurz sind, und trotzdem ist es besser, eine Sicherung zu programmieren, wie du vorschlägst.
2.)
Was genau würde es bringen, die Text-Datei mit der Funktion flock() zu sperren?
Die Datei ist dann im internen System gesperrt und kann nicht mehr von anderen PHP-Dateien gelesen bzw. beschrieben werden.
3.)
Was passiert, wenn das PHP-Script auf eine mit flock() gesperrte Datei zugreifen will?
Bricht das Script ab, verweigert also den Download der mp3-Datei?
Oder wird gewartet bis die Datei wieder "frei" ist?
Bekommt der User irgendeine Fehlermeldung zu sehen?
PHP verweigert dann sicherlich den Zugriff und wird lediglich eine Fehlermeldung "Konnte nicht auf Datei xyz zugreifen, da..." (oder so etwas) ausgeben.
Es wird sicherlich nicht immer weiter warten, bis die Datei wieder frei ist.
Das kannst du aber programmieren, indem du einfach eine Schleife programmierst, in der die Datei versucht wird zu öffnen (vielleicht so etwa 10 Versuche maximal, so würde ich es zumindest machen).
Bei positivem Ergebnis wird die Datei dann gelockt, beschrieben [gelesen], entlockt und (wichtig!!!) geschlossen.
cu, hoffe es hilft!
Marc Reichelt || http://www.step2identity.com/
Linux is like a wigwam - no windows, no gates and an Apache inside!!!