Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: unserialize i $this
Forum PHP.pl > Forum > PHP
intol
Napisałem sobie klasę, która poprzez funkcję Get (która tam robi parę różnych rzeczy), wyciąga z sesji obiekt. Funkcja wyglada tak:

  1. <?php
  2.  function Get(){
  3. if(isset($_SESSION['user'])){
  4.  $obj = unserialize($_SESSION['user']);
  5. $this = $obj;
  6.  }
  7.  else{
  8.  #coś innego
  9.  }
  10.  } 
  11. ?>


Chodzi o linijkę: "$this = $obj;". Nie działa ona oczywiście. Jak mam skopiować obiekt $obj na obiekt wskazywany przez $this?
bela
  1. <?php
  2. function Get(){
  3. static $instance = null;
  4. if(isset($_SESSION['user'])){
  5. $instance = unserialize($_SESSION['user']);
  6.  
  7. }
  8. else{
  9. #coś innego
  10. }
  11.  return $instance;
  12. }
  13. ?>


może coś takiego ?
SongoQ
O ile pamietam to zeby zrobic unserializacje obiektu to musisz w miejscu w ktorym chesz unserializowac obiekt musisz miec klase, bo inaczej nie przejdzie.

Oczywiscie klasa musi byc ta sama co robiles serializacje.
intol
No jeżeli robię to jako funkcję składową tej samej klasy, w której robię unserialize, to klasa jest znana wtedy...

Chyba fałszywy alarm, a problemu nie było. W składowej klasy miałem referencję do aktualnego połączenia z bazą danych, która to wartość musi być przecież cały czas uaktualniana (nie może być przenoszona przez sesję).
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.