2012-11-24 16 views
8

Sto cercando di impostare alcune variabili di sessione in Yii utilizzando il seguente codice:Yii gestione della sessione

$session=new CHttpSession; 
      $session->open() ; 
      $session->setSessionName('My Session') ; 
      $session['sleep'] = 0 ; 
      $session['attempts'] = 0 ; 
      $session->writeSession('sleep','0') ; 
      $session['ip'] = $this->get_ip_address() ; $session->close() ; var_dump($session,$session['ip']) ; 

Tuttavia, io non sono in grado di impostare le vaiables sessione sopra, la discarica ha il seguente risultato:

object(CHttpSession)#17 (5) { ["autoStart"]=> bool(true) ["behaviors"]=> array(0) { } ["_initialized":"CApplicationComponent":private]=> bool(false) ["_e":"CComponent":private]=> NULL ["_m":"CComponent":private]=> NULL } string(3) "::1" 

Vede $ sessione e $ sessione ['ip '] come due variabili completamente diverse. Qualcuno può aiutarmi con questo?

risposta

26

Io lavoro con le sessioni sotto Yii in un altro modo, io uso la variabile di sessione globale sotto la variabile app(). Così si può memorizzare i valori in questo modo:

Yii::app()->session['sleep'] = "value"; 

E si può ottenere i valori in questo modo:

$sleep = Yii::app()->session['sleep']; 

Infine è possibile rimuoverlo in questo modo:

unset(Yii::app()->session['sleep']); 

In questo modo è possibile accedere li ovunque nel tuo codice. Vi consiglio di leggere questo articolo: http://www.larryullman.com/2011/05/03/using-sessions-with-the-yii-framework/ ha tutte le informazioni di cui avete bisogno.

+0

Sì, questo è quello che ho finito per fare !! Grazie comunque per la risposta !! –

+0

Prego. – Skatox

+0

Lo uso anch'io. Ma qual è la differenza tra questo e CHttpSession? – shgnInc

-1
 
$session = new \yii\web\Session(); 

$session->open(); 

$session['account_id'] = $id; 

$session['account_name'] = $name; 
+1

le sole risposte al codice sono pessime. Si prega di aggiungere alcune spiegazioni sul perché/come funziona. Questo a proposito, non direttamente correlato al problema dell'OP. – Gogol

Problemi correlati