Ciao,
le variabili dichiarate o settate all'interno di una funzione sono valide solo nella funzione stessa.
Per renderle "globali" occorre dichiararle globali, così:
Codice non testatocodice:$var=4; function settaVar($num) { global $var; echo "step2: \$var è $var "; $var= $num; echo "step3: \$var è ora $var "; } echo "step1: \$var è $var"; settaVar(20); echo "step4: \$var è sempre $var";