Cita:
Iniciado por argy y además que una variable que se declara dentro de un ciclo termina cuando el ciclo(valga la redundancia ) termina, es decir que la variable existe sólo dentro del ciclo
No, esto no aplica para php, el ámbito de variables de php sólo se restringe para los bloques de función, no para los ciclos, como resultado toda variable declarada dentro de un ciclo puede accederse fuera de éste, caso contrario de las variables superglobales, que tienen ámbito en todo el script.
En cambio si declaras una variable en el script, en las funciones del mismo script no tendrán acceso a la variable, sino que la re-declararán, a menos que se utilice la palabra
global:
Código PHP:
$mivariable="valor principal";
function metodouno(){
echo 'uno:'.$mivariable; //no imprimirá NADA
}
function metododos(){
global $mivariable;
echo 'dos:'.$mivariable; //imprimirá "valor principal"
}
metodouno();
metododos();
esto ocurre porque php no requiere la declaración explícita de variables y no tiene restricción de tipos (sólo PHP5 al paso de parámetros de clases, pero no una restricción de tipos completa)