PHP, Dwoo - Переменные - PullRequest
       19

PHP, Dwoo - Переменные

1 голос
/ 07 января 2010

Я пытаюсь преобразовать это в dwoo:

foreach($duplicates as $duplicate)
{
    echo "<tr>";
    foreach($column_list as $column)
    {
        if(@$duplicate{$column . "_diff"} == 1)
        {
            $id_is_different = '';
            echo "<td style=\"background: #333333\" >". $duplicate{$column} ."</td>\n";
        }
        else
        {
            echo "<td>" . $duplicate{$column} ."</td>\n";
        }
    }
    echo "</tr>";
}

У меня есть это:

{foreach $duplicates duplicate}
<tr>
    {foreach $column_list column}
    <td{if $duplicate.$column.'_diff' == 1} style="background: #333"{/if}>{$duplicate.$column}</td>
    {/foreach}
</tr>            
{/foreach}

За исключением:. $ Column .'_ diff 'в 4-й строке, работает отлично. Любая идея, как я могу добавить суффикс к переменной с помощью dwoo?!?!

Спасибо!

EDIT

Я, наверное, должен был объяснить лучше.

По сути, я собираю список имен столбцов из таблицы MySQL, $ column_list (используя "SHOW COLUMNS FROM ..."). Затем, выполняя другой запрос для выбора данных, в этом запросе я сопоставляю данные в каждом столбце с другой таблицей и добавляю столбец с префиксом «_diff», поэтому, если у меня есть столбец с именем «name», у меня также есть столбец «name_diff» (эти столбцы отсутствуют в $ column_list), который имеет значение 1 или 0. 1 или 0 просто указывают на погоду или не соответствуют данным в другой таблице. Во всяком случае, число столбцов и имена столбцов всегда меняются, поэтому я не могу использовать имена столбцов в коде. так ....

с dwoo, {$ duplicate. $ Column} будет выглядеть как $ duplicate ['name']; и я пытаюсь динамически добавить суффикс "_diff", чтобы я мог изменить цвет фона ячейки ... Я знаю, это было очень запутанно! Я действительно плохо объясняю вещи!

Ответы [ 2 ]

1 голос
/ 07 января 2010

Боюсь, пока единственное решение - сделать следующее:

{foreach $duplicates duplicate}
<tr>
    {foreach $column_list column}
        {$diffcol = cat($column '_diff')}
        <td{if $duplicate.$diffcol == 1} style="background: #333"{/if}>{$duplicate.$column}</td>
    {/foreach}
</tr>            
{/foreach}
0 голосов
/ 07 января 2010

попробуйте это

{foreach $column_list column}
    <td{if $duplicate.$column.last == 1} style="background: #333"{/if}>{$duplicate.$column}</td>
    {/foreach}
...