Ben wrote:
class Ob {
    var $prop;
}
class Test {
    function setMe(&$ob) {
        $ob->prop = $this;
    }
}
$ob = new Ob();
$test = new Test();
$test->setMe($ob);
if ($ob->prop) error_log("PHP is OK");
else error_log("PHP is a fucking MARE");

What is my problem here? Please help!

You've run into the "I really need PHP5" problem :)

<?php
class Ob {
    var $prop;
}
class Test {
    function setMe(&$obj)
    {
        $ob->prop = &$this; // note another &
    }
}
$ob = new Ob;
$test = new Test;
$test->setMe($ob);
if ($ob->prop) {
    error_log("PHP is more than OK");
} else {
    error_log("I forgot the second &");
}
?>

Here's your PHP5 version

<?php
class Ob {
    public $prop;
}
class Test {
    public function setMe($obj)
    {
        $obj->prop = $this;
    }
}
$ob = new Ob;
$test = new Test;
$test->setMe($ob);
if ($ob->prop) {
    error_log("PHP5 is *way* more than OK");
} else {
    error_log("This can't happen");
}
?>

Greg

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



Reply via email to