&$value) { if (is_array($value)) { $value = self::removeEmptyStrings($value); } else { if (is_string($value) && !strlen($value)) { if (is_array($array)) { unset($array[$key]); } else { unset($array->$key); } } } } unset($value); return $array; } /** * */ public static function isAssoc(array $arr) { if (array() === $arr) { return false; } return array_keys($arr) !== range(0, count($arr) - 1); } /** * Returns the depth of an array */ function depth(array $array) { $depthMax = 1; foreach ($array as $value) { if (is_array($value)) { $depth = self::depth($value) + 1; if ($depth > $depthMax) { $depthMax = $depth; } } } return $depthMax; } }