phpbuddy.eu
-


Hinweise


Antwort
 
LinkBack Themen-Optionen Thema durchsuchen Thema bewerten
Alt 14.07.2004, 23:42   #1
TP-Insider
 
Benutzerbild von NicNac
 
Registriert seit: Apr 2001
Ort: Zürich, Schweiz
NicNac macht alles soweit korrekt

PHP: Wann Referenzen


HI

Ich hab einen kleinen Durchhänger: Wann enthalten Variablen Referenzen und wann Kopien? Bei welchen Typen?

Und wann definiert ihr Variablen mit $var = & new ... Wann macht das Sinn? Wann ist eine Referenz einer Kopie vorzuziehen? Da blick ich momentan voll nicht durch
__________________
http://www.exploreourplanet.net - Ladet eure schönsten Urlaubsbilder hoch!
NicNac ist offline   Mit Zitat antworten


Alt 15.07.2004, 00:44   #2
Guest
 
Registriert seit: Aug 2002
Strogij hilft, wo's gehtStrogij hilft, wo's geht
1) Dann, wenn du den Adressoperator anwendest: $ref = &$var;
2) Bei allen Typen
3) Mit &new eigentlich immer, da new ansonsten eine Kopie erstellt
4) Dann, wenn du einen gemeinsamen Bezug herstellen möchtest. Ein Objekt, das die Datenbankverbindung darstellt kann an viele Funktionen durchgereicht(nicht kopiert) werden. Das gemeinsame Objekt ist dann z.B. in der Lage Daten zu sammeln, die diese Funktionen ihm anhängen wie Fehlermeldungen der Datenbank + Fehler-ID. Mit einer Kopie wäre das so nicht möglich.
Hoffe, dir geholfen zu haben
Strogij ist offline   Mit Zitat antworten
Alt 15.07.2004, 08:38   #3
TP-Insider
 
Benutzerbild von NicNac
 
Registriert seit: Apr 2001
Ort: Zürich, Schweiz
NicNac macht alles soweit korrekt
Schon ziemlich ja. Also standardmässig werden (wenn man das & NICHT verwendet) keine Referenzen erzeugt? Und bei new (also neuen Objekten) verwendest du immer das &?

Was ich auch noch nicht ganz verstehe: Schon bei der Zuweisung bei new wird nur eine Kopie der Variable zugewiesen? Das ist dann eine Performance-Bremse nicht? Weil man schon zwei Objekte generiert hat oder nicht? Und wo ist dann das Original?
__________________
http://www.exploreourplanet.net - Ladet eure schönsten Urlaubsbilder hoch!
NicNac ist offline   Mit Zitat antworten
Alt 15.07.2004, 15:31   #4
Guest
 
Registriert seit: Aug 2002
Strogij hilft, wo's gehtStrogij hilft, wo's geht
Ja, das sind dann zwei Objekte (wenn man nur = new benutzt), geht allerdings überraschender Weise laut der PHP-Referenz nicht auf die Performance - eher umgekehrt, weil für das Erstellen von Referenzen man in der Regel mehr Zeit braucht (kannst du mal testen).
Ich zitiere:
Zitat:
Anmerkung: Das zurückgeben von Kopien anstatt von Referenzen stellt keinen Performanceverlust dar (da PHP 4 und höher Reference Counting verwendet). Andererseits ist es sehr oft besser, einfach mit Kopien anstatt mit Referenzen zu arbeiten, da die Erstellung von Referenzen etwas Zeit in Anspruch nimmt, während das Erstellen von Kopien so gut wie keine Zeit braucht (sofern keine von ihnen ein großes Array oder Objekt ist, und eines davon geändert wird und das/die andere/n nachträglich. In diesem Fall wäre es besser, Referenzen zu verwenden, um sie alle gleichzeitig zu ändern).
Strogij ist offline   Mit Zitat antworten
Alt 15.07.2004, 15:56   #5
Guest
 
Registriert seit: Aug 2002
Strogij hilft, wo's gehtStrogij hilft, wo's geht
Hier noch ein Link.
Strogij ist offline   Mit Zitat antworten
Antwort

  Aktuelles Thema
  TP Hilfe Forum > Web-Editoren & Coding > Traum-Dynamik
PHP: Wann Referenzen PHP: Wann Referenzen
« Datenbanktabellen mit CSS formatieren | Programme auf einem Server ausführen »

Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 
Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Thema bewerten
Thema bewerten:

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an
Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
PHP 5 wann bei Webhostern??? Dreamer Traum-Dynamik 2 09.06.2004 23:26
Wie funktioniert PHP, was ist Apache Nice Einfach so ... 1 24.09.2002 01:01
Php (4.2.0) installation GeorgWBush Traum-Dynamik 4 12.05.2002 12:49
Php 4.1.0 Rc1 Doc.Silizium Traum-Dynamik 0 19.10.2001 18:22


Alle Zeitangaben in WEZ +2. Es ist jetzt 09:19 Uhr.

Powered by: vBulletin Version 3.7 (Deutsch)
Copyright ©2000 - 2008, Jelsoft Enterprises Ltd. / Search Engine Friendly URLs by vBSEO 3.2.0 ©2008, Crawlability, Inc.
Traum-Projekt.com | Suchen | Archiv | Impressum | Kontakt | | | Nach oben |



1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67