![]() |
[PHP] problem mit variablen bereich
Ich bin in folgender situation:
Code:
Das dient nur zur veranschaulichung, ich will quasi in der function test test auf die variablen der funktion test_this zugreifen. Das geht aber nicht, desweiteren hab ich noch das problem, dass es in der funktion test_this zuviele variablen sind, sodass ich sie nicht als parameter übergeben möchte ...
class A{
function test() { $test = $host; $test2 = $usr; [...] return $test; } } class B{ function test_this() { $a = new A; $host = "host.de"; $usr = "Ich"; echo $this->a->test(); } } |
Re: [PHP] problem mit variablen bereich
$this->host
|
Re: [PHP] problem mit variablen bereich
Zitat:
|
Re: [PHP] problem mit variablen bereich
Er meinte wohl $this->host in Klasse B.
Du müsstest $host und $usr an die Funktion übergeben, ansonsten weiß es doch gar nicht, was es damit machen soll. Innerhalb von Klasse A sind diese ja unbekannt bzw. leer.
Code:
So klappt das dann auch :)
<?
class A{ function test($host, $usr) { $test = $host; $test2 = $usr; return $test; } } class B{ function test_this() { $a = new A; $host = "host.de"; $usr = "Ich"; echo $a->test($host, $usr); } } $b = new B; $b->test_this(); ?> |
Re: [PHP] problem mit variablen bereich
HAb ich war schon in meinem ersten post geschreiben, aber ich kann die variablen nicht übergeben, weil es recht viele sind. Deshalb hab ich eine andere möglichkeit gesucht ...
|
Re: [PHP] problem mit variablen bereich
Dann übergeb der anderen Klasse einfach die eine Klasse als Referenzparamter, genauso wie du das wohl auch in Delphi machen würdest ;)
Code:
Getstet und funktioniert einwandfrei.
<?
class A { function test ($class_b) { return $class_b->host; } } class B { var $host = "hoster.de"; function test_this () { $a = new A; echo $a->test ($this); } } $b = new B; $b->test_this (); ?> |
Re: [PHP] problem mit variablen bereich
okay, ich dachte zwar dass ich das schonma so gemacht hab ... awa irwie gehts nu >.<
|
Re: [PHP] problem mit variablen bereich
und warum nicht ganz klassische?
Code:
Alternativ natürlich auch gerne mit Getter/Setter Methoden. Da war ich jetzt nur zu faul für.
class A {
public $host; public $usr; function test() { $test = $this->host; $test2 = $this->usr; [...] return $test; } } class B{ function test_this() { $a = new A; $a->host = "host.de"; $a->usr = "Ich"; echo $this->a->test(); } } |
Re: [PHP] problem mit variablen bereich
Zitat:
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 22:23 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz