(PHP 4, PHP 5, PHP 7, PHP 8)
mkdir — Crée un dossier
$directory,$permissions = 0777,$recursive = false,$context = null
Tente de créer le dossier spécifié par directory.
directoryLe chemin du dossier.
Vous pouvez utiliser une URL comme nom de fichier avec cette fonction, si le gestionnaire fopen a été activé. Voyez fopen() pour plus de détails sur la façon de spécifier le nom du fichier. Reportez-vous aux Liste des protocoles et des gestionnaires supportés pour plus d'informations sur les capacités des différents gestionnaires, les notes sur leur utilisation, ainsi que les informations sur les variables prédéfinies qu'elles fournissent.
permissionsLes permissions par défaut sont 0777, ce qui correspond au maximum de droits possible. Pour plus d'informations sur les permissions, se référer à la documentation de la fonction chmod().
Note:
permissionsest ignoré sous Windows.
Il est à noter que l'on aura à préciser les permissions en base octale,
ce qui signifie que l'on aura probablement un 0 comme premier chiffre.
Les permissions seront aussi modifiées par le umask courant, qu'il est possible de
modifier avec la fonction umask().
recursive
Si true, alors tous les répertoires parents au directory spécifié seront également créés,
avec les mêmes permissions.
contextNote: Une resource de contexte de flux.
Cette fonction retourne true en cas de succès ou false si une erreur survient.
Note:
Si le répertoire à créer existe déjà, cela est considéré comme une erreur et
falsesera toujours retourné. Les fonctions is_dir() ou file_exists() peuvent être utilisées pour vérifier si le répertoire existe déjà avant d'essayer de le créer.
Émet une alerte de niveau E_WARNING si le dossier
existe déjà.
Émet une alerte de niveau E_WARNING si les permissions
empêchent la création du dossier.
Exemple #1 Exemple avec mkdir()
<?php
mkdir("/path/to/my/dir", 0700);
?>
Exemple #2 mkdir() utilisant le paramètre recursive
<?php
// Structure de dossier désirée
$structure = './depth1/depth2/depth3/';
// Pour créer une structure imbriquée, le paramètre $recursive
// doit être spécifié.
if (!mkdir($structure, 0777, true)) {
die('Échec lors de la création des dossiers...');
}
// ...
?>