Willkommen ~Gast!
Registrieren || Einloggen || Hilfe/FAQ || Staff
Probleme mit der Registrierung im Forum? Melde dich unter registerEin Bild.
Autor Beitrag
000
07.04.2003, 20:53
Ornest



Folgendes Problem, ich habe zwei Klassen:

Quellcode:class Wayne {
    var $item;
}

class Regenschirm {
    var $name;
}
Jetzt weise ich einem Objekt von Wayne als Item Regenschirm zu.

Quellcode:$wayne = new Wayne();
$rs = new Regenschirm();

$wayne->item = $rs;
// bzw. &$rs;
Wie greife ich jetzt über Wayne auf den Namen des Regenschirms zu?
So geht es irgendwie nicht:

Quellcode:echo $wayne->item->name;
Aber wie dann O_o?

Edit: Ich bemerke gerade, dass es an anderen Beispielen klappt. Folglich ist also ein Fehler in meinem Skript, sorry ...

--


Dieser Beitrag wurde am 07.04.2003 um 21:09 von Ornest bearbeitet.
zum Seitenanfang zum Seitenende Profil || Suche
001
07.04.2003, 21:11
CN



doch bei mir geht sowas (wenn die var nen wert hat)

hast du $rs->name bzw $wayne->item->name auch nen wert zugewiesen?

--

zum Seitenanfang zum Seitenende Profil || Suche
002
07.04.2003, 21:18
Ornest



Ja, habe ich ... aber irgendwas ist trotzdem falsch. Muss nochmal schauen, mein Code ist sowieso etwas komplizierter O_o.

--

zum Seitenanfang zum Seitenende Profil || Suche
003
07.04.2003, 21:39
CN



dann würd ich mal alles posten (wenns keine umstände macht)

--

zum Seitenanfang zum Seitenende Profil || Suche
004
08.04.2003, 13:18
Ornest



Ok, hat sich erledigt. Ich hatte den Fehler gefunden. War in etwa so was:

Quellcode:for($i = 0; $i < $blub; $i++) {
    $blub->item = $item[$j]; // <-- $j statt $i
}

--


Dieser Beitrag wurde am 08.04.2003 um 13:19 von Ornest bearbeitet.
zum Seitenanfang zum Seitenende Profil || Suche
005
08.04.2003, 18:36
CabaL



btw. ist

Quellcode:$wayne = &new Wayne();üblich

--

..::I've carved my soul to shreds in service of the Cabal. What little humanity I retain is corrupted by the Beast, which has grown stronger with every life I've taken::.

zum Seitenanfang zum Seitenende Profil || Suche
006
08.04.2003, 19:00
Kriz



Nie gehört.

--

K:R-I)Z++
"CSS ist cascading style sheets. Und nicht so'n Ranzspiel." - dp
In memory of Voice († 2005/03/30)

zum Seitenanfang zum Seitenende Profil || Suche
007
08.04.2003, 19:04
Megge



ich nehme an, dass & ist ein schreibfehler ?

--

zum Seitenanfang zum Seitenende Profil || Suche
008
09.04.2003, 02:46
CN



nein das is ne referenz.. pf banausen

aber das würd ich auch nich so verwenden wie cabal meinte

sondern höchstens an der stelle

Zitat:
$wayne->item = $rs;
// bzw. &$rs;

--

zum Seitenanfang zum Seitenende Profil || Suche
009
09.04.2003, 08:48
Kriz



Das wissen wir beide auch, daß & eine Referenz in PHP darstellt, allerdings habe ich es in diesem Zusammenhang oben noch nie gesehen!

Selber Banause :)

--

K:R-I)Z++
"CSS ist cascading style sheets. Und nicht so'n Ranzspiel." - dp
In memory of Voice († 2005/03/30)

zum Seitenanfang zum Seitenende Profil || Suche
010
09.04.2003, 13:43
CN



ja ok dir glaub ich das ;)
aber megge :P ..von wegen schreibfehler

--

zum Seitenanfang zum Seitenende Profil || Suche
011
09.04.2003, 13:46
Megge



