Итерация по коллекции элементов в блоках HTML в InvisionPower Content - PullRequest
0 голосов
/ 18 ноября 2011

Допустим, мы пишем блок IPContent, который является типом HTML.Я хочу перечислить элементы из $ results.

<php>
// ...
// getting db elements with classDb into $results

foreach($results as $result){</php>

{$result['id']}<br />

<php>}</php>

К сожалению, это не работает.Я знаю, что print, echo, print_r, var_dump и т. Д. Отключены, и я знаю, что для вывода единственного значения я должен использовать его с {}.

Что мне делать?

1 Ответ

0 голосов
/ 26 ноября 2011

Немного изучив тему, я пришел к выводу, что программист не может сделать цикл, описанный в моем вопросе (который встроен в блок).

Однако это можно сделать в шаблонах (не в блоках) со следующим синтаксисом:

<foreach loop="optional_loop_name_of_your_liking:$results as $result">
    {$result}
</foreach>

или

<foreach loop="optional_loop_name_of_your_liking:$results as $key => $value">
    {$key} => {$value}
</foreach>

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

...