$door = $_POST["doorType"];
$doorWidth;
if ($door=="Single")
{
$doorWidth = $width;
}
else if ($door=="Double")
{
$doorWidth = $dOneWidth;
}
当我运行页面时,它不识别变量$doorWidth?
$doorWidth;
没有赋值。它只返回变量…任何事情。PHP这样做就是访问变量,从而产生一个通知。例如:
$doorWidth = NULL; // assigns something (some default value if $door isn't "Signle" nor "Double")
我猜$door
的值远低于Single|Double
。这可能是由应用程序中的另一个错误引起的。你应该知道,你应该在任何情况下为一个变量设置一个适当的默认值,如果你要分配给它从一个条件语句(如if
):
$doorWidth = 'not set!';
if ($door=="Single")
{
$doorWidth = $width;
}
else if ($door=="Double")
{
$doorWidth = $dOneWidth;
}
关于switch
语句的进一步注意,它有一个default:
分支:
switch($door) {
case 'Single' :
// do something
break;
case 'Double' :
// do something else
break;
default:
die('$door has a value far from 'Single|Double'. Currently: ' . $door);
}