从多维数组中提取特定数据


Extract specific data from multidimensional array

我有一个小问题。我正在尝试从[user]中提取数据,但我似乎做对了。有人能给我一个如何提取用户id的例子吗?例如,我是黄金。如果有帮助的话,这就是$_SESSION数组(会话包含的内容)。

 Array ( [__default] => Array ( 
                            [session.counter] => 3
                            [session.timer.start] => 1307209662 
                            [session.timer.last] => 1307209693 
                            [session.timer.now] => 1307209701 
                            [session.client.browser] => Mozilla/5.0 (Windows NT 6.1; WOW64; rv:2.0.1) Gecko/20100101 Firefox/4.0.1 
                            [registry] => JRegistry Object ( 
                                                            [_defaultNameSpace] => session
                                                            [_registry] => Array ( 
                                                                                    [session] => Array ( 
                                                                                                        [data] => stdClass Object ( ) 
                                                                                                        ) 
                                                                                ) 
                                                            [_errors] => Array ( ) 
                                                            ) 
                            [user] => JUser Object ( 
                                                    [id] => 0 
                                                    [name] => 
                                                    [username] => 
                                                    [email] => 
                                                    [password] => 
                                                    [password_clear] => 
                                                    [usertype] => 
                                                    [block] => 
                                                    [sendEmail] => 0 
                                                    [gid] => 0 
                                                    [registerDate] => 
                                                    [lastvisitDate] => 
                                                    [activation] => 
                                                    [params] => 
                                                    [aid] => 0 
                                                    [guest] => 1 
                                                    [_params] => JParameter Object ( [_raw] => 
                                                                                    [_xml] => 
                                                                                    [_elements] => Array ( ) [_elementPath] => Array (                                                                                                                                                              [0] => C:'xampp'htdocs'libraries'joomla'html'parameter'element )
                                                                                                                                                            [_defaultNameSpace] => _default 
                                                                                                                                                            [_registry] => Array ( 
                                                                                                                                                                                    [_default] => Array ( 
                                                                                                                                                                                                        [data] => stdClass Object ( ) 
                                                                                                                                                                                                        ) 
                                                                                                                                                                                ) 
                                                                                                                                                            [_errors] => Array ( ) 
                                                                                    ) 
                                                    [_errorMsg] => [_errors] => Array ( ) 
                                                    ) 
                            [session.token] => 971893bd69fff85ea2a006788a28b15d 
                        ) 
    [referrerid] => AUPRS-JOHNDOE
    )
$user = $_SESSION['user'];
echo $user->id;

这似乎正是你所需要的。

这将输出用户名:(如果有)

 print $_SESSION["__default"]["user"]->name;

首先需要克服$_SESSION数组中的__default键索引。user也是一个数组关键字。但是user条目包含的是一个对象,所以您需要->对象箭头之类的东西来最终访问name

此外,我不会依赖__default是一个既定的。对Joomla一无所知,但$_SESSION数组结构可能更灵活。因此,为什么最好找到一个函数来为您获取用户对象。