Précédent   Forum des professionnels en informatique > PHP > Langage > Fonctions
Fonctions Forum d'entraide sur les fonctions PHP. Avant de poster -> FAQ fonctions et Sources diverses
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 07/05/2011, 12h17   #1
Membre confirmé
 
Avatar de renaud26
 
Inscription : mars 2003
Messages : 1 043
Détails du profil
Informations personnelles :
Âge : 48
Localisation : France, Puy de Dôme (Auvergne)

Informations forums :
Inscription : mars 2003
Messages : 1 043
Points : 285
Points : 285
Par défaut Comportement bizarre de la fonction is_array

Bonjour à tous,

Je suis confronté à un drôle de truc :

Code :
1
2
3
4
5
6
7
8
9
10
11
 
foreach ($_POST['id_affi'] as $i=>$id_affi){
 
	print_r($_POST['id_commission'][$i]);
 
	if(is_array($_POST['id_commission'][$i])){
		echo "tableau<br>";
	}else{
		echo "pas tableau<br>";
	}
}
Affiche :

Citation:
Array
(
[0] => 2
[1] => 1
[2] => 9
[3] => Array
[4] => 11
[5] => 17
[6] => 21
)

pas tableau
pas tableau
pas tableau
pas tableau
pas tableau
pas tableau
pas tableau
Qu'est ce que c'est que ce délire ?
renaud26 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 07/05/2011, 14h51   #2
Modérateur
 
Avatar de sabotage
 
Homme Vincent
Inscription : juillet 2005
Messages : 14 929
Détails du profil
Informations personnelles :
Nom : Homme Vincent

Informations forums :
Inscription : juillet 2005
Messages : 14 929
Points : 16 381
Points : 16 381
Qu'est ce qui te pose problème ?
sabotage est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 07/05/2011, 15h02   #3
Membre du Club
 
Inscription : mai 2010
Messages : 45
Détails du profil
Informations forums :
Inscription : mai 2010
Messages : 45
Points : 67
Points : 67
Bonjour,

Peux tu envoyer le contenu de POST dans ton cas que je teste chez moi?
nonolagalinette est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 12/05/2011, 15h57   #4
Membre régulier
 
Avatar de Pierrot2Mars
 
Homme Pierrot
Développeur Web
Inscription : novembre 2010
Messages : 79
Détails du profil
Informations personnelles :
Nom : Homme Pierrot
Localisation : France

Informations professionnelles :
Activité : Développeur Web

Informations forums :
Inscription : novembre 2010
Messages : 79
Points : 96
Points : 96
Salut,

$_POST['id_commission'] est un tableau.
$_POST['id_commission'][$i] est une chaîne de caractère.
Code :
1
2
3
4
$_POST['id_commission'][0] = 2
$_POST['id_commission'][1] = 1
$_POST['id_commission'][2] = 9
...
C'est pour ça que is_array renvoie false.
Pierrot2Mars est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 12/05/2011, 16h25   #5
Expert Confirmé
 
Avatar de Séb.
 
Inscription : mars 2005
Messages : 2 823
Détails du profil
Informations personnelles :
Âge : 34
Localisation : France

Informations professionnelles :
Secteur : High Tech - Opérateur de télécommunications

Informations forums :
Inscription : mars 2005
Messages : 2 823
Points : 3 449
Points : 3 449
$_POST['id_commission'][3] contient la chaîne de caractères Array et pas un tableau PHP, autrement print_r( ) aurait affiché le contenu du tableau.
__________________
Un problème exposé clairement est déjà à moitié résolu
Keep It Smart and Simple
Séb. est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 12/05/2011, 16h34   #6
Membre régulier
 
Avatar de Pierrot2Mars
 
Homme Pierrot
Développeur Web
Inscription : novembre 2010
Messages : 79
Détails du profil
Informations personnelles :
Nom : Homme Pierrot
Localisation : France

Informations professionnelles :
Activité : Développeur Web

Informations forums :
Inscription : novembre 2010
Messages : 79
Points : 96
Points : 96
Citation:
Envoyé par Séb. Voir le message
$_POST['id_commission'][3] contient la chaîne de caractères Array et pas un tableau PHP, autrement print_r( ) aurait affiché le contenu du tableau.
Je pense plutôt que Array est une chaine de caractères et non pas une indication que c'est un tableau.
Je parie que strlen($_POST['id_commission'][3]) est égal à 5.
Pierrot2Mars est déconnecté   Envoyer un message privé Réponse avec citation 01
Vieux 12/05/2011, 16h35   #7
Expert Confirmé
 
Avatar de Séb.
 
Inscription : mars 2005
Messages : 2 823
Détails du profil
Informations personnelles :
Âge : 34
Localisation : France

Informations professionnelles :
Secteur : High Tech - Opérateur de télécommunications

Informations forums :
Inscription : mars 2005
Messages : 2 823
Points : 3 449
Points : 3 449
Citation:
Envoyé par Pierrot2Mars Voir le message
Je pense plutôt que Array est une chaine de caractères et non pas une indication que c'est un tableau.
Oui c'est ce que j'ai dit
__________________
Un problème exposé clairement est déjà à moitié résolu
Keep It Smart and Simple
Séb. est déconnecté   Envoyer un message privé Réponse avec citation 01
Vieux 12/05/2011, 16h46   #8
Membre régulier
 
Avatar de Pierrot2Mars
 
Homme Pierrot
Développeur Web
Inscription : novembre 2010
Messages : 79
Détails du profil
Informations personnelles :
Nom : Homme Pierrot
Localisation : France

Informations professionnelles :
Activité : Développeur Web

Informations forums :
Inscription : novembre 2010
Messages : 79
Points : 96
Points : 96
Désolé, j'ai lu un peu trop rapidement !
++
Pierrot2Mars est déconnecté   Envoyer un message privé Réponse avec citation 01
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 12h44.


 
 
 
 
Partenaires

Hébergement Web