Luke wrote:
>>
> Thanks for the replies :)
> 
> Surely if I pass it as a parameter to the __construct then I would have to
> make an instance of the otherObject, notice that messwithotherthings is
> static?
> 
> Also, if I'm not using OOP properly, Eddie, how would I use it properly to
> prevent this situation?
> 
> Thanks,
> 

Hmmm, I didn't notice the method was static - that means my idea really won't
work...

I did have a bad feeling about this, and Eddie confirmed my unease with the
point about OOP.

Really, you should need your $firstobject to be a singleton:
eg.

class FirstObject
{
    private static $theInstance = NULL;

    public $propertyContainingObject;

    protected function __construct()
    {
        // whatever
    }

    public static function getInstance()
    {
        if (!self::$theInstance)
        {
            self::$theInstance = new FirstObject();
        }
        return self::$theInstance;
    }

    // ... other methods ...
}


So then:

class OtherObject
{
    static function messWithOtherThings()
    {
        $firstObject = FirstObject::getInstance();
        $firstObject->propertyContainingObject->methodInsideThatObject();
    }
}



I think that works, and is reasonable to the OOP purists...


-- 
Peter Ford                              phone: 01580 893333
Developer                               fax:   01580 893399
Justcroft International Ltd., Staplehurst, Kent

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

Reply via email to