PHP对象,如何引用?
如何指向cid并获取值 $item->PHP对象,如何引用?,php,Php,如何指向cid并获取值 $item-> array(1) { [0]=> object(__PHP_Incomplete_Class)#4 (4) { ["__PHP_Incomplete_Class_Name"]=> string(7) "Product" ["_param:protected"]=> array(40) { ["pid"]=> string(3) "540" ["cid"]=&
array(1) {
[0]=>
object(__PHP_Incomplete_Class)#4 (4) {
["__PHP_Incomplete_Class_Name"]=>
string(7) "Product"
["_param:protected"]=>
array(40) {
["pid"]=>
string(3) "540"
["cid"]=>
string(2) "22"
["sid"]=>
string(1) "1"
["tid"]=>
string(1) "9"
["sales_volume"]=>
string(1) "0"
["preorder_volume"]=>
string(1) "0"
["viewed"]=>
string(1) "0"
["weight"]=>
string(4) "0.00"
["delivery_type"]=>
string(6) "postal"
["cash_price"]=>
string(4) "0.00"
["coupon_price"]=>
string(4) "0.00"
["coupon_require"]=>
NULL
["member_price"]=>
NULL
["discount_code"]=>
NULL
["special_offer"]=>
string(1) "0"
["lan"]=>
string(13) "eng,tchi,schi"
["special_offer_price"]=>
string(4) "0.00"
["special_offer_begin"]=>
string(19) "2010-09-06 11:25:05"
["special_offer_end"]=>
string(19) "2010-09-06 11:25:05"
["bonus_point"]=>
string(1) "0"
["tax"]=>
string(4) "0.00"
["release_date"]=>
string(19) "2010-09-06 11:25:05"
["begin_datetime"]=>
string(19) "2010-07-13 14:41:26"
["end_datetime"]=>
NULL
["delivery_status"]=>
string(4) "24hr"
["stock"]=>
string(1) "0"
["status"]=>
NULL
["discon"]=>
string(1) "0"
["product_desc"]=>
string(0) ""
["model_num"]=>
string(8) "ATH-BT03"
["rating"]=>
string(0) ""
["recycle_id"]=>
array(2) {
[0]=>
string(1) "5"
[1]=>
string(2) "20"
}
}
}
["doc:private"]=>
object(DOMDocument)#5 (0) {
}
}
}
看起来像一个非常奇怪的混合对象 如果我没有弄错,它是一个数组,其中包含一个对象,该对象具有一个名为_param的属性,该属性是一个具有键cid的数组 $item[0]->_参数['cid']
_param成员被声明为受保护,只能从类本身内部或从父类或继承类访问。从类外部访问此变量的方法是创建并调用“getter”方法,如下所示:
function getCid() {
return $this->_param['cid'];
}
类属性_param受保护,您无法从外部访问此属性。
尝试使用反射。您可以在这里找到如何使私有/受保护的财产公开。可能会有帮助。不,不是这样的。如果有可能的话,它会破坏保护成员的目的,不是吗?改为查找
Reflection
类。如果一个类的成员的值需要对除自身/所有者以外的所有对象都是只读的,那么该类如何?拥有一个getter方法是完全合理的,不是吗?这是正确的,但是getter方法也必须是这个类的成员。也许你实际上就是这个意思。我可能误解了。当然这就是我的意思,不过我有点不清楚。我还不恰当地假设hkvega01可以访问类源。这个问题没有说明他们是否有访问权限,所以我不应该这样假设。对象是\uuuu PHP\u complete\u Class\u Name
类型,这通常意味着它是从会话加载的对象或以其他方式序列化的对象,但实际的类代码在反序列化时没有加载。