【发布时间】:2021-11-09 22:43:31
【问题描述】:
我的 webhotel 已升级到 PHP 8.0 版代码正在运行,但它现在在主页上显示警告消息。
我的数组有点问题。
Warning: Undefined array key "JS" in /customers/c/c/4/plf1x2.dk/httpd.www/test/svspeuro.php on line 1465
Warning: Undefined array key "Vinst" in /customers/c/c/4/plf1x2.dk/httpd.www/test/svspeuro.php on line 1465
Warning: Undefined array key "PWB" in /customers/c/c/4/plf1x2.dk/httpd.www/test/svspeuro.php on line 1468 Warning:
Undefined array key "Vinst" in /customers/c/c/4/plf1x2.dk/httpd.www/test/svspeuro.php on line 1468 Warning:
Undefined array key "oavgjord" in /customers/c/c/4/plf1x2.dk/httpd.www/test/svspeuro.php on line 1471 here
我试过了
enterif (isset($matchesLines[$Borta_Lag]['omgångar'])){
$matchesLines[$Borta_Lag]['omgångar']+=1;
} code here
但它不起作用,它得到一个空值。
这里是代码。 我希望有人能帮助我吗?
// Sorterar ut lagnamn och resultat
$file = file($filename);
$result = array_merge($file,$resultatarray)
$matchesLines = array();
foreach($result as $line) {
if(preg_match('/^([a-öA-Ö]+\D)-([a-öA-Ö]+\D) (\d+)-(\d+)/', $line, $data)){
$Hemma_Lag = $data[1];
$Borta_Lag = $data[2];
$Hemma_Resultat = $data[3];
$Borta_Resultat=$data[4];
$matchesLines[$Hemma_Lag]['Vinst'] += 0;
$matchesLines[$Borta_Lag]['Vinst'] += 0;
$matchesLines[$Hemma_Lag]['oavgjord'] += 0;
$matchesLines[$Borta_Lag]['oavgjord'] += 0;
$matchesLines[$Hemma_Lag]['Förlust'] += 0;
$matchesLines[$Borta_Lag]['Förlust'] += 0;
if ($Hemma_Resultat == $Borta_Resultat){
$matchesLines[$Hemma_Lag]['lag'] = $Hemma_Lag;
$matchesLines[$Hemma_Lag]['poang']+=1;
$matchesLines[$Hemma_Lag]['mål'] += $Hemma_Resultat;
$matchesLines[$Hemma_Lag]['måli'] += $Borta_Resultat;
$matchesLines[$Hemma_Lag]['oavgjord'] += 1;
$matchesLines[$Borta_Lag]['lag'] = $Borta_Lag;
$matchesLines[$Borta_Lag]['poang'] +=1;
$matchesLines[$Borta_Lag]['mål'] += $Borta_Resultat;
$matchesLines[$Borta_Lag]['måli'] += $Hemma_Resultat;
$matchesLines[$Borta_Lag]['oavgjord'] += 1;
}
if ($Hemma_Resultat > $Borta_Resultat){
$matchesLines[$Hemma_Lag]['lag'] = $Hemma_Lag;
$matchesLines[$Hemma_Lag]['poang']+=3;
$matchesLines[$Hemma_Lag]['mål'] += $Hemma_Resultat;
$matchesLines[$Hemma_Lag]['måli'] += $Borta_Resultat;
$matchesLines[$Hemma_Lag]['Vinst'] += 1;
$matchesLines[$Borta_Lag]['lag'] = $Borta_Lag;
$matchesLines[$Borta_Lag]['poang'] +=0;
$matchesLines[$Borta_Lag]['mål'] += $Borta_Resultat;
$matchesLines[$Borta_Lag]['måli'] += $Hemma_Resultat;
$matchesLines[$Borta_Lag]['Förlust'] += 1;
}
if ($Hemma_Resultat < $Borta_Resultat) {
$matchesLines[$Hemma_Lag]['lag'] = $Hemma_Lag;
$matchesLines[$Hemma_Lag]['poang']+=0;
$matchesLines[$Hemma_Lag]['Förlust'] += 1;
$matchesLines[$Hemma_Lag]['mål'] += $Hemma_Resultat;
$matchesLines[$Hemma_Lag]['måli'] += $Borta_Resultat;
$matchesLines[$Borta_Lag]['lag'] = $Borta_Lag;
$matchesLines[$Borta_Lag]['poang'] +=3;
$matchesLines[$Borta_Lag]['Vinst'] += 1;
$matchesLines[$Borta_Lag]['mål'] += $Borta_Resultat;
$matchesLines[$Borta_Lag]['måli'] += $Hemma_Resultat;
}
if (isset($matchesLines[$Borta_Lag])){
$matchesLines[$Borta_Lag]['omgångar']+=1;
$matchesLines[$Hemma_Lag]['omgångar']+=1;
}
}
}
【问题讨论】:
-
我不认为这是 PHP 8 特有的东西。我认为这可能只是您更新的 PHP 版本中 php.ini 中
display_errors设置的不同。由于未初始化的变量,我认为您之前已经收到了这些警告,但它们只是没有显示出来。 -
感谢您的回复。我想你是对的。但问题仍然存在。如何摆脱按摩?我不明白如何声明变量。
-
@Don'tPanic 不,这是 PHP 8.0 的提升
-
@Martin 哦,是的,你是对的。
-
@Don'tPanic 我刚刚发现了它,这让我有些难过......我的错误日志不再为空
:-(