[PHP] Fonction qui ne marche pas
Résolu/Fermé
Sandriine
Messages postés
1255
Date d'inscription
samedi 9 décembre 2006
Statut
Membre
Dernière intervention
18 août 2010
-
5 mars 2008 à 13:43
Reivax962 Messages postés 3672 Date d'inscription jeudi 16 juin 2005 Statut Membre Dernière intervention 11 février 2021 - 5 mars 2008 à 14:19
Reivax962 Messages postés 3672 Date d'inscription jeudi 16 juin 2005 Statut Membre Dernière intervention 11 février 2021 - 5 mars 2008 à 14:19
A voir également:
- [PHP] Fonction qui ne marche pas
- Fonction si et - Guide
- Easy php - Télécharger - Divers Web & Internet
- Fonction moyenne excel - Guide
- Fonction somme excel - Guide
- Fonction remplacer word - Guide
2 réponses
Reivax962
Messages postés
3672
Date d'inscription
jeudi 16 juin 2005
Statut
Membre
Dernière intervention
11 février 2021
1 011
5 mars 2008 à 14:02
5 mars 2008 à 14:02
Bonjour,
Le problème, c'est que $affi n'existe pas au niveau de la fonction !
Tu as deux solutions pour ça :
Le plus simple, demander à la fonction de renvoyer un résultat :
Le problème, c'est que $affi n'existe pas au niveau de la fonction !
Tu as deux solutions pour ça :
Le plus simple, demander à la fonction de renvoyer un résultat :
function TesterSiNonVide($champ) { $resultat = ""; If (!empty($champ)) { $resultat = $champ."<br>" ; } return $resultat; } // [...] // et modifier les appels : $affi .= TesterSiNonVide($JeuEnr["adr2"]); $affi .= TesterSiNonVide($JeuEnr["adr3"]); $affi .= TesterSiNonVide($JeuEnr["adr4"]); // [...]Deuxième possibilité, moins recommandée mais plus simple à mettre en oeuvre, déclarer $affi comme globale au niveau de ta fonction :
function TesterSiNonVide($champ) { global $affi; If (!empty($champ)) { $affi=$affi.$champ."<br>" ; } }
Reivax962
Messages postés
3672
Date d'inscription
jeudi 16 juin 2005
Statut
Membre
Dernière intervention
11 février 2021
1 011
5 mars 2008 à 14:19
5 mars 2008 à 14:19
Exactement !
$var .= "truc"; remplace $var = $var."truc";
$var += 5; remplace $var = $var + 5;
$var -= 5; remplace $var = $var - 5;
Et dans le même genre d'idées,
$var ++; remplace $var = $var + 1;
Dans ce dernier cas, le remplacement est également avantageux en terme de temps de calcul, puisque c'est directement le registre processeur qui est utilisé pour l'incrémentation (1 seule opération, donc), au lieu d'avoir une affectation et une addition (2 opérations). Enfin ce n'est réellement utile que dans des programmes de très haut niveau, où la moindre microseconde gagnée est appréciable. Ceci dit, c'est toujours plus simple à écrire ^^
Xavier
$var .= "truc"; remplace $var = $var."truc";
$var += 5; remplace $var = $var + 5;
$var -= 5; remplace $var = $var - 5;
Et dans le même genre d'idées,
$var ++; remplace $var = $var + 1;
Dans ce dernier cas, le remplacement est également avantageux en terme de temps de calcul, puisque c'est directement le registre processeur qui est utilisé pour l'incrémentation (1 seule opération, donc), au lieu d'avoir une affectation et une addition (2 opérations). Enfin ce n'est réellement utile que dans des programmes de très haut niveau, où la moindre microseconde gagnée est appréciable. Ceci dit, c'est toujours plus simple à écrire ^^
Xavier
5 mars 2008 à 14:10
Et j'aurais voulu faire une boucle for pour éviter de répeter les TesterSiNonVide
Mais ça ne marche pas...