Mysql
 sql >> Base de données >  >> RDS >> Mysql

Structure de dossiers pour stocker des millions d'images ?

Comment est-ce que j'utilise la structure des dossiers :

  • Je télécharge la photo et la déplace comme vous l'avez dit :

    $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
    
  • Je crois que c'est la méthode de base, bien sûr, vous pouvez changer la structure des dossiers en une structure plus profonde, comme vous l'avez dit, avec 2 caractères si vous avez des millions d'images.