如何在 PHP 中另一个数组的 foreach 循环中将数组的值增加 1
How to increment the value of an array by 1 in a foreach-loop of another array in PHP
我正在编写一个程序,该程序必须计算某个值在数组中存在的次数。
到目前为止,这是我的代码:
$aArray1 = array();
$nCount = 1;
foreach ($_SESSION['array2'] as $value) {
if (array_key_exists($value, $aArray1)) {
// Increment the value of the existing key(number).
}else{
// add $value to $aArray1 and give it a value 1.
$aArray1[$value] = $nCount;
}
}
我想知道如何将 $aArray1 中现有数字的值增加 1。
当我使用 10 个文本框和 post 方法将数字:(4-4-5-6-7-7-7-8-4-4)
放入我的数组中并打印我的 $aArray1
时,它显示:
Array ( [4] => 1 [5] => 1 [6] => 1 [7] => 1 [8] => 1 )
但我希望它显示:
Array ( [4] => 4 [5] => 1 [6] => 1 [7] => 3 [8] => 1 )
谁能帮帮我
您的代码可以简化为:
$aArray1 = array();
foreach ($_SESSION['array2'] as $value) {
if (!isset($aArray1[$value])) {
$aArray1[$value] = 0;
}
$aArray1[$value]++;
}
更进一步 - 这与 array_count_values
所做的相同。所以,改用它:
$aArray1 = array_count_values($_SESSION['array2']);
$_SESSION['array2'] = array(4,4,5,6,7,7,7,8,4,4,4,8);
$aArray1 = array();
foreach ($_SESSION['array2'] as $value) {
if (array_key_exists($value, $aArray1)) {
$aArray1[$value] = ($aArray1[$value] + 1);
// Increment the value of the existing key(number).
}else{
// add $value to $aArray1 and give it a value 1.
$aArray1[$value] = 1;
}
}
结果:print_r($aArray1);
Array ( [4] => 5 [5] => 1 [6] => 1 [7] => 3 [8] => 2 )
我正在编写一个程序,该程序必须计算某个值在数组中存在的次数。 到目前为止,这是我的代码:
$aArray1 = array();
$nCount = 1;
foreach ($_SESSION['array2'] as $value) {
if (array_key_exists($value, $aArray1)) {
// Increment the value of the existing key(number).
}else{
// add $value to $aArray1 and give it a value 1.
$aArray1[$value] = $nCount;
}
}
我想知道如何将 $aArray1 中现有数字的值增加 1。
当我使用 10 个文本框和 post 方法将数字:(4-4-5-6-7-7-7-8-4-4)
放入我的数组中并打印我的 $aArray1
时,它显示:
Array ( [4] => 1 [5] => 1 [6] => 1 [7] => 1 [8] => 1 )
但我希望它显示:
Array ( [4] => 4 [5] => 1 [6] => 1 [7] => 3 [8] => 1 )
谁能帮帮我
您的代码可以简化为:
$aArray1 = array();
foreach ($_SESSION['array2'] as $value) {
if (!isset($aArray1[$value])) {
$aArray1[$value] = 0;
}
$aArray1[$value]++;
}
更进一步 - 这与 array_count_values
所做的相同。所以,改用它:
$aArray1 = array_count_values($_SESSION['array2']);
$_SESSION['array2'] = array(4,4,5,6,7,7,7,8,4,4,4,8);
$aArray1 = array();
foreach ($_SESSION['array2'] as $value) {
if (array_key_exists($value, $aArray1)) {
$aArray1[$value] = ($aArray1[$value] + 1);
// Increment the value of the existing key(number).
}else{
// add $value to $aArray1 and give it a value 1.
$aArray1[$value] = 1;
}
}
结果:print_r($aArray1);
Array ( [4] => 5 [5] => 1 [6] => 1 [7] => 3 [8] => 2 )