function filterItem($data, $valueIdentifier)
    {
        $value = Utils::arrayGetByPath($data, $valueIdentifier);
        $value = $this->applyFilters($value, $valueIdentifier, $data);
        if (is_array($value)) {
            foreach (array_keys($value) as $k) {
                $value[$k] = $this->filterItem($data, "{$valueIdentifier}[{$k}]");
            }
        }
        return $value;
    }
function filterItem($data, $valueIdentifier)
    {
        $value = Utils::arrayGetByPath($data, $valueIdentifier);
        $value = $this->applyFilters($value, $valueIdentifier, $data);
        if (is_array($value)) {
            foreach (array_keys($value) as $k) {
                $value[$k] = $this->filterItem($data, "{$valueIdentifier}[{$k}]");
            }
        }
        return $value;
    }
function filterItem ( $ data , $ valueIdentifier ) { $ value = Utils :: arrayGetByPath ( $ data , $ valueIdentifier ) ; $ value = $ this -> applyFilters ( $ value , $ valueIdentifier , $ data ) ; if ( is_array ( $ value ) ) { foreach ( array_keys ( $ value ) as $ k ) { $ value [ $ k ] = $ this -> filterItem ( $ data , "{$valueIdentifier}[{$k}]" ) ; } } return $ value ; }
Apply filters on a single item in the array

@param array $data
@param string $valueIdentifier
@return mixed
Apply filters on a single item in the array