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