Originariamente inviato da gorka77
E' inclusa ma non va
Se la modifico così
<?
function maiuscolo($stringa)
{
$stringa = trim(strtoupper($stringa));
echo "Stringa $stringa
";
}
?>
Ho verificato che visualizza la stringa in maiuscolo
Però il campo che ho passato ( $nome ad esempio ) rimane minuscolo.
Quindi dovrei riuscire a fare in modo che $nome = $stringa ?
è normale che rimanga minuscolo... la variabile che hai passato è per valore, quindi se vuoi che la stringa che tu passi alla funzione venga modificata devi fare una chiamata per riferimento...
cmq se hai risolto con il return va bene. cmq considera che se fai
codice:
$a = "abc";
grande($a);
echo($a);
function grande($a) {
$a = "ABC"
}
viene stampato cmq "abc" per il motivo sopra
codice:
$a = "abc";
$a = grande($a); *****
echo($a);
function grande($a) {
$a = "ABC"
return $a;
}
ti stampa "ABC" poichè hai usato la return e hai sovrascritto il valore "abc" di $a con quello ritornato dalla return. NB che la $a della funzione è diversa da quella che usi qui *****
codice:
$a = "abc";
grande($a); ££££
echo($a);
function grande(&$a) {
$a = "ABC"
}
ti stampa "ABC" poiche ho usato una chiamata per riferimento e la variabile "usata" dalla funzione è la stessa di ££££, più che altro il riferimento alla variabile usato dalla funzione è lo stesso....
VVoVe: VVoVe: VVoVe:
spero di averti chiarito le cose..