Précédent   Forum des professionnels en informatique > PHP > Langage
Langage Forum sur le langage PHP, la POO, les conventions, la sécurité, etc. Avant de poster : FAQ Langage, toutes les FAQ PHP, cours langage et sources PHP
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 26/12/2010, 08h42   #1
Invité régulier
 
Inscription : mars 2008
Messages : 32
Détails du profil
Informations forums :
Inscription : mars 2008
Messages : 32
Points : 7
Points : 7
Par défaut fonction count() me retourne toujours 1

Bonjour a tous et joyeux Noel !

J'ai un petit bout de code ici qui stock le nom de mes fichiers (situés dans un dossier) dans un tableau, et je voudrais tout simplement compter le nombre d'éléments dans le tableau.

J'ai essayer la fonction count(), sizeof() mais cela me retourne toujours 1.

Quelqu'un aurait une idée de la source du problème?

Merci bien.

Code :
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
 
<?php
 
if ($handle = opendir('dossier'))
{
 
	$i = 1;
	$img = array();
    /* Ceci est la façon correcte de traverser un dossier. */
    while (false !== ($file = readdir($handle))) 
	{
        if ($file != "." && $file != "..")
		{
			$img[i] = $file;
			echo "$img[i]\n";
 
			$i++;
		}
    }
    closedir($handle);
 
}
 
$taille = count($img);
echo $taille;
 
?>
Leclandestin est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 26/12/2010, 09h57   #2
Expert Confirmé
 
Avatar de RunCodePhp
 
Inscription : janvier 2010
Messages : 2 702
Détails du profil
Informations personnelles :
Localisation : Réunion

Informations forums :
Inscription : janvier 2010
Messages : 2 702
Points : 3 271
Points : 3 271
Salut

Code :
1
2
$img[i] = $file;
echo "$img[i]\n";
Erreur d'inattention ou confusion avec Javascript mais l'indice (ou la clé) c'est $i (et non i).

Aussi, commence l'indexation par 0 et non 1 ($i = 0), le tableau sera parfaitement indicé.
Ca peut être piégeant.
Que l'indice commence par 0 n'est pas un problème, ça sera le 1er élément quand même.
Mais ça reste un détail néanmoins.



Noël étant passé (vitesse grand V, comme d'hab), faut dire : Bonne Année maintenant.
__________________
Win XP | WampServer 2.2d | Apache 2.2.21 | Php 5.3.10 | MySQL 5.5.20
Si debugger, c'est supprimer des bugs, alors programmer ne peut être que les ajouter [Edsger Dijkstra]
RunCodePhp est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 26/12/2010, 18h28   #3
Invité régulier
 
Inscription : mars 2008
Messages : 32
Détails du profil
Informations forums :
Inscription : mars 2008
Messages : 32
Points : 7
Points : 7
Merci Chef, ca m'a effectivement echappé .

Bonne année à toi aussi !
Leclandestin est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 11h37.


 
 
 
 
Partenaires

Hébergement Web