2013-03-11 2 views
1

Здравствуйте, я использую следующий код для отображения пользовательского поля в профиле пользователя. Однако я могу заставить его отображать только одно значение за раз. Как я могу извлечь несколько значений из поля? Поле настраивается как неограниченное целое поле. Каждое значение находится в его собственной строке.Показать несколько значений из поля Drupal 7

<?php 
    global $user; 
    $user_data = user_load($user->uid); 
    $test = $user_data->field_companies['und']['0']['value']; 
    echo $test; 
?> 

ответ

0
foreach ($user_data->field_companies['und'] as $val) { 
    // Do something with $val 
} 
+0

Пробовал следующее. Но он возвращает Array Array Array вместо фактических значений. 28 35 48 –

+0

Забываете ли вы о '['value']'? 'echo $ val ['value']' – Rawkode

+0

Конечно, был. Благодарю. –

2

Правильный метод заключается в использовании field_get_items() функции:

$items = field_get_items('user', $user_data, 'field_companies'); 
foreach ($items as $item) { 
    $val = $item['value']; 
} 

Запуск через массив необработанного значения является опасным, как она игнорирует соображения языка.

+0

Это тоже работает. благодаря –

Смежные вопросы