Précédent   Forum des professionnels en informatique > PHP > Langage > Débuter
Débuter Forum d'entraide pour débuter en PHP. Avant de poster -> Cours PHP, FAQ PHP, Outils PHP, etc.
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 19/08/2011, 14h49   #1
Futur Membre du Club
 
Inscription : septembre 2008
Messages : 103
Détails du profil
Informations forums :
Inscription : septembre 2008
Messages : 103
Points : 18
Points : 18
Par défaut modfication valeur dans un objet

bonjour, je tente de modifier une valeur dans un objet aprés avoir pu le localiser via un array_filter.

morceau de mon objet :
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
Array
(
    [0] => Array
        (
            [id] => 540
            [name] => toto lafarce
            [login] => lat
            [departement] => Expedition
            [file] => 0
        )
 
    [1] => Array
        (
            [id] => 539
            [name] => piou pioou
            [login] => lae
            [departement] => Bureau des Prix
            [file] => 0
        )
Code :
1
2
3
4
5
6
7
8
function test($input) {
 global $trigger;
 
 if ($input[login] == $trigger){ return TRUE; } else { return FALSE; }
 }
 
$trigger = "lat";
print_r([array_filter($Resulats, "test" ));
maintenant je voudrais que la valeurs de "file" devienne 1

Mais je vois pas comment procéder.
junix est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 19/08/2011, 14h53   #2
Modérateur
 
Avatar de FirePrawn
 
Homme Sébastien
Ingénieur réalisateur
Inscription : mars 2011
Messages : 773
Détails du profil
Informations personnelles :
Nom : Homme Sébastien
Âge : 24
Localisation : France, Haut Rhin (Alsace)

Informations professionnelles :
Activité : Ingénieur réalisateur
Secteur : Industrie

Informations forums :
Inscription : mars 2011
Messages : 773
Points : 2 332
Points : 2 332
Bonjour,

?
__________________
- Avant toute chose : lire le mode d'emploi du forum et ses règles.
- avant de poster
- Je ne réponds pas aux questions techniques en MP.
FirePrawn est actuellement connecté   Envoyer un message privé Réponse avec citation 00
Vieux 19/08/2011, 14h56   #3
Futur Membre du Club
 
Inscription : septembre 2008
Messages : 103
Détails du profil
Informations forums :
Inscription : septembre 2008
Messages : 103
Points : 18
Points : 18
Comme sa ?
Code :
1
2
3
4
5
6
7
8
function test($input) {
 global $trigger;
 
 if ($input[login] == $trigger){$input[file]=1;  return TRUE; } else { return FALSE; }
 }
 
$trigger = "lat";
print_r([array_filter($Resulats, "test" ));
junix est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 19/08/2011, 15h16   #4
Futur Membre du Club
 
Inscription : septembre 2008
Messages : 103
Détails du profil
Informations forums :
Inscription : septembre 2008
Messages : 103
Points : 18
Points : 18
mais cela ne met pas à jour $Resultats
junix est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 19/08/2011, 16h40   #5
Modérateur
 
Avatar de FirePrawn
 
Homme Sébastien
Ingénieur réalisateur
Inscription : mars 2011
Messages : 773
Détails du profil
Informations personnelles :
Nom : Homme Sébastien
Âge : 24
Localisation : France, Haut Rhin (Alsace)

Informations professionnelles :
Activité : Ingénieur réalisateur
Secteur : Industrie

Informations forums :
Inscription : mars 2011
Messages : 773
Points : 2 332
Points : 2 332
Citation:
Envoyé par junix Voir le message
mais cela ne met pas à jour $Resultats
Tu passes quoi en paramètre à ta fonction ? On voit pas ton appel.
__________________
- Avant toute chose : lire le mode d'emploi du forum et ses règles.
- avant de poster
- Je ne réponds pas aux questions techniques en MP.
FirePrawn est actuellement connecté   Envoyer un message privé Réponse avec citation 00
Vieux 19/08/2011, 16h42   #6
Membre Expert
 
Avatar de Djakisback
 
Inscription : février 2005
Messages : 1 791
Détails du profil
Informations forums :
Inscription : février 2005
Messages : 1 791
Points : 1 681
Points : 1 681
Salut,
il me semble qu'il faut que tu passes une référence :

Code :
1
2
3
4
5
6
7
8
9
10
function test(&$input) {
    global $trigger;
    if ($input['login'] == $trigger){
        $input['file'] = 1;
        return TRUE;
    }
    else {
        return FALSE;
    }
 }
mais est-ce que tu veux vraiment filtrer ton tableau ? J'ai l'impression que c'est plutôt array_walk() qui t'intéresserait ou plutôt faire ta propre fonction.
__________________
Vive les roues en pierre
Djakisback est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 19/08/2011, 16h50   #7
Futur Membre du Club
 
Inscription : septembre 2008
Messages : 103
Détails du profil
Informations forums :
Inscription : septembre 2008
Messages : 103
Points : 18
Points : 18
l'appel de la fonction ce fait via : second paramétre

print_r([array_filter($Resulats, "test" ));
junix est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 19/08/2011, 17h06   #8
Futur Membre du Club
 
Inscription : septembre 2008
Messages : 103
Détails du profil
Informations forums :
Inscription : septembre 2008
Messages : 103
Points : 18
Points : 18
merci

le &$input fonctionne

je vais regarder array_walk()
junix 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 11h25.


 
 
 
 
Partenaires

Hébergement Web