Sök…


Anmärkningar

Klassen Codeigniter Sessions använder webbläsarkakor för att spara data som kvarstår över flera sidbelastningar.

Referens: https://codeigniter.com/user_guide/libraries/sessions.html

Skapa en session

För att initiera en session kan du helt enkelt ladda den i din styrenhet, detta placeras vi vanligtvis inuti kontrollenhetskonstruktionerna, men det kan också laddas in automatiskt i matrisen som finns i applikationen / config / autoload.php:

$this->load->library('session');

Hantera sessiondata

En session är helt enkelt en matris som består av följande användarinformation:

  1. Användarens unika session-ID (detta är en statistiskt slumpmässig sträng med mycket stark entropi, hashad med MD5 för portabilitet och regenererad (som standard) var femte minut)
  2. Användarens IP-adress
  3. Användarens User Agent-data (de första 120 tecknen i webbläsarens datasträng)
  4. Tidsstämpeln "sista aktivitet".

Källa ( vad-är-session-data )


För att hämta sessiondata

som SessionID:

$this->session->userdata('session_id');

Obs - för Codeigniter 3.x kan du använda syntaxen ovan, men konceptet eller magiska getters har införts, där du kan använda $this->session->session_id .

Kom ihåg att userdata() returnerar NULL om sessionen inte finns.

För att hämta all sessioninformation

$this->session->all_userdata()

För att ställa in sessiondata

set_userdata() låter dig ställa in data i din session. Följande exempel visar ett exempel på array du vill infoga:

$newdata = array(
        'username'  => 'johndoe',
        'email'     => '[email protected]',
        'logged_in' => TRUE
);

$this->session->set_userdata($newdata);

Du kan också ställa in en data åt gången, till exempel:

$this->session->set_userdata('some_name', 'some_value');

eller

$some_name = 'some_value';
$this->session->set_userdata($some_name);

Ta bort data om session och session

$this->session->unset_userdata('some_name')

Den här metoden accepterar också en rad objektknappar för att avbryta:

För Codeiginter 3.x:

$array_items = array('username', 'email');

$this->session->unset_userdata($array_items);

För Codeiginter 2.x (denna gamla syntax stöder inte 3.x):

$array_items = array('key' => 'value');

$this->session->unset_userdata($array_items);


Modified text is an extract of the original Stack Overflow Documentation
Licensierat under CC BY-SA 3.0
Inte anslutet till Stack Overflow