<?php
/**
* Cleans up artifacts from HTTP responses for batch processing.
*
* @param array $responses An array of HTTP response data. Each element
* should be an associative array containing at least
* 'body', 'headers', and 'status_code' keys.
* @return array An array of cleaned response data.
*/
function cleanupResponses(array $responses): array
{
$cleanedResponses = [];
foreach ($responses as $response) {
// Validate input
if (!isset($response['body']) || !isset($response['headers']) || !isset($response['status_code'])) {
continue; // Skip invalid response
}
// Sanitize the response body (example: remove HTML tags)
$body = strip_tags($response['body']);
// Clean up headers (example: remove sensitive information)
$headers = array_filter($response['headers'], function ($value) {
return strpos($value, 'Authorization:') === false &&
strpos($value, 'Cookie:') === false; // Example: remove Auth and Cookie headers
});
// Create a new cleaned response
$cleanedResponse = [
'body' => $body,
'headers' => $headers,
'status_code' => $response['status_code'],
];
$cleanedResponses[] = $cleanedResponse;
}
return $cleanedResponses;
}
?>
Add your comment