![]() |
![]() ![]() |
![]() |
![]() ![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 375 Pomógł: 20 Dołączył: 28.07.2006 Ostrzeżenie: (0%) ![]() ![]() |
Z Podręcznika PHP:
Cytat W PHP referencje są środkiem dostępu do tej samej wartości zmiennej poprzez różne nazwy. (...) Zwróć uwagę na to, że w PHP nazwa zmiennej oraz wartość zmiennej są dwiema różnymi rzeczami, wobec tego ta sama wartość może być dostępna poprzez różne nazwy. Najbliższą analogią jest Uniksowy system plików i ich nazw - nazwy zmiennych to wpisy katalogowe, a wartości to same pliki. (...) $a oraz $b są całkowicie równe, czyli nie $a wskazuje na $b lub odwrotnie, lecz $a oraz $b wskazują na to samo miejsce. Co zaś z tworzeniem referencji do tablic? Kod $a = array('klucz'=>1, 'klucz2'=>2, itd.); //Tablica z wieloma kluczami $b = &$a; Jeśli referencje wskazują tylko samą wartość zmiennej, czy PHP tworzy w $b dowiązania do wartości wszystkich kluczy występujących w $a, co może być czasochłonne? -------------------- „Jesteśmy różni, pochodzimy z różnych stron Polski, mamy różne zainteresowania, ale łączy nas jeden cel. Cel ten to Ojczyna, dla której chcemy żyć i pracować.” Roman Dmowski
|
|
|
![]()
Post
#2
|
|
Grupa: Nieautoryzowani Postów: 92 Pomógł: 15 Dołączył: 21.10.2006 Ostrzeżenie: (0%) ![]() ![]() |
Jak dla mnie nie beda tworzone wiazania do wszystkich kluczy tylko do tej poprzedniej nazwy
Prawdopodomnie PHP tworzac tablice (czy inny typ) zapisuje ja sobie w jakims bloku pamieci i od razu wskazuje ze wszystkie odwolania do $a maja przekierowywane do tego bloku wiec stworzenie $b = &$a to tylko powiedzenie ze w przyszlosci odwolanie do zmiennej $b ma byc do tego samego bloku pamieci co $a. samo odczytywanie kluczy to juz inna sprawa i tak samo bedzie wygladac dostajac sie przez $a co i przez $b |
|
|
![]() ![]() |
![]() |
Aktualny czas: 19.08.2025 - 05:30 |