Bonjour à tous,
j'ai un soucis avec un morceau de code pour lister et vérifier le contenu d'un répertoire.
J'ai un répertoire nommé pdf dans lequel je veux ranger mes pdfs. J'aimerai dans un soucis de rangement créer un sous dossier nommé de cette façon: [année][mois] pour trier par mois et année mes pdfs. Donc j'ai actuellement créé un dossier nommé 201007 par le biais de mon code.
Mon problème et que lorsque j'ai lancé mon code la première fois cela marchait nickel (normal le dossier n'existait pas, donc mon code l'a créé).
Mais une fois que le dossier existe ma ligne de code qui teste si le nom du dossier existe reste tout le temps en "false".
Du coup le script se lance pour créer le dossier (qui existe déjà) et je me mange une erreur.
Voici mon code
Ce que je ne comprends pas c'est pourquoi le test "if ($file == $nomdossier)" ne passe jamais à True bien qu'à un moment les deux variables ont bel et bien la même valeur.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30 <?php $nomdossier = date("Ym"); $dossierexiste = true; echo $nomdossier; echo "<br />"; if ($handle = opendir('./pdf/')) { while (false !== ($file = readdir($handle))) { echo "$file\n"; echo "<br />"; if ($file == $nomdossier) { $dossierexiste = true; } else { $dossierexiste = false; } } closedir($handle); } if ($dossierexiste === false) { echo'Passe mkdir'; mkdir("./pdf/".$nomdossier, 0777); } ?>
A savoir que je suis parti, du code donné en exemple sur php.net sur la fonction readdir.
Merci d'avance de votre aide.![]()
Partager