Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP]jak zwiększyć zasięg zmiennej?
Larges
post
Post #1





Grupa: Zarejestrowani
Postów: 333
Pomógł: 16
Dołączył: 13.05.2008
Skąd: Łódź

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


Witam, mam zdefiniowaną zmienną $reklama w fukcji news();
Chciałbym wykorzystać tą zmienną poza funkcją. Próbowałem zrobić global $reklama; ale nie wiem dokładnie jak to zrobić - nie działało. Jak można wywołać zmienną poza franizami funkcji?
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 7)
nitro18
post
Post #2





Grupa: Zarejestrowani
Postów: 311
Pomógł: 7
Dołączył: 2.08.2006
Skąd: Bystrzyca Kłodzka/Nysa

Ostrzeżenie: (10%)
X----


a to:

  1. <?php
  2. function news()
  3. {
  4. global $reklama
  5.  
  6.  
  7. }
  8. ?>



albo

  1. <?php
  2. function news()
  3. {
  4. global $rekl;
  5.  
  6. //
  7.  
  8. $rekl=reklama;
  9. }
  10. ?>
Powód edycji: dodałem bbCode (ociu)
Go to the top of the page
+Quote Post
sowiq
post
Post #3





Grupa: Zarejestrowani
Postów: 1 890
Pomógł: 339
Dołączył: 14.12.2006
Skąd: Warszawa

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


Jest jeszcze inne wyjście - superglobalna tablica $_GLOBALS, jednak trochę mniej wygodna w używaniu.
Go to the top of the page
+Quote Post
nithajasz
post
Post #4





Grupa: Zarejestrowani
Postów: 230
Pomógł: 27
Dołączył: 27.05.2008
Skąd: Warszawa

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


Cytat(sowiq @ 8.06.2008, 23:43:38 ) *
Jest jeszcze inne wyjście - superglobalna tablica $_GLOBALS, jednak trochę mniej wygodna w używaniu.


function g($param){
return $_GLOBALS[$param];
}

i już łatwiej.. (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)
Go to the top of the page
+Quote Post
Larges
post
Post #5





Grupa: Zarejestrowani
Postów: 333
Pomógł: 16
Dołączył: 13.05.2008
Skąd: Łódź

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


Z przykrością muszę wrócić do wątku. Nie wiem czemu, ale nie mogę zwiększyć zasięgu zmiennej poprzez stosowanie polecenia global. Zmienną mam zdefiniowaną w funkcji i tam też nadaję jej większy zasięg poprzez global. Niestety nie mogę odczytać jej wartości poza tą funkcją. Jak zatem zrobić to w inny sposób? Widzę coś o $_GLOBALS, ale dość skrótowo, przez co nie potrafię tego pojąć ;/
Go to the top of the page
+Quote Post
erix
post
Post #6





Grupa: Moderatorzy
Postów: 15 467
Pomógł: 1451
Dołączył: 25.04.2005
Skąd: Szczebrzeszyn/Rzeszów




Dni konstrukcji global są policzone. Polecam zainteresowanie się wzorcem Registry: http://www.strefaphp.net/artykul59.html
Go to the top of the page
+Quote Post
-gox-
post
Post #7





Goście







Mozna tez $_SESSION[cus]
czesto z tego korzystam
Go to the top of the page
+Quote Post
erix
post
Post #8





Grupa: Moderatorzy
Postów: 15 467
Pomógł: 1451
Dołączył: 25.04.2005
Skąd: Szczebrzeszyn/Rzeszów




Ale nielogiczne. Sesja chyba jest przypisana do danych użytkownika, które mają być obecne przez czas całej wizyty, nie?

A po co tam pakować zmienną, którą wykorzystasz tylko do przeliczenia czegoś, JEDEN raz? Przecież niepotrzebna sesja, to tylko zmarnowany czas (trzeba wysłać ciasteczko/SID, zapisać gdzieś dane...).
Go to the top of the page
+Quote Post

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: 22.12.2025 - 22:37