Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/ruby-on-rails-4/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
表中第二行后台使用PHP函数_Php_Background_Rows - Fatal编程技术网

表中第二行后台使用PHP函数

表中第二行后台使用PHP函数,php,background,rows,Php,Background,Rows,我对表格的两行具有此功能: function background() { $bg = ''; // odd $bg2 = 'F3F3F3'; // even if ( $i%2 == 0 ) $bgs = "$bg"; else $bgs = "$bg2"; } PHP代码是: echo "<TABLE>"; $i = 0; while ($f = $db->fetcharray( $r ))

我对表格的两行具有此功能:

function background() {
      $bg = ''; // odd 
      $bg2 = 'F3F3F3'; // even

      if ( $i%2 == 0 )
       $bgs = "$bg";
      else
       $bgs = "$bg2";
 }
PHP代码是:

echo "<TABLE>";
$i = 0;
while ($f = $db->fetcharray( $r )) // for fetch 
{
background(); // function
echo "<tr> 
                 <td bgcolor=\"{$bgs}\">1</td>
                 <td bgcolor=\"{$bgs}\">any name</td>
                 <td bgcolor=\"{$bgs}\">any date</td>
         </tr> ";
$i++;
}
echo "</table>";
echo”“;
$i=0;
而($f=$db->fetcharray($r))//用于获取
{
background();//函数
回声“
1.
任何名字
任何日期
";
$i++;
}
回声“;
HTML输出为:

<Table>
<TR>
<td bgcolor="">$id</td>
<td bgcolor="">$name</td>
<td bgcolor="">$date</td>
</TR>
</table>

$id
$name
$date
但这并不奏效。(不显示背景色)有什么问题


感谢您在
background
函数中定义了局部作用域变量,但在函数之外它们不可用。在内部,您也不能从外部范围使用
$i
变量。因此,您应该使函数返回值:

function background($i) {
    return $i % 2 == 0 ? '' : '#F3F3F3';
}
并使用它:

...
$bgs = background($i);
echo "<tr> 
    <td bgcolor=\"{$bgs}\">$id</td>
    <td bgcolor=\"{$bgs}\">$name</td>
    <td bgcolor=\"{$bgs}\">$date</td>
</tr> ";
...
。。。
$bgs=背景($i);
回声“
$id
$name
$date
";
...

问题在于您没有解释问题。我的问题很清楚。我不管你是什么意思!我不显示背景!只是this@Saimon阿瓦齐安:1。冷静点。你看到生成的html了吗?你能把它贴在这里吗。你需要了解函数是如何工作的,它是什么-你的
函数背景
毫无意义问题在于你的颜色前面缺少了#