- preg_match: documentation ( source)
- print_r: documentation ( source)
- str_replace: documentation ( source)
<?php
function sanitizeUri($uri) {
$keysToSanitize = array(
'password',
'provider_refresh_token',
'provider_consumer_secret'
);
foreach ($keysToSanitize as $key) {
$pattern = "/(?:\?|&)$key=(\S*?)(?:\s|&)?";
while (preg_match($pattern, $uri, $matches) && $matches[1] != "**hidden**") {
$uri = str_replace($matches[1], "**hidden**", $uri);
}
}
return $uri;
}
$uri1 = "POST /2.0/accounts/5520ccca39a0328d4d8b456a/sources?label=0&type=IMAP&use_ssl=1&passwOrd=pizza&email=kaisi789%40aol.com&server=imap.yahoo.com&port=993&username=kaisi789%40aol.com&passWord=nachos HTTP/1.0";
$uri2 = "POST /2.0/accounts/5520ccca39a0328d4d8b456a/sources?label=0&type=IMAP&use_ssl=1&provider_refresh_token=sidfosdifo2 HTTP/1.0";
$uri3 = "POST /2.0/accounts/5520ccca39a0328d4d8b456a/sources?provider_refresh_token=sidfosdifo2";
print_r(sanitizeUri($uri1) . "\n");
print_r(sanitizeUri($uri2) . "\n");
print_r(sanitizeUri($uri3) . "\n");