如何从以下对象数组访问项数组
Cart66Cart Object ( [_items:Cart66Cart:private] => Array ( [2] => Cart66CartItem Object ( [_productId:Cart66CartItem:private] => 327 [_quantity:Cart66CartItem:private] => 3 [_optionInfo:Cart66CartItem:private] => [_priceDifference:Cart66CartItem:private] => 0 [_customFieldInfo:Cart66CartItem:private] => [_productUrl:Cart66CartItem:private] => http://localhost/odesk/cart66/fran-wilson-aloe-lip-care/ [_formEntryIds:Cart66CartItem:private] => Array ( ) ) [3] => Cart66CartItem Object ( [_productId:Cart66CartItem:private] => 368 [_quantity:Cart66CartItem:private] => 2 [_optionInfo:Cart66CartItem:private] => [_priceDifference:Cart66CartItem:private] => 0 [_customFieldInfo:Cart66CartItem:private] => [_productUrl:Cart66CartItem:private] => http://localhost/odesk/cart66/beauty-strokes-basic-shadow-brush/ [_formEntryIds:Cart66CartItem:private] => Array ( ) ) ) [_promotion:Cart66Cart:private] => [_promoStatus:Cart66Cart:private] => 0 [_shippingMethodId:Cart66Cart:private] => 13 [_liveRates:Cart66Cart:private] => Cart66LiveRates Object ( [toZip] => [weight] => [rates] => Array ( ) [_toCountryCode:protected] => ) )
这样的事情可能是:
$object->_items[index]->_productId
但是如果_items是私有的,你将需要一个公共的getter或者使用Reflection类.您可以将private属性设置为可通过ReflectionProperty访问
尝试这个:
$reflectionObject = new ReflectionObject($yourObject); $property = $reflectionObject->getProperty('_items'); $property->setAccessible(true); $items = $property->getValue($yourObject);