El implode espera un array, no funciona sobre algo que no se un vector, es decir que el implode no funciona sobre string porque lo que hace es recorrer el vector y concatenarlo con un caracter que vos desees.
Lo que podes hacer en tu caso son 2 cosas:
1. Vas acumulando en un array los valores luego del case. Ejemplo:
Código PHP:
Ver originalforeach ($_SESSION['carrito'] as $key => $value) {
foreach ($value as $key => $value) {
switch ($key) {
case 'id':
$ids[] = $value;
break;
}
}
}
O bien podes acumular en una variable todos los strings separados por coma. Algo asi:
Código PHP:
Ver original$var = "";
foreach ($_SESSION['carrito'] as $key => $value) {
foreach ($value as $key => $value) {
switch ($key) {
case 'id':
$var = $value;
} else {
$var .= "," . $value;
}
break;
}
}
}
echo $var;
Saludos!