Ik zou zeggen dat veel afhangt van de prestaties van uw basishardware/bestandssysteem/mysql-verbinding. Een enkele toegang tot de schijf, alleen om afbeeldingen te lezen, is waarschijnlijk de snelste optie. Maar u moet uw bestanden vooraf handmatig een naam geven.
Mysql vereist een TCP- of *NIX-socketverbinding en dit kan de zaken vertragen (veel hangt echter af van het aantal afbeeldingen dat u hebt en de "kwaliteit" van uw db-link). Als u veel bestanden heeft, is de prestatiehit mogelijk te verwaarlozen. Gewoon lezen uit een bestand kan desalniettemin sneller zijn, zonder de moeite te nemen om een DB-verbinding op te zetten; je zou echter nog steeds de ID/bestandsnaam-correspondentie moeten opschrijven voor de bestelling.
Iets wat ik in jouw situatie zou proberen, is door het php stat-commando te bekijken en te kijken of het je kan helpen bij het sorteren van de afbeeldingen. Afhankelijk van het aantal foto's dat je hebt (het werkt beter met lagere aantallen), krijgen de prestaties mogelijk geen serieuze prestatiehit en zou je GEEN aparte lijst met foto's/creatiedatumtupels kunnen bijhouden. Naarmate uw aantal foto's groeit, lijkt de bestandslijstbenadering mij een redelijke manier om het probleem op te lossen. Gewoon het ding benchmarken naarmate het aantal foto's toeneemt, kan je echter de waarheid vertellen. Omdat je, denk ik, veel variatie kunt verwachten, afhankelijk van je specifieke context.