protected static function filterStrings(array &$subjectArray, $goDeep = null, $filterFunction = null)
    {
        $arrayWalkFunction = self::getArrayWalkFunction($goDeep);

        $arrayWalkFunction($subjectArray, function (&$item) use ($filterFunction) {
            if (!is_string($item)) {
                return;
            }

            if (is_callable($filterFunction)) {
                $item = $filterFunction($item);
            }

            $item = trim($item);
        });

        return $subjectArray;
    }