ich hab keine ahnung was ne referenz in php ist, darum auch die frage :)
gut bemerkt CN, wollte dich nur testen :P

btw, was ist das ?

--


Dieser Beitrag wurde am 09.04.2003 um 13:46 von Megge bearbeitet.
zum Seitenanfang zum Seitenende Profil || Suche
012
09.04.2003, 19:47
CN



"gut bemerkt CN, wollte dich nur testen :P"
hrhr

ich könnte jetzt natürlich mit meinem wissen prahlen und ne geschichte erzählen
stattdessen beantworte ich die frage mit einer folge von zeichen:
http://www.php.net/manual/en/language.references.php

--

zum Seitenanfang zum Seitenende Profil || Suche
013
09.04.2003, 20:03
Snake_Shit



Wie zurückhaltend... ;-)

--

zum Seitenanfang zum Seitenende Profil || Suche
014
10.04.2003, 08:27
Tron



<c++fanatiker>
hm, von typensicherheit und dass man eine variable erstmal deklarieren sollte, bevor man sie benutzen kann, hat man in php noch nie was gehoert?
weitere gruende, warum ich php verachte
</c++fanatiker>

--

'KEINE PANIK' - aus der Triologie in fuenf Baenden von Douglas Adams

'FÜR DEINN FERD' - aus 'Gevatter Tod' von Terry Pratchett

zum Seitenanfang zum Seitenende Profil || Suche
015
10.04.2003, 13:25
Ornest



Zitat:
Tron postete
weitere gruende, warum ich php verachte
Warum? Mein Bruder hasst PHP auch (ist Java-Fanatiker ;)). Er meint PHP wäre nicht erweiterbar usw. (oder so, kann auch sein, dass ich mich da jetzt irre, aber egal). Jedenfalls was ist an PHP deiner Meinung nach so schlecht?

--


Dieser Beitrag wurde am 10.04.2003 um 13:25 von Ornest bearbeitet.
zum Seitenanfang zum Seitenende Profil || Suche
016
10.04.2003, 13:54
Megge



Tron, mein Held ;)

in PHP gibts die schöne variable 'register_globals = on/off' mit der man einiges an sicherheit gewinnt. somit kann man indirekt schon sagen, die variablen können nicht mehr einfach eingeführt werden sondern werden im script 'deklariert'

mit ein bisschen fantasie versteht man das :)

--

zum Seitenanfang zum Seitenende Profil || Suche
017
10.04.2003, 15:30
CN



c++ und php kann man nich vergleichen

wenn du tpyensicherheit willst dann caste die doch
printf (string)$var;

..

--

zum Seitenanfang zum Seitenende Profil || Suche
018
10.04.2003, 15:52
Kriz



Genau

PHP kann man eher mit "C mit Klassen" vergleichen, auch wenn das OOP in PHP eher ein erweitertes struct-Handling darstellt. PHP ist meiner Ansicht nach viel näher an C dran als an C++ oder C mit Klassen.

Daher ist ein Vergleich so sinnlos wie Kropf.

--

K:R-I)Z++
"CSS ist cascading style sheets. Und nicht so'n Ranzspiel." - dp
In memory of Voice († 2005/03/30)

zum Seitenanfang zum Seitenende Profil || Suche
019
10.04.2003, 19:55
voidi



Zitat:
CabaL- postete
btw. ist

Quellcode:$wayne = &new Wayne();üblich

oha ein php coder mit stil.
er hat recht.
dass ein "guter" php coder &new statt new verwendet hat mit dem objektreferenzverhalten der zend engine 1 zu tun.
bei code ohne "&" wird eine instanz von Wayne angelegt und diese schließlich auf $wayne kopiert; es wird also zweimal erzeugt. wenn beim initialisieren des konstruktors nun weitere referenzen werden dann kann dies unangenehme nebenwirkungen haben.
bei der variante die von cabal beschrieben wurde wird ein objekt nur einmal angelegt und eine referenz auf $wayne gelegt. das muss allerdings explizit erfolgen.

--

2far.net

<Teranite> ich hab nen arschmaessigen traffic

zum Seitenanfang zum Seitenende Profil || Suche