PHP未定义变量,颜色变化

时间:2011-12-15 11:46:31

标签: php

我试图让我的TABLE(html)中的每一个TD成为另一种颜色,因此我使用这个变量:

$bgColor = ($bgColor == "#eee") ? "#fff" : "#eee";

然后我在桌子上打电话:

<td style='background:<?=$bgColor;?>'></td>

但后来我得到一个错误:$ bgColor =($ bgColor等)的未定义变量;

它正在运行,但我收到了这个错误。

我该如何解决这个问题?通常我在忘记if(isset())时会收到此错误;但那不是这里的情况。

感谢前进:)

4 个答案:

答案 0 :(得分:3)

$bgColor = (isset($bgColor) && $bgColor == "#eee") ? "#fff" : "#eee";

答案 1 :(得分:1)

好的,你可以通过将变量$ bgColor

的@ symbol infront压制成这样的错误
$bgColor = (@$bgColor == "#eee") ? "#fff" : "#eee";
<td style='background:<?=$bgColor;?>'></td>

或者简单地把isset()函数放在这个..

$bgColor = (isset($bgColor) == "#eee") ? "#fff" : "#eee";
<td style='background:<?=$bgColor;?>'></td>

答案 2 :(得分:0)

你应该将$ bgColor设置为起始值#fff(或#eee),否则它对于表的第一行是未定义的(假设你有一个循环来填充{{1}使用<td>的振荡值 - 实际上你的问题几乎可以推测出来。)

答案 3 :(得分:-1)

这是一个错误,警告或通知吗?未定义的变量在PHP中不是一个大问题,但如果它是一个通知,您可以通过关闭错误报告中的“E_NOTICE”来控制它。