Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Metody obiektów i includowanie plików
deejay4net
post
Post #1





Grupa: Zarejestrowani
Postów: 38
Pomógł: 0
Dołączył: 11.06.2007

Ostrzeżenie: (0%)
-----


Więc tak, mam takie nurtujące mnie pytanko.. Nie jestem może aż tak bardzo zaawansowany w php ale znam je dosyć dobrze i od jakiegoś czasu korzystam z klas. Teraz przykładowy kod:

  1. <?php
  2.  
  3. require 'class/user.php';
  4.  
  5. $usr = new user;
  6.  
  7. include'inc/jakisplik.php';
  8.  
  9.  
  10. ?>


I teraz zawartość jakisplik.php

  1. <?php
  2. print $usr->nick;
  3. ?>

Oczywiście przyjmujemy że $usr->nick od razu po zainicjowaniu ma przypisaną wartość..
Teraz właśnie nie wiem do końca (Nie znam sie aż tak na obiektach) ale moim zdaniem w pliku dołączonym przez include
  1. <?php
  2. print $usr->nick;
  3. ?>

powinno wyświetlić mi nick (a tak się nie dzieje)..
gdyż wcześniej zainicjowałem ten obiekt.. Natomiast działa to dopiero gdy zainicjuje nowy obiekt w includowanym pliku..
Gdy tworzenie nowego obiektu nie wiąże się z wykonaniem operacji to ok.. Ale gdy np przy tym jest już wykonywana operacja na bazie pojawia się problem..
Czy ktoś mógł by mi to wytłumaczyć w prosty sposób?
Zadowolę się nawet teorią bez przykładów, chociaż przykład mile widziany (IMG:http://forum.php.pl/style_emoticons/default/biggrin.gif)

z góry thx i pozdro
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
deejay4net
post
Post #2





Grupa: Zarejestrowani
Postów: 38
Pomógł: 0
Dołączył: 11.06.2007

Ostrzeżenie: (0%)
-----


No własnie.. Klasa tutaj nie ma znaczenia raczej.. Chodzi o działanie....
Dodam że klasa oczywiście działa.. bo gdy robie to bezpośrednio bez includowania to wyświetla mi nick.

może jak CI to ma coś pomóc to przyjmijmy że klasa wygląda tak

  1. <?php
  2.  
  3. class user{
  4.  
  5. public function __construct(){
  6.  
  7.  $this->nick = 'deejay4net';
  8.  
  9. }
  10.  
  11. }
  12.  
  13. ?>


Może być? (IMG:http://forum.php.pl/style_emoticons/default/tongue.gif)

Ten post edytował deejay4net 15.11.2008, 14:28:15
Go to the top of the page
+Quote Post
deejay4net
post
Post #3





Grupa: Zarejestrowani
Postów: 38
Pomógł: 0
Dołączył: 11.06.2007

Ostrzeżenie: (0%)
-----


No jest to w stylu

  1. <?php
  2.  
  3. class user{
  4.  
  5. FUNCTION __construct(){
  6.  
  7. IF($_SESSION['online']){
  8.  
  9. $this->nick = $_SESSION['nick'];
  10. $this->id = $_SESSION['id'];
  11.  
  12. }
  13.  
  14.  
  15. }
  16.  
  17. ?>



}

?>

bez public ale z tego co wiem domyślnie jest typ public
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 11.10.2025 - 04:35