Hello,

I have a question about php and OO.  I want to chain methods together having
them performed on the results of the following method.  Meaning something
like $foo->get("bar")->getBaz().

I get the following error from the script bellow.
Parse error: parse error, unexpected T_OBJECT_OPERATOR, expecting ',' or ';'
in /usr/local/apache/php/testchain.php on line 47

Anybody know why I can't do this?  Anyway to make it it one statement
instead of $tmp = $foo->get("bar"); $tmp->getBaz(); -- lame --?
Is their a config setting or something?

Thanks in advance,
Terry

<?php

class Foo
{
    var $vector = array();
    function Foo()
    {}

    function put($name, $value)
    {
        $this->vector[$name] = $value;
        return $this->vector[$name];
    }

    function get($name)
    {
        return $this->vector[$name];
    }

}

class Bar
{
    var $baz = "";

    function Bar() {}

    function setBaz($value)
    {
        $this->baz = $value;
        return $this->baz;
    }
    function getBaz()
    {
        return $this->baz;
    }
}

$bar = new Bar();
$bar->setBaz("test succeeded");

$foo = new Foo();
$foo->put("bar", $bar);

echo $foo->get("bar")->getBaz(), "<br>";

?>


-- 
PHP General Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php

Reply via email to