我正在搞乱一些PHP代码并发现这令我感到困惑
DisplayButton($width, $name, $url, $judge);
public function DisplayButton($width, $name, $url, $active = true)
{
if ($active)
{
echo "<td width ='$width%'>
<a href ='$url'>
<img src ='s-logo.gif' alt ='$name' border ='0' /></a>
<a href ='$url'><span class='menu'>$name</span></a></td>";
}
else
{
echo "<td width ='$width%'>
<img src ='side-logo.gif'>
<span class='menu'>$name</span></td>";
}
}
在这种情况下如何定义像$ active = true这样的参数,因为我认为传递的布尔变量$ judge(true或false)的值将被强制更改为true,因为$ active = true,那怎么可能达到else语句呢?我可能误解了$ active = true这个参数,但是怎么样?非常感谢你
答案 0 :(得分:6)
通过false
,而不是true
来到else
阻止
$active = true
表示该参数是可选的,因此您可以在调用函数时省略它。但是如果你传递它,那么默认值不会以任何方式影响。