Come sto usando la struttura delle cartelle:
-
Sto caricando la foto e la sposto come hai detto:
$image = md5_file($_FILES['image']['tmp_name']); // you can add a random number to the file name just to make sure your images will be "unique" $image = md5(mt_rand().$image); $folder = $image[0]."/".$image[1]."/".$image[2]."/"; // IMAGES_PATH is a constant stored in my global config define('IMAGES_PATH', '/path/to/my/images/'); // coolparty = f3d40fc20a86e4bf8ab717a6166a02d4 $folder = IMAGES_PATH.$folder.'f3d40fc20a86e4bf8ab717a6166a02d4.jpg'; // thumbnail, I just append the t_ before image name $folder = IMAGES_PATH.$folder.'t_f3d40fc20a86e4bf8ab717a6166a02d4.jpg'; // move_uploaded_file(), with thumbnail after process // also make sure you create the folders in mkdir() before you move them
-
Credo sia il modo base, ovviamente puoi cambiare la struttura delle cartelle in una più profonda, come hai detto, con 2 caratteri se avrai milioni di immagini.