Précédent   Forum des professionnels en informatique > PHP > Langage > Syntaxe
Syntaxe Forum d'entraide sur la syntaxe de PHP et la POO. Avant de poster -> FAQ syntaxe, Cours d'initiation et cours de POO
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 29/08/2011, 17h22   #1
Invité de passage
 
Inscription : mars 2011
Messages : 5
Détails du profil
Informations forums :
Inscription : mars 2011
Messages : 5
Points : 0
Points : 0
Par défaut Gros problème sur un tableau stdClass Object

Salut

Voici mon tableau :

Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
    [pvp] => stdClass Object
        (
            [arenaTeams] => Array
                (
                    [0] => stdClass Object
                        (
                            [name] => Ragna nous tuera
                            [personalRating] => 1656
                            [teamRating] => 1655
                            [size] => 2v2
                        )
 
                    [1] => stdClass Object
                        (
                            [name] => nul en pve nul en pvp
                            [personalRating] => 1835
                            [teamRating] => 1835
                            [size] => 3v3
                        )
 
                )
        )
Dans la partie "arenaTeams" il se peut qu'il y est 0, 1, 2 ou 3 type différent de "size", soit aucune, soit 2v2, 3v3 ou 5v5.

Mon problème est de savoir combien il y en a donc je fais un :

$count = count($profile->pvp->arenaTeams);

Je souhaite faire une fonction qui récupère les infos de la "size", donc en gros ça serai :

get_arena_personalRating($api, '2v2');


Mais le problème est que je ne sais pas du tout comment faire, j'ai essayé ça :

Code php :
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
function get_arena_personalRating($api, $size)
{
	$profile = $api->pull_JSON();
 
	$count = count($profile->pvp->arenaTeams);
 
	if($count > 0)
	{
		for($i = 0; $i < $count; $i++)
		{
			if(isset($profile->pvp->arenaTeams[$i]->size))
			{
				$personalRating = $profile->pvp->arenaTeams[$i]->personalRating;
				$teamRating = $profile->pvp->arenaTeams[$i]->teamRating;
				$size = $profile->pvp->arenaTeams[$i]->size;
			}
		}
	}
 
	else
	{
		$personalRating = 0;
		$teamRating = 0;
	}
}

Mais je ne sais pas récupérer les infos correctement, je bloque total, j'comprends rien

Un peu d'aide ? merci
TrAsHeR est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 29/08/2011, 17h32   #2
Modérateur
 
Inscription : septembre 2010
Messages : 7 116
Détails du profil
Informations forums :
Inscription : septembre 2010
Messages : 7 116
Points : 8 465
Points : 8 465
pourquoi tu fais pas un foreach ?
__________________
http://blog.stealth35.com/
stealth35 est actuellement connecté   Envoyer un message privé Réponse avec citation 00
Vieux 29/08/2011, 17h43   #3
Modératrice
 
Avatar de Celira
 
Femme
Développeuse PHP/Java
Inscription : avril 2007
Messages : 3 657
Détails du profil
Informations personnelles :
Sexe : Femme
Âge : 27
Localisation : France

Informations professionnelles :
Activité : Développeuse PHP/Java

Informations forums :
Inscription : avril 2007
Messages : 3 657
Points : 5 364
Points : 5 364
Je ne suis pas sure d'avoir compris : tu essayes d'extraire du tableau le sous-tableau des objets qui ont la bonne valeur de size ?
Quelque chose comme ça ?
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
function get_arena_personalRating($api, $size)
{
	$profile = $api->pull_JSON();
 
	$count = count($profile->pvp->arenaTeams);
 
	$arena_size = array();
 
	if($count > 0)
	{
		foreach ($profile->pvp->arenaTeams as $team) {
			if ($team->size == $size) {
				$arena_size[] = $team;
			}
		}
	}
	return $arena_size;
}
__________________
Modératrice PHP
Aucun navigateur ne propose d'extension boule-de-cristal : postez votre code et vos messages d'erreurs. (Rappel : "ça ne marche pas" n'est pas un message d'erreur)

Pour afficher votre code en couleurs : [CODE=php][/CODE] (bouton # de l'éditeur)
Celira est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 14h46.


 
 
 
 
Partenaires

Hébergement Web