Question fonction PHP et return
playboy-1990
Messages postés
593
Statut
Membre
-
avion-f16 Messages postés 20367 Statut Contributeur -
avion-f16 Messages postés 20367 Statut Contributeur -
Bonjour,
J'ai entendus dire que si la commande return est appelé dans une fonction elle arrête la fonction.
Donc je me demande si cette fonction est correcte :
Merci d'avance dans l'attente d'une réponse ;)
J'ai entendus dire que si la commande return est appelé dans une fonction elle arrête la fonction.
Donc je me demande si cette fonction est correcte :
<?php
function test($letest='') {
if(!empty($letest)) {
return $letest;
return true;
} else {
return false;
}
}
?>
Merci d'avance dans l'attente d'une réponse ;)
A voir également:
- Question fonction PHP et return
- Fonction si et - Guide
- Easy php - Télécharger - Divers Web & Internet
- Fonction miroir - Guide
- Fonction moyenne excel - Guide
- Expert php pinterest - Télécharger - Langages
3 réponses
Salut,
Avec une meilleure indentation :
Si la chaine n'est pas vide, ta fonction retourne la chaine.
Je suppose que le but est de retourner true ou false, donc il faut supprimer la ligne :
Avec une meilleure indentation :
<?php
function test($letest='') {
if(!empty($letest)) {
return $letest;
return true;
} else {
return false;
}
}
Si la chaine n'est pas vide, ta fonction retourne la chaine.
Je suppose que le but est de retourner true ou false, donc il faut supprimer la ligne :
return $letest;
bonjour, essaye
return true . $letest;Car dans ton code le second return ne sera jamais pris en compte.
Sinon tu peut essayer les "références" (https://www.php.net/manual/fr/language.references.pass.php )
ex:
D'ailleurs dans ta fonction function test($letest='') fait que $letest ne sera jamais vide, vu que tu lui asigne une valeur par défaut...
ex:
$a=1
function test(&$letest)
{
if(!empty($letest))
{
$letest++;
return true;
}
else
{
return false;
}
}
test($a)
echo $a //affiche 2
D'ailleurs dans ta fonction function test($letest='') fait que $letest ne sera jamais vide, vu que tu lui asigne une valeur par défaut...
La solution est donc de retourner false ou bien la chaine.
Et une chaine qui n'est pas vide est égale à true.
Donc :
<?php function test($letest='') { if(!empty($letest)) { return $letest; } else { return false; } } $chaine = '...'; if(test($chaine) == true) { echo 'Pas vide'; } else { echo 'Vide'; } ?>