<?php
$arr = array('a','b','c','d','e','f','g','h','i','j','k','l');
$result = array();
$prev_value = array('value' => null, 'amount' => null);
foreach ($arr as $val) {
if ($prev_value['value'] != $val) {
unset($prev_value);
$prev_value = array('value' => $val, 'amount' => 0);
$result[] =& $prev_value;
}
$prev_value['amount']++;
}
print_r($result);
- Output for 4.3.0 - 4.3.11, 4.4.0 - 4.4.9, 5.0.0 - 5.0.5, 5.1.0 - 5.1.6, 5.2.0 - 5.2.17, 5.3.0 - 5.3.29, 5.4.0 - 5.4.45, 5.5.0 - 5.5.35, 5.6.0 - 5.6.28, 7.0.0 - 7.0.20, 7.1.0 - 7.1.33, 7.2.0 - 7.2.33, 7.3.0 - 7.3.33, 7.4.0 - 7.4.33, 8.0.0 - 8.0.30, 8.1.0 - 8.1.28, 8.2.0 - 8.2.18, 8.3.0 - 8.3.6
- Array
(
[0] => Array
(
[value] => a
[amount] => 1
)
[1] => Array
(
[value] => b
[amount] => 1
)
[2] => Array
(
[value] => c
[amount] => 1
)
[3] => Array
(
[value] => d
[amount] => 1
)
[4] => Array
(
[value] => e
[amount] => 1
)
[5] => Array
(
[value] => f
[amount] => 1
)
[6] => Array
(
[value] => g
[amount] => 1
)
[7] => Array
(
[value] => h
[amount] => 1
)
[8] => Array
(
[value] => i
[amount] => 1
)
[9] => Array
(
[value] => j
[amount] => 1
)
[10] => Array
(
[value] => k
[amount] => 1
)
[11] => Array
(
[value] => l
[amount] => 1
)
)
preferences:
253.25 ms | 408 KiB | 372 Q