我无法更改数组中的特定值。
以下是我目前使用的相关代码:
$countryCountList=array("Italy"=> 0, "USA"=> 0);
$localResult=mysqli_query($con, $queryforcheck) or die("Errormessage: %s\n". $con->error);
$wholeCountryArray = $localResult->fetch_array(MYSQLI_NUM);
foreach($wholeCountryArray as $rowCountry) {
$countryCountList[$rowCountry]=$countryCountList[$rowCountry]+1;
}
return $countryCountList;
所以我想在foreach-loop中计算数组“countryCountList”中的一些值。我可以证明foreach正在计算,但是当我在php文件的末尾返回时,它会返回在这段代码的第一行中定义的值。
所以似乎foreach确实计算了数组的值,但没有保存它以成功返回它。
希望这是足够的信息。有人有想法吗?
答案 0 :(得分:1)
尝试将MYSQLI_NUM替换为MYSQLI_ASSOC
$wholeCountryArray = $localResult->fetch_array(MYSQLI_ASSOC);
你的循环可能正在运行,但是没有你希望它只是使用数字的字符串索引,所以它正在做
$countryCountList[0]=$countryCountList[0]+1;
而不是
$countryCountList["Italy"]=$countryCountList["Italy"]+1;
就像你在想的那样。