Veröffentlicht 4. Dezember 200519 j Hallo, schon wieder ein Problem. Also ich mache folgendes in einer Methode: function ausgabe() { $htmlcode = $this->ausgabe_string; $this->ausgabe_string = ""; return $htmlcode; } [/PHP] In diesem Fall wird komischerweise nichts returnd. Daraus schließe ich, dass $this->ausgabe_string = ""; auch die Variable $htmlcode löscht. Aber das davor ist doch eine ganz normale Wertzuweisung und nichts mit Referenzen, oder hab ich was übersehen? Wenn ich die Zeile $this->ausgabe_string = ""; auskommentiere wird der richtige String returnd, aber ich möchte halt auch die Klassenvariable auf "" setzen. Wie kann ich das machen?
4. Dezember 200519 j Hi Hm wenn in ausgabe_string schon was drinnen steht bevor diese Methode bei dir aufgerufen wird, dann sollte das so funktionieren... Gruß, Markus
5. Dezember 200519 j genau, $htmlcode kann nur leer sein, wenn $this->ausgabe_string vorher schon leer war. Du solltest zum debuggen einfach mal $this->ausgabe_string ausgenen: function ausgabe() { echo $this->ausgabe_string; $htmlcode = $this->ausgabe_string; $this->ausgabe_string = ""; return $htmlcode; }
10. Dezember 200519 j ich werd noch wahnsinnig. Irgendwie geht das einfach ncht. Hier sind einfach mal meine Versuche: (Anmerkung: Der return-Wert gebe ich beim funktionsaufruf so aus: echo $xhtml->ausgabe(); ----------------------------- Gibt den Text 2 mal aus! => Also $htmlcode wird nicht gelöscht: function ausgabe() { $htmlcode = $this->ausgabe_string; echo $htmlcode; $this->ausgabe_string = ""; echo $htmlcode; //return $htmlcode; } [/PHP] Gibt den Text einmal aus: [PHP]function ausgabe() { $htmlcode = $this->ausgabe_string; $this->ausgabe_string = ""; echo $htmlcode; //return $htmlcode; } Gibt nichts aus, obwohl ich den return-Wert mit echo ausgeben will: function ausgabe() { $htmlcode = $this->ausgabe_string; $this->ausgabe_string = ""; return $htmlcode; }[/PHP] --------------------------------- => Frage, hat Return irgendwelche Größen/Längebeschränkungen? Ich hab nichts derartiges im Internet gefunden.
10. Dezember 200519 j Hi, verwendest du eine PHP5 Version im frühen stadium? Wenn ja, auf die neuste Vers updaten... Gruß, Markus
10. Dezember 200519 j sorry, hab das Problem wo anders gefunden. Ich hatte eine weitere Methode, die die Ausgabe() aufgerufen hatt. Die Ausgabe in der anderen Methode hat nicht funktioniert und deshalb wurde machnmal der Rückgabewert auf "" gesetzt. Trotzdem danke und ein großes Sorry wegen euren Bemühungen.
Archiv
Dieses Thema wurde archiviert und kann nicht mehr beantwortet werden.