Avatar ·

Comment créer un dossier en PHP s'il n'existe pas encore ?

Bonjour à tous ! Je suis un développeur PHP débutant et je crée un site sur WordPress. J'ai un problème : je veux sauvegarder les images téléchargées par les utilisateurs dans un dossier séparé pour chaque utilisateur. Par exemple, j'ai un ID utilisateur et je veux créer un dossier comme `/uploads/user_123/`. J'ai écrit ce code : ```php $user_id = 123; $upload_dir = wp_upload_dir(); $user_folder = $upload_dir['basedir'] . '/user_' . $user_id . '/'; if (!file_exists($user_folder)) { mkdir($user_folder); } // Ensuite je copie le fichier... move_uploaded_file($temp_file, $user_folder . '/avatar.jpg'); ``` Mais le problème est que si le dossier existe déjà, `mkdir()` émet un avertissement "Warning: mkdir(): File exists". Je comprends qu'on peut le supprimer avec `@`, mais j'ai entendu dire que c'est une mauvaise pratique. Comment créer correctement un dossier en PHP s'il n'existe pas encore, sans erreurs ni avertissements ? Existe-t-il une méthode plus fiable que ma solution artisanale avec `file_exists()` ? Et que faire si je dois créer des sous-dossiers ?