Hi! > 1) what's the difference between zend_object and zend_object_value? what is > each for? Because i'm confused.. > 2) What are zend_object_store_bucket; and zend_object_store used for?
It may be easier to look at it this way: For the engine, the object is an abstraction, which has an ID and a set of handlers (see zend_object_handlers structure). That's how the engine talks to the objects. That's what zend_object_value is. These objects can be, in theory, anything. In practice, all user-space objects (as opposed to objects that may be created by the engine) are something that we can call "standard Zend engine objects". These objects are created from Zend Engine classes, have properties, etc. - that's what zend_object stores. These objects are kept in the "object store" and each time you create one it gets stored there and receives a store ID. That's the ID the rest of the engine (see above) uses to talk to the object. Note that custom objects (not standard ones) also can be kept in the store, but do not have to be. Keeping them in the store saves some work though - because you'd have to keep them somewhere anyway... zend_object_store_bucket is just a data structure used in the maintenance of the store - it contains the actual object data and some service values that are needed to efficiently manage store memory. You may also check out Zend/OBJECTS2_HOWTO file in PHP source - it has some more details. -- Stanislav Malyshev, Software Architect SugarCRM: http://www.sugarcrm.com/ (408)454-6900 ext. 227 -- PHP Internals - PHP Runtime Development Mailing List To unsubscribe, visit: http://www.php.net/unsub.php