PHP,Dwoo - 变量

时间:2010-01-06 22:05:47

标签: php dwoo

我正在尝试将其转换为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将变量后缀添加到变量?!?!

谢谢!

修改

我可能应该更好地解释一下。

基本上,我正在做的是从mysql表中获取列名列表$ column_list(使用“SHOW COLUMNS FROM ...”)。然后做另一个查询来选择数据,在那个查询中,我将每列中的数据与另一个表匹配,并添加一个前缀为“_diff”的列,所以如果我有一个名为“name”的列,我也有一列“name_diff”(这些列不在$ column_list中),其值为1或0. 1或0只表示天气或不表示在另一个表中匹配的数据。无论如何,列和列名的数量总是在变化,所以我不能在代码中真正使用任何列名。所以....

使用dwoo,{$ duplicate。$ column}就像$ duplicate ['name'];而我正在尝试做的是动态添加后缀“_diff”,这样我就可以改变单元格的背景颜色......我知道这太令人困惑了!我很难解释事情!

2 个答案:

答案 0 :(得分:1)

我担心现在唯一的解决方法是执行以下操作:

{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}

答案 1 :(得分:0)

试试这个

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