Синтаксис переменной - PullRequest
       9

Синтаксис переменной

0 голосов
/ 27 декабря 2010

Это вопрос, связанный с получением полей Drupal CCK (на всякий случай, если это что-то изменит).

У меня есть несколько полей Drupal CCK с похожими именами.У них одно и то же имя с номером в конце.что я хотел бы получить значения из этих полей (всего десять полей).Это синтаксис для доступа к значениям полей:

$node->cck_field_1[0]['value']
$node->cck_field_2[0]['value']
$node->cck_field_3[0]['value']

… и т. Д.

Поскольку все они являются отдельными полями, но они пронумерованы, я хотел бы просто выполнить циклпостепенно записывать то, что мне нужно (то, что я пишу, - это гораздо больше, чем просто доступ к данным этих полей, но они являются определяющими факторами для остальных), но я не могу понять, как вставить переменнуюв эту часть кода.

Например, (если бы $i была переменной инкрементного числа), я бы хотел написать следующую строку в качестве переменной:

'$node->cck_field_' . $i . '[0]["value"]'

Я понимаю, как использоватьфигурные скобки для создания имени переменной из строки, но та часть, в которой мне нужна переменная, должна находиться за пределами строки.например, это работает:

${node}->cck_field_1[0]['value']

, но это не так:

${node->cck_field_1}[0]['value']

(поэтому я не могу написать ${'node->cck_field'.$i}[0]['value'])

Так как можно написать эточтобы я мог использовать $ i вместо числа?

1 Ответ

6 голосов
/ 27 декабря 2010

Это должно работать:

$node->{'cck_field_' . $i}[0]['value']
...