Bonjour,
J'ai un bug étrange sur return dans une fonction:
si je fais:
echo mafonction();
cela n'affiche rien si je fais un
return 0 ou return false (c'est normal),
cela affiche "1" si je fais
return "toto" ou return 2 (ou $this->serveroutput->status dans la vraie vie);
Ca fait bien 3 heures que je sèche...
Le fichier:
cvs -z3 \
-d:pserver:anonymous@cvs.savannah.nongnu.org:/sources/phpprintipp \
co phpprintipp
fichier "PrintIPP.php", ligne 1000 (function getPrinterAttributes).
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Yves_Guyane
Bonjour, J'ai un bug étrange sur return dans une fonction:
si je fais: echo mafonction();
cela n'affiche rien si je fais un return 0 ou return false (c'est normal), cela affiche "1" si je fais return "toto" ou return 2 (ou $this->serveroutput->status dans la vraie vie);
Ca fait bien 3 heures que je sèche...
Le fichier:
cvs -z3 -d:pserver::/sources/phpprintipp co phpprintipp
fichier "PrintIPP.php", ligne 1000 (function getPrinterAttributes).
function test (){ return "toto"; }
echo test();
me renvoit : toto
tu n'as pas oublié les " ?
Bonjour,
J'ai un bug étrange sur return dans une fonction:
si je fais:
echo mafonction();
cela n'affiche rien si je fais un
return 0 ou return false (c'est normal),
cela affiche "1" si je fais
return "toto" ou return 2 (ou $this->serveroutput->status dans la vraie vie);
Ca fait bien 3 heures que je sèche...
Le fichier:
cvs -z3
-d:pserver:anonymous@cvs.savannah.nongnu.org:/sources/phpprintipp
co phpprintipp
fichier "PrintIPP.php", ligne 1000 (function getPrinterAttributes).
Bonjour, J'ai un bug étrange sur return dans une fonction:
si je fais: echo mafonction();
cela n'affiche rien si je fais un return 0 ou return false (c'est normal), cela affiche "1" si je fais return "toto" ou return 2 (ou $this->serveroutput->status dans la vraie vie);
Ca fait bien 3 heures que je sèche...
Le fichier:
cvs -z3 -d:pserver::/sources/phpprintipp co phpprintipp
fichier "PrintIPP.php", ligne 1000 (function getPrinterAttributes).
function test (){ return "toto"; }
echo test();
me renvoit : toto
tu n'as pas oublié les " ?
Thomas Harding
function test (){ return "toto"; }
echo test();
me renvoit : toto
tu n'as pas oublié les " ?
Rassure-toi : non (j'ai le problème sur _une_ fonction, et je l'ai triturée dans tous les sens en mettant justement return "toto", return 1; return 2; et j'en passe... :)
J'ai beau retourner le problème dans tous les sens, je ne comprends pas.
merci quand-même, -- Thomas Harding
function test (){
return "toto";
}
echo test();
me renvoit : toto
tu n'as pas oublié les " ?
Rassure-toi : non (j'ai le problème sur _une_ fonction, et je l'ai
triturée dans tous les sens en mettant justement return "toto", return
1; return 2; et j'en passe... :)
J'ai beau retourner le problème dans tous les sens, je ne comprends pas.
Rassure-toi : non (j'ai le problème sur _une_ fonction, et je l'ai triturée dans tous les sens en mettant justement return "toto", return 1; return 2; et j'en passe... :)
J'ai beau retourner le problème dans tous les sens, je ne comprends pas.
merci quand-même, -- Thomas Harding
Olivier Miakinen
tu n'as pas oublié les " ?
Rassure-toi : non (j'ai le problème sur _une_ fonction, et je l'ai triturée dans tous les sens en mettant justement return "toto", return 1; return 2; et j'en passe... :)
Et si tu mettais à disposition le fichier autrement que via cvs, pour que tout le monde puisse le lire ? Une façon simple consisterait à le mettre sur un site web, sans suffixe pour qu'il ne soit pas interprété par PHP. Une autre façon : <http://www.cjoint.com/>.
-- Olivier Miakinen Troll du plus sage chez les conviviaux : le nouveau venu, avec son clan, s'infiltre dans les groupes de nouvelles. (3 c.)
tu n'as pas oublié les " ?
Rassure-toi : non (j'ai le problème sur _une_ fonction, et je l'ai
triturée dans tous les sens en mettant justement return "toto", return
1; return 2; et j'en passe... :)
Et si tu mettais à disposition le fichier autrement que via cvs, pour
que tout le monde puisse le lire ? Une façon simple consisterait à le
mettre sur un site web, sans suffixe pour qu'il ne soit pas interprété
par PHP. Une autre façon : <http://www.cjoint.com/>.
--
Olivier Miakinen
Troll du plus sage chez les conviviaux : le nouveau venu, avec
son clan, s'infiltre dans les groupes de nouvelles. (3 c.)
Rassure-toi : non (j'ai le problème sur _une_ fonction, et je l'ai triturée dans tous les sens en mettant justement return "toto", return 1; return 2; et j'en passe... :)
Et si tu mettais à disposition le fichier autrement que via cvs, pour que tout le monde puisse le lire ? Une façon simple consisterait à le mettre sur un site web, sans suffixe pour qu'il ne soit pas interprété par PHP. Une autre façon : <http://www.cjoint.com/>.
-- Olivier Miakinen Troll du plus sage chez les conviviaux : le nouveau venu, avec son clan, s'infiltre dans les groupes de nouvelles. (3 c.)
Paul Delannoy
Thomas Harding a écrit:
function test (){ return "toto"; } echo test();
me renvoie : toto
tu n'as pas oublié les " ?
Rassure-toi : non (j'ai le problème sur _une_ fonction, et je l'ai triturée dans tous les sens en mettant justement return "toto", return 1; return 2; et j'en passe... :)
J'ai beau retourner le problème dans tous les sens, je ne comprends pas.
Je crois pouvoir dire : le type de données renvoyé par return est fixé ( "par qqchose" mai quoi ?) à "booléen".
Thomas Harding a écrit:
function test (){
return "toto";
}
echo test();
me renvoie : toto
tu n'as pas oublié les " ?
Rassure-toi : non (j'ai le problème sur _une_ fonction, et je l'ai
triturée dans tous les sens en mettant justement return "toto", return
1; return 2; et j'en passe... :)
J'ai beau retourner le problème dans tous les sens, je ne comprends pas.
Je crois pouvoir dire : le type de données renvoyé par return est fixé
( "par qqchose" mai quoi ?) à "booléen".
Rassure-toi : non (j'ai le problème sur _une_ fonction, et je l'ai triturée dans tous les sens en mettant justement return "toto", return 1; return 2; et j'en passe... :)
J'ai beau retourner le problème dans tous les sens, je ne comprends pas.
Je crois pouvoir dire : le type de données renvoyé par return est fixé ( "par qqchose" mai quoi ?) à "booléen".
Thomas Harding
Le 06-01-2006, Olivier Miakinen <om+ a écrit : [ fonction retournant true or false à la place d'une chîne de caractères ]
Rassure-toi : non (j'ai le problème sur _une_ fonction, et je l'ai triturée dans tous les sens en mettant justement return "toto", return 1; return 2; et j'en passe... :)
Et si tu mettais à disposition le fichier autrement que via cvs, pour que tout le monde puisse le lire ? Une façon simple consisterait à le mettre sur un site web, sans suffixe pour qu'il ne soit pas interprété par PHP. Une autre façon : <http://www.cjoint.com/>.
Merci : Je n'avais pas pensé à çà !
[le site web est mis à jour par CVS, avec une crontab : ça devrait être disponible le 6/01 vers 19 heures]
La fonction seule : <URL:http://www.nongnu.org/phpprintipp/problems/getPrinterAttributes>
La classe complète : <URL:http://www.nongnu.org/phpprintipp/phpprintipp/problems/PrintIPP>
Le 06-01-2006, Olivier Miakinen <om+news@miakinen.net> a écrit :
[ fonction retournant true or false à la place d'une chîne de
caractères ]
Rassure-toi : non (j'ai le problème sur _une_ fonction, et je l'ai
triturée dans tous les sens en mettant justement return "toto", return
1; return 2; et j'en passe... :)
Et si tu mettais à disposition le fichier autrement que via cvs, pour
que tout le monde puisse le lire ? Une façon simple consisterait à le
mettre sur un site web, sans suffixe pour qu'il ne soit pas interprété
par PHP. Une autre façon : <http://www.cjoint.com/>.
Merci : Je n'avais pas pensé à çà !
[le site web est mis à jour par CVS, avec une crontab : ça devrait
être disponible le 6/01 vers 19 heures]
La fonction seule :
<URL:http://www.nongnu.org/phpprintipp/problems/getPrinterAttributes>
La classe complète :
<URL:http://www.nongnu.org/phpprintipp/phpprintipp/problems/PrintIPP>
Le 06-01-2006, Olivier Miakinen <om+ a écrit : [ fonction retournant true or false à la place d'une chîne de caractères ]
Rassure-toi : non (j'ai le problème sur _une_ fonction, et je l'ai triturée dans tous les sens en mettant justement return "toto", return 1; return 2; et j'en passe... :)
Et si tu mettais à disposition le fichier autrement que via cvs, pour que tout le monde puisse le lire ? Une façon simple consisterait à le mettre sur un site web, sans suffixe pour qu'il ne soit pas interprété par PHP. Une autre façon : <http://www.cjoint.com/>.
Merci : Je n'avais pas pensé à çà !
[le site web est mis à jour par CVS, avec une crontab : ça devrait être disponible le 6/01 vers 19 heures]
La fonction seule : <URL:http://www.nongnu.org/phpprintipp/problems/getPrinterAttributes>
La classe complète : <URL:http://www.nongnu.org/phpprintipp/phpprintipp/problems/PrintIPP>
[ fonction retournant true or false à la place d'une chîne de caractères ]
J'ai trouvé !
J'avais complètement oublié que je surchargeais la fonction dans la classe appelante, faisant un appel à parent::mafonction(), et retournant false si elle était fausse ou continuant le traitement si elle était vraie, avec un return true à la fin.
Je m'explique :
class toto {
function mafonction () {
if (truc()) return "toto"; else return false;
}
};
class titi extends toto {
function mafonction () {
if (!parent::mafonction()) return false;
blabllabla;
return true; }
};
La correction :
class titi extends toto {
function mafonction () {
if (!$result = parent::mafonction()) return false;
blabllabla pas vital de la fonction supplémentaire;
return $result; }
};
Désolé de tout ce ramdam :( -- Thomas Harding
[ fonction retournant true or false à la place d'une chîne de
caractères ]
J'ai trouvé !
J'avais complètement oublié que je surchargeais la fonction dans la
classe appelante, faisant un appel à parent::mafonction(), et retournant
false si elle était fausse ou continuant le traitement si elle était
vraie, avec un return true à la fin.
Je m'explique :
class toto {
function mafonction () {
if (truc())
return "toto";
else
return false;
}
};
class titi extends toto {
function mafonction () {
if (!parent::mafonction())
return false;
blabllabla;
return true;
}
};
La correction :
class titi extends toto {
function mafonction () {
if (!$result = parent::mafonction())
return false;
blabllabla pas vital de la fonction supplémentaire;
[ fonction retournant true or false à la place d'une chîne de caractères ]
J'ai trouvé !
J'avais complètement oublié que je surchargeais la fonction dans la classe appelante, faisant un appel à parent::mafonction(), et retournant false si elle était fausse ou continuant le traitement si elle était vraie, avec un return true à la fin.
Je m'explique :
class toto {
function mafonction () {
if (truc()) return "toto"; else return false;
}
};
class titi extends toto {
function mafonction () {
if (!parent::mafonction()) return false;
blabllabla;
return true; }
};
La correction :
class titi extends toto {
function mafonction () {
if (!$result = parent::mafonction()) return false;
blabllabla pas vital de la fonction supplémentaire;