Il valore di ritorno di una funzione, in generale, è una parte della convenzione tra il chiamante e il chiamato. È un modo per il chiamante di determinare quale è stato il risultato dell'esecuzione della funzione.
Specificamente concependo il tuo esempio, questa funzione restituisce false
nel caso di errore nel reimpostare la password. Il chiamante può trarre vantaggio da queste informazioni e agire di conseguenza. Ad esempio:
$outcome=$anObj->reset_password('opensessame','some_user');
if($outcome)
echo "Password was successfully reset.";
else
{
$err=$anObj->err_msg[count($anObj->err_msg)-1]; // last element
echo "Password Reset Failure because: $err";
}
Ma questo non deve essere interpretato come " un valore di ritorno false
significa che qualcosa è andato storto ". Molte funzioni restituiscono false
perché questo è il vero risultato dell'esecuzione dopo il successo. Prendi ad esempio in_array()
. Dai documenti :
Description
bool in_array ( mixed $needle , array $haystack [, bool $strict =
FALSE ] )
Searches haystack for needle using loose comparison unless strict is
set.
Return Values
Returns TRUE if needle is found in the array, FALSE otherwise.