ætla að kommenta dáldið á kóðan þinn, vona að þú snappir ekki og ferð að bögga mig, ég er bara að reyna að hjálpa :)
fyrst sem ég tók eftir er að þú skýrir breyturnar þínar alltaf með tölusta í endan
ef þú ert bara með einn file_array afhverju kallaru hann þá ekki bara file_array?
þú ert að nota readdir vitlaust
while($file1 = readdir($dir_handle1))
en á að vera
while (false !== ($file = readdir($dir_handle1)))
átt líka að gera closedir($dir_handle1); þegar þú ert búinn að nota handelinn.
þú notar preg_match sem er regular expression skipun, nema hvað að þú ert ekki að nota neina regular expression.
if((preg_match('/jpg/',$file1)) || // getur bætt við fleiri myndategundum hér
(preg_match('/png/',$file1)) || // eða tekið burtu
(preg_match('/gif/',$file1)) ||
(preg_match('/jpeg/',$file1)))
ættir frekar að nota strstr, gerir sama hlut nema hvað að það keyrir hraðar.
maður þarf ekki að setja inn lykilinn í fylki ef maður ætlar bara að setja neðst í listan.
$file_array1[$a1] = $file1;
$a1++;
er alveg nóg að gera bara
maður þarf ekki lengur að nota srand, frámeð php 4.2 þá gerir php það fyrir mann.
svo áttu ekki að nota rand, nota frekar mt_rand það er skipun sem keyrir 3x hraðar.
svo er það bara uppsetningin á kóðanum, mættir hafa lengri bil á milli hluta til að auðvelda lestur og einhver fleirri smáatriði.
ég er bara að reyna að kenna þér.