Yo creo que no. Lo que estas haciendo es liberar memoria, una url no será muy pesada (a no ser que tenas 16mb de ram:P), y poniendo en la balanza este caso creo que el que esta dentro de la iteración no aporta nada y puede hasta sacar rendimiento, lo mismo con los if.
El que esta afuera puede ser, aunque yo suelo hacer directamente un
$url = explode('/', $url); pisando la memoria. Si es mejor o no no sabría decirte, igual es muy poco el proceso que se tiene como para preocuparse en este ejemplo
. Igual, yo lo haría así (que no quiere decir que sea mejor eh!:P):
Código PHP:
function trozarUrl($url){
$url = explode('/', $url);
$return = array();
foreach ($url as $c => $v) $return[$c] = $v;
return $return;
}
print_r(trozarUrl($_SERVER['REQUEST_URI']));