public static function OAuthUtil::parse_parameters in OAuth 1.0 7.3
Same name and namespace in other branches
- 6.3 lib/OAuth.php \OAuthUtil::parse_parameters()
2 calls to OAuthUtil::parse_parameters()
- OAuthRequest::from_request in lib/
OAuth.php - attempt to build up a request from what was passed to the server
- OAuthRequest::__construct in lib/
OAuth.php
File
- lib/
OAuth.php, line 856 - OAuth 1.0 server and client library.
Class
Code
public static function parse_parameters($input) {
if (!isset($input) || !$input) {
return array();
}
$pairs = explode('&', $input);
$parsed_parameters = array();
foreach ($pairs as $pair) {
$split = explode('=', $pair, 2);
$parameter = OAuthUtil::urldecode_rfc3986($split[0]);
$value = isset($split[1]) ? OAuthUtil::urldecode_rfc3986($split[1]) : '';
if (isset($parsed_parameters[$parameter])) {
// We have already recieved parameter(s) with this name, so add to the list
// of parameters with this name
if (is_scalar($parsed_parameters[$parameter])) {
// This is the first duplicate, so transform scalar (string) into an array
// so we can add the duplicates
$parsed_parameters[$parameter] = array(
$parsed_parameters[$parameter],
);
}
$parsed_parameters[$parameter][] = $value;
}
else {
$parsed_parameters[$parameter] = $value;
}
}
return $parsed_parameters;
}