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 17/07/2008, 20h24   #1
Membre émérite
 
Assistant recherche bioinfo
Inscription : novembre 2007
Messages : 805
Détails du profil
Informations personnelles :
Localisation : Canada

Informations professionnelles :
Activité : Assistant recherche bioinfo

Informations forums :
Inscription : novembre 2007
Messages : 805
Points : 830
Points : 830
Par défaut tableau modifié sans instruction de modification

Bonjour a tous,
Mon code et quelques print_r seront plus demonstratifs que toutes explications, voici :
Code :
1
2
3
4
5
6
7
8
9
<?php
print_r($columns);
print_r($titles);
foreach($columns as $key => $value) {
	print_r($titles);
	die;
	[other instructions]
	}
?>
And here is extract of each print_r:
Code :
1
2
3
4
5
6
7
8
9
10
print_r($columns):
Array
(
  [project_cmts] => Array
    (
      [title] => Project comments
      [excel] => Project comments
    )
    [...]
)
Code :
1
2
3
4
5
6
7
1er print_r($titles):
Array
(
    [...]
    [Comments] => //chaine vide
    [...]
)
Code :
1
2
3
4
5
6
7
8
9
10
11
2eme print_r($titles):
Array
(
    [...]
    [Comments] => Array
        (
            [title] => Project comments
            [excel] => Project comments
        )
    [...]
)
Comme vous pouvez le voir, le contenu du tableau $titles a changer. Comment, pourquoi ?
Je n'arrive pas a comprendre ou est l'erreur.

merci !
Z.
Zwiter est actuellement connecté   Envoyer un message privé Réponse avec citation 00
Vieux 17/07/2008, 20h39   #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 383
Points : 16 383
Je dirais que le probleme se cache dans une partie que tu ne nous a pas mise car en reconstituant ton code chez moi, il fonctionne comme attendu.

Code :
1
2
3
4
5
6
7
8
$columns['project_cmts'] = array('title'=>'Project comments', 'excel'=>'Project comments'); 
$titles = array('comments'=>'');
print_r ($columns);
print_r ($titles);
foreach($columns as $key => $value) {
	print_r ($titles);
	die;
	}
Citation:
Array
(
[project_cmts] => Array
(
[title] => Project comments

[excel] => Project comments

)

)
Array
(
[comments] =>
)
Array
(
[comments] =>
)
sabotage est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 17/07/2008, 20h43   #3
Membre émérite
 
Assistant recherche bioinfo
Inscription : novembre 2007
Messages : 805
Détails du profil
Informations personnelles :
Localisation : Canada

Informations professionnelles :
Activité : Assistant recherche bioinfo

Informations forums :
Inscription : novembre 2007
Messages : 805
Points : 830
Points : 830
Si tu as une idee meme vague sur l'origine de l'erreur...
une piste...

uniquement l'entree 'comment' est modifee.
J'ai aussi fait le test en supriment toute instructions dans le foreach :
Code :
1
2
3
4
5
6
7
8
9
<?php
print_r($columns);
print_r($titles);
foreach($columns as $key => $value) {
	print_r($titles);
	die;
	}
 
?>
Mais le probleme subsiste.
Zwiter est actuellement connecté   Envoyer un message privé Réponse avec citation 00
Vieux 17/07/2008, 20h51   #4
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 383
Points : 16 383
Si peux m'envoyer tes fichiers, je regarde mais c'est etrange c'est sur.
sabotage est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 17/07/2008, 20h52   #5
Membre émérite
 
Assistant recherche bioinfo
Inscription : novembre 2007
Messages : 805
Détails du profil
Informations personnelles :
Localisation : Canada

Informations professionnelles :
Activité : Assistant recherche bioinfo

Informations forums :
Inscription : novembre 2007
Messages : 805
Points : 830
Points : 830
probleme trouver.
je ne voyais plus qu'une explication, les references.
Effectivement, plus haut, j'utilise une reference :
Code :
1
2
3
4
5
6
7
8
9
//marche nikel
	$titles = array_flip($titles);
	foreach ($titles as $key => $value)
		$titles[$key] = NULL;
 
//provoque le probleme
	$titles = array_flip($titles);
	foreach ($titles as &$value)
		$value = NULL;
Je pensais que la reference allait disparaitre apres le foreach.
je devrais arreter de faire en meme temps du perl et du php
php n'utilise pas de variables locales a l'interieur des bloques de code contrairement a perl

merci pour ton aide
Z.
Zwiter est actuellement 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 21h36.


 
 
 
 
Partenaires

Hébergement Web