PHP5 Objekte
DrRobotto
- php
Hallo,
ich habe folgende frage:
Warum funktioniert bei mir diese Konstrukt nicht, was laut PHP-Dokumentation funktionieren müßte?
$bs = new Bs();
$bs->getBSettings()->getSetting("test_setting");
Der einzige Weg, dieses Konstrukt dann zu übergehen ist dann folgendes:
$bs = new Bs();
$bs = $bs->getBSettings();
$bs->getSetting("test_setting");
Die Klasse schauen folgendermaßen aus
class Bs {
public function getBSettings() {
return new BSettings();
}
}
class BSettings {
public getSetting($key) {
return $key;
}
}
Ich hoffe mir kann jemand helfen, dass der obige Aufruf funktioniert.
Grüße
Dr.
Hallo!
Warum funktioniert bei mir diese Konstrukt nicht, was laut PHP-Dokumentation funktionieren müßte?
Welche PHP-Version verwendest Du? Bei mir (5.2.6) funktioniert's nämlich.
Viele Grüße,
Christian
Hallo
Warum funktioniert bei mir diese Konstrukt nicht, was laut PHP-Dokumentation funktionieren müßte?
Welche PHP-Version verwendest Du? Bei mir (5.2.6) funktioniert's nämlich.
Ich benutze zZ. 5.2.4. Kann es sein, dass es auf dieser Version noch nicht funktioniert?
Grüße
Dr.
Hi!
Ich benutze zZ. 5.2.4. Kann es sein, dass es auf dieser Version noch nicht funktioniert?
Ja, kann - hast Du es überprüft?
Dr.
Who?
off:PP
Hallo!
Warum funktioniert bei mir diese Konstrukt nicht, was laut PHP-Dokumentation funktionieren müßte?
Welche PHP-Version verwendest Du? Bei mir (5.2.6) funktioniert's nämlich.
Ich benutze zZ. 5.2.4. Kann es sein, dass es auf dieser Version noch nicht funktioniert?
Zwischen 5.2.4 und 5.2.6 gab's keinerlei derart großen Updates. Allerdings enthält Dein Beispielscript einen einfach zu behebenden Syntaxfehler in der Klassendefinition. Sicher, dass folgendes Script bei Dir in PHP nicht funktioniert? (Das ist Dein Script ohne Syntaxfehler)
<?php
class Bs {
public function getBSettings() {
return new BSettings();
}
}
class BSettings {
public function getSetting($key) {
return $key;
}
}
$bs = new Bs();
var_dump($bs->getBSettings()->getSetting("test_setting"));
?>
Viele Grüße,
Christian
Hallo,
Allerdings enthält Dein Beispielscript einen einfach zu behebenden Syntaxfehler in der Klassendefinition. Sicher, dass folgendes Script bei Dir in PHP nicht funktioniert? (Das ist Dein Script ohne Syntaxfehler)
<?php
class Bs {
public function getBSettings() {
return new BSettings();
}
}class BSettings {
public function getSetting($key) {
return $key;
}
}$bs = new Bs();
var_dump($bs->getBSettings()->getSetting("test_setting"));
?>
Das Script kam nur aus meinem Kopf, welche die Situation widerspiegeln sollte die ich gerade habe. Aber komisch ist, dass es au einmal als ich nach ein paar Tagen wieder nach dem Problem schaute funktionierte!?!
Danke für eure Hilfe,
Grüße
Dr
Hallo,
Das Script kam nur aus meinem Kopf, welche die Situation widerspiegeln sollte die ich gerade habe. Aber komisch ist, dass es au einmal als ich nach ein paar Tagen wieder nach dem Problem schaute funktionierte!?!
Was übrigens nicht funktioniert ist new Foo()->bar (); - vielleicht meintest Du das?
Viele Grüße,
Christian
Salvete,
Welche PHP-Version verwendest Du? Bei mir (5.2.6) funktioniert's nämlich.
Interessant.. _endlich_ funktioniert das nun!
MfG,
Sympatisant