Post
#1
|
|
|
Grupa: Moderatorzy Postów: 15 467 Pomógł: 1451 Dołączył: 25.04.2005 Skąd: Szczebrzeszyn/Rzeszów |
Witam!
Czy sa jakies roznice (wydajnosc, bezpieczenstwo, wylaczajac zasieg) w operowaniu na zmiennych przez superglobalna $GLOBALS a wczesniejsza jej 'globalizacja' przez global? |
|
|
|
![]() |
Post
#2
|
|
|
Grupa: Przyjaciele php.pl Postów: 1 112 Pomógł: 20 Dołączył: 10.04.2005 Ostrzeżenie: (0%)
|
Cytat le wciaz nie wiem dlaczego NIE STOSOWAC zmiennych globalnych... :/ Myślę, że mamy tu pewne niezrozumienie. Zmiennych globalnych nie należy stosować ze względów przejrzystości kodu, łatwości modyfikacji. Z kodu powinno wynikać co skąd się bierze. Nie znam się na teorii programowania, ale wiem że korzystanie ze zmiennych globalnych przeczy np. istocie funkcji jako takich. Po co jest funkcja? Po to, żeby zebrać pewne czestwo powtarzane fragmenty kodu w jej ramach i zapewnić sobie łatwy dostęp do tych czynności. Stosując zmienne globalne przeczysz temu, bo musiałbyć w każdym fragmencie kodu w którym chcesz użyć danej funkcji zadbać o to żeby te globalne zeminne istniały i w efekcie funkja działała poprawnie. Po to się do funkji przekazuje parametry i po to funkcja zwraca wartość, żeby nie trzeba było uzależniać jej od danych bezpośrednio nie związanych z jej zadaniem. Jeżeli natomiast funkcja jest używana tyklo w jednym miejscu, gdzie masz utworzone potrzebne zmienne globalne, wtedy... nie potrzebujesz do tego zadania funkji :) Należy natomiast wyłączyć register_globals, co spodowuje że nie będzie autmatycznie ze zmiennej $_GET['wanda'] tworzona zmienna $wanda. Tu akurat może mieć to zasadniczy wpływ na bezpieczeństwo twojego skryptu. pozdr. |
|
|
|
erix [php] $GLOBALS['var'] a global $var - roznice 17.06.2006, 13:07:42
em1X a global to nie jest po prostu umieszczenie zmienn... 17.06.2006, 13:20:54
erix Chyba nie...
Mam gdzies zmienna poza funkcja. I c... 17.06.2006, 13:28:27
siemakuba zmienne które z natury mają zasięg globalny to tak... 18.06.2006, 12:19:23
erix Cytatjedyna różnica jaką widzę to w... 18.06.2006, 12:31:00 
mike_mech Cytat(erix @ 18.06.2006, 13:31 ) (...) w ... 18.06.2006, 12:33:40
erix UZASADNIJ.
Chodzi o to, ze mam zestaw klas i chce... 18.06.2006, 12:40:09 
mike_mech Cytat(erix @ 18.06.2006, 13:40 ) Chodzi o... 18.06.2006, 12:46:38
erix ale wciaz nie wiem dlaczego NIE STOSOWAC zmiennych... 18.06.2006, 13:01:14
em1X Zmiennych globalnych nie powinno sie stosowac, pon... 18.06.2006, 13:28:58
erix To juz chyba standard, zeby nie korzystac z regist... 18.06.2006, 13:32:19
em1X bynajmniej nie mowimy tutaj o register_globals, al... 18.06.2006, 13:37:48
erix em1X, nadmienilem do siemakuba
to bylo tak OT... 18.06.2006, 13:40:22
em1X jasna sprawa
na przyszlosc pamietaj, ze wszelki... 18.06.2006, 13:43:01 
erix Cytat(em1X @ 18.06.2006, 14:43 ) Singleto... 18.06.2006, 21:41:57
siemakuba Cytat(erix @ 18.06.2006, 14:32 ) To juz c... 18.06.2006, 13:58:25
erix O zesz! Chodzila mi po glowie referencja, ale ... 18.06.2006, 14:03:45
em1X Moze inni wyciągną wnioski co jest lepsze i wygodn... 18.06.2006, 14:34:31 ![]() ![]() |
|
Aktualny czas: 14.06.2026 - 09:38 |