$value) { $camelKey = lcfirst(str_replace(' ', '', ucwords(str_replace('_', ' ', $key)))); if (is_array($value)) { $result[$camelKey] = self::snakeToCamel($value); } elseif (is_object($value)) { $result[$camelKey] = self::snakeToCamel((array)$value); } else { $result[$camelKey] = $value; } } return $result; } /** * Convert array keys from camelCase to snake_case recursively */ public static function camelToSnake(array $data): array { $result = []; foreach ($data as $key => $value) { $snakeKey = strtolower(preg_replace('/(?