Я пытаюсь получить петлю Еогеаспа, чтобы отобразить все значения массива, но по какой-то причине он пропускает значение 4.PHP цикл массива Еогеасп пропуск одного ключа
echo $sku."<br>";
$skuArray = explode(" ", $sku);
$skuCount = array_count_values($skuArray);
print_r($skuArray);
echo "<br><br>";
$i=0;
foreach ($skuCount as $key => $val) {
echo "[".$i."] => ".$key." ";
$i++;
}
и это является тем, что выход выглядит следующим образом:
1DALI0SPBA775RW 2 $92.99 1GJESSGRIP10000 2 $9.99
Array ([0] => 1DALI0SPBA775RW
[1] => 2
[2] => $92.99
[3] => 1GJESSGRIP10000
[4] => 2
[5] => $9.99)
[0] => 1DALI0SPBA775RW
[1] => 2
[2] => $92.99
[3] => 1GJESSGRIP10000
[4] => $9.99
Как вы можете видеть, цикл Еогеасп говорит, что 4 равна $ 9,99, а в print_r массива оно равно 2 - что то, что я ожидаю, что это будет.
'array_count_values' суммирует количество раз, когда определенный элемент появляется в массиве. –
Проблема в том, что ваш foreach смотрит на skuCount, почему бы не сделать ваш foreach на skyuArray? – DaOgre