Foro de elhacker.net

Programación => PHP => Mensaje iniciado por: XafiloX en 27 Junio 2009, 12:21 pm



Título: cont($_SESSION)
Publicado por: XafiloX en 27 Junio 2009, 12:21 pm
Hola, tengo una dudilla teorica...

Si yo hago count($_SESSION), me devolverá el numero de "elementos" que hay dentro de MI sesion, o me devolvera el numero de sesiones que hay en el servidor??

Es que me he creado un array multidimensional con una sesion, para asi poder tener varias cuentas abiertas con la misma sesion y quiero hacer el count para sabar si tengo que utilizar unset a la hora de desloguearse o session_destroy...


Título: Re: cont($_SESSION)
Publicado por: [u]nsigned en 27 Junio 2009, 12:41 pm
Si yo hago count($_SESSION), me devolverá el numero de "elementos" que hay dentro de MI sesion, o me devolvera el numero de sesiones que hay en el servidor??

Te devolvera el numero de elementos del array $_SESSION, del primer orden. Por ejemplo:
Código
  1. <?php
  2. $_SESSION[nombre_completo][nombre]="Facku";
  3. $_SESSION[nombre_completo][apellido]="xD";
  4. $_SESSION[color]="rojo";
  5. echo count($_SESSION);
  6. ?>
  7.  

Te saldria 2, es decir contaria a [nombre_completo] y a [color].

Es que me he creado un array multidimensional con una sesion, para asi poder tener varias cuentas abiertas con la misma sesion y quiero hacer el count para sabar si tengo que utilizar unset a la hora de desloguearse o session_destroy...

Las sesiones son unicas a cada nueva apertura del navegador, no instacia. Es decir que si entras con Firefox, navegas un poco, abris otra instacia vas a mantener la sesion. Si cerras ambos navegadores la sesion se pierde para el cliente automaticamente.

Otra cosa, la sesion seria la misma, solo estarias usando un elemento diferente de las misma, por lo que si usas session_destroy estarias borrando el array $_SESSION completo!. En este caso te convendria usar unset.

Código
  1. <?php
  2. unset($_SESSION[color]="rojo");
  3. ?>

Saludos


Título: Re: cont($_SESSION)
Publicado por: XafiloX en 27 Junio 2009, 13:49 pm
Ah, OK, es que tenia la duda de si consideraba $_SESSION como unicamente tu sesion o si era como todas las sesiones, debido a que si haces unset($_SESSION) te cargas todas las sesiones del servidor (no solo la tuya), y por eso no sabia como iba a actuar el count...

Muchas gracias por resolverme la dudilla.  ;)


Título: Re: cont($_SESSION)
Publicado por: [u]nsigned en 27 Junio 2009, 21:06 pm
Muchas gracias por resolverme la dudilla.  ;)
De nada.  ;D

Saludos