0

我正在尝试在 Drupal 7 中创建自定义用户配置文件。其中一个字段引用了用户对象,我无法弄清楚这样做的语法是什么。我读过应该使用'->',但我不确定如何使用。

a的结构print_r($user_object)在: http: //pastebin.mozilla.org/1741565

我正在尝试获取内部数据field_country[data]- 只是不知道该怎么做。

此外,当我尝试访问时$user_object[user_relationships_ui],什么都看不到。它不会抛出错误,但也不会打印任何内容。

谢谢您的帮助

4

2 回答 2

0

我想出办法的方法是将对象转换为数组 -

$user_object= (array) $user_profile['field_country']['#object'];

之后,我可以将其作为普通数组访问。

于 2012-08-07T09:26:40.810 回答
-1

php 中对象的属性必须由->property_name. 并且,在使用关联数组时,使用['key_name'].

在这里,$user_object[0]['user_relationship_ui']['#type']给你#type.

不要将对象与关联的数组混淆。

编辑:进一步解释,

参见第 18、19 行:

[field_country] => Array (
                    [#theme] => field 

见第 31、32 行:

[#object] => stdClass Object (
                            [uid] => 1 

不同的是,如果你想访问#theme,你必须使用['#theme']. 如果你想访问uid,你必须这样做['#object']->uid

于 2012-08-06T14:14:54.563 回答