Drupal 7 访问Profile2字段的奇怪行为
我在用这个。我有一些自定义字段,大多数情况下都工作得很好 在我的模块中有一个Drupal 7 访问Profile2字段的奇怪行为,drupal-7,drupal-modules,Drupal 7,Drupal Modules,我在用这个。我有一些自定义字段,大多数情况下都工作得很好 在我的模块中有一个hook\u user\u update()函数,我想根据Profile2字段的值执行操作。我正在以管理用户的身份对其进行测试,编辑用户配置文件并保存 钩子函数包含以下内容: var_dump($info[$role]->$field); 并输出: array(1) { ["und"]=> array(1) { [0]=> array(3) { ["value"]=
hook\u user\u update()
函数,我想根据Profile2字段的值执行操作。我正在以管理用户的身份对其进行测试,编辑用户配置文件并保存
钩子函数包含以下内容:
var_dump($info[$role]->$field);
并输出:
array(1) {
["und"]=>
array(1) {
[0]=>
array(3) {
["value"]=>
string(16) "/producer/my-biz"
["format"]=>
NULL
["safe_value"]=>
string(16) "/producer/my-biz"
}
}
}
…这是正确的。因此,我应该能够轻松地获得值(或safe\u值
)
但当我这么做的时候:
var_dump($info[$role]->$field['und'][0]['value']);
var_dump($info[$role]->$field['und']);
我明白了:
致命错误:无法在第155行的//sites/all/modules/ssvalidate/ssvalidate.module中将字符串偏移量用作数组*
当我这样做时:
var_dump($info[$role]->$field['und'][0]['value']);
var_dump($info[$role]->$field['und']);
我明白了:
空的
这怎么可能?当我查看整个字段数组时,它包含所有内容。只要我尝试访问该(嵌套)数组的元素,事情就会变得一团糟
有人知道会发生什么吗?当使用变量作为PHP对象键时,请尝试将其包装在括号中:{}。即$信息[$role]->{$field}['und'][0]['value']将变量用作PHP对象键时,请尝试将其包装在括号中:{}。即$信息[$role]->{$field}['und'][0]['value']