局部变量的值

时间:2011-08-19 02:53:23

标签: php

我正在搞乱一些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这个参数,但是怎么样?非常感谢你

1 个答案:

答案 0 :(得分:6)

通过false,而不是true来到else阻止

函数声明中的

$active = true表示该参数是可选的,因此您可以在调用函数时省略它。但是如果你传递它,那么默认值不会以任何方式影响。