了解致命错误:无法在写入上下文中使用临时表达式

问题描述 投票:0回答:2

我想确切地了解这个错误在 PHP 中意味着什么:如何故意创建错误以及如何避免或修复它。 在下面的简单示例中,我收到此错误:

致命错误:无法在第 11 行的写入上下文中使用临时表达式

第 11 行是以下行:

response['error'] = "Error: B is less that C <br />";

错误代码如下:

$response = [];
$a = 4;
$b = 8;
$c = 9;
$d = 29;

if($a !== $b){
    $response['error'] = "Error: A is not equal to B <br />";
}elseif($b < $c){
    response['error'] = "Error: B is less that C <br />";
}
if($d > $c){
    response['success'] = "Success: D is greater than C<br />";
}

echo $response['error'];
echo $response['success'];

我的期望是:

确保正确处理此异常

我知道变量已定义,否则错误将是:

注意:未定义的变量

php fatal-error
2个回答
88
投票

您忘记在单词

$
之前添加
response

这在第 11 行和第 14 行中很明显,如下所示:

response['error'] = "Error: B is less that C <br />";

您应该将其更改为:

$response['error'] = "Error: B is less that C <br />";

希望这有帮助。


0
投票

我最终来到这里,有信心我已经包括了花了几个小时摸着头脑的美元,发现了问题,比较了之间的差异

this->$filename = $filename;

$this->filename = $filename;

$ 在两种情况下都存在,但如果你把它放在正确的位置,它会有所帮助

;-)

最新问题
© www.soinside.com 2019 - 2024. All rights reserved.