Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- <?php
- function freqCount($array, $element)
- {
- $result = [[0, 0]];
- foreach ($array as $arrayElement) {
- if (is_numeric($arrayElement) && $arrayElement == $element) {
- foreach ($result as $index => $level) {
- if ($level[0] == 0) {
- $result[$index][1]++;
- }
- }
- }
- if (is_array($arrayElement)) {
- $internalResult = freqCount($arrayElement, $element);
- foreach ($internalResult as $internalLevel) {
- $found = false;
- foreach ($result as $index => $level) {
- if ($level[0] == 1 + $internalLevel[0]) {
- $result[$index][1] += $internalLevel[1];
- $found = true;
- break;
- }
- }
- if (!$found) {
- $result [] = [$internalLevel[0] + 1, $internalLevel[1]];
- }
- }
- }
- }
- return $result;
- }
- $array = [1, 4, 4, [1, 1, [1, 2, 1, 1]]];
- print_r (freqCount($array, 1));
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement