http://cl.php.net/manual/es/language...s.variable.php
esa es la historia de $$
lo que hace con el foreach es que lee todo lo que esta en la sesion
prueba esto
si no te funciona le pongo mas neurona al asunto
Código PHP:
foreach ($_SESSION['carrito'] as $codigo => $cantidad)
{
if($cantidad=="0")
unset($_SESSION['carrito'][$codigo]);
else
$_SESSION['carrito'][$codigo] = $cantidad;
}