-1
$door = $_POST["doorType"];  

$doorWidth;
if ($door=="Single")
{
        $doorWidth = $width;
}
else if ($door=="Double")
{
$doorWidth = $dOneWidth;
}

当我运行该页面时,它无法识别变量 $doorWidth?

4

2 回答 2

1
$doorWidth;

不分配任何东西。它只将变量 ... 返回到任何东西。这样做 PHP 正在访问变量,导致通知。例如写:

$doorWidth = NULL; // assigns something (some default value if $door isn't "Signle" nor "Double")
于 2013-04-22T17:31:25.680 回答
1

我猜它$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);
}
于 2013-04-22T17:32:09.657 回答