我正在使用一个zend模型,它返回一个$ row形式的对象,其中包含所有值
但是我无法从这个数组获得价值。没有foreach
是可以获得价值的这是返回的数组
Zend_Db_Table_Row Object
(
[_data:protected] => Array
(
[user_id] => 2
[udid] => 34
[firstname] => a
[lastname] => a
[email] => jusic.sl@gmail.com
[username] => abc
[password] => c91718531fd9f8b89c4e
[created_date] => 2010-02-11
[updated_datetime] => 2012-06-25 12:48:17
[lastlogin_datetime] =>
[group_id] => 2
[status] => Active
)
)
我需要获取user_id,firstname,来自此数组的电子邮件
任何帮助将不胜感激。
我试过像
$ forgotpassword = $ userModel-> forgotpassword($ post); //包含此数组
$ id = $ forgotpassword ['_ data:protected'] ['id'];出口; //但似乎无法正常工作
答案 0 :(得分:6)
您无法直接访问_data
。这是protected。
来自ZF Reference Guide on Naming Conventions:
[...]使用“private”或“protected”修饰符声明的变量,变量名称的第一个字符必须是单个下划线。
你可以这样做(由于__get
/ __set
)
echo $forgotpassword->user_id;
或(由于ArrayAccess
)
echo $forgotpassword['user_id'];
或(如果你想要一个数组)
$array = $forgotpassword->toArray();
echo $array['user_id'];
请参阅参考指南和代码