17            return array_map(array(
'IMSGlobal\LTI\OAuth\OAuthUtil', 
'urlencode_rfc3986'), 
$input);
 
   18        } 
else if (is_scalar(
$input)) {
 
   19            return str_replace(
'+', 
' ', str_replace(
'%7E', 
'~', rawurlencode(
$input)));
 
   29        return urldecode($string);
 
   40        if (preg_match_all(
'/('.($only_allow_oauth_parameters ? 
'oauth_' : 
'').
'[a-z_-]*)=(:?"([^"]*)"|([^,]*))/', 
$header, $matches)) {
 
   41            foreach ($matches[1] as 
$i => 
$h) {
 
   56        if (function_exists(
'apache_request_headers')) {
 
   59            $headers = apache_request_headers();
 
   66            foreach ($headers AS 
$key => $value) {
 
   67                $key = str_replace(
" ", 
"-", ucwords(strtolower(str_replace(
"-", 
" ", 
$key))));
 
   74            if( isset(
$_SERVER[
'CONTENT_TYPE']) )
 
   76            if( isset($_ENV[
'CONTENT_TYPE']) )
 
   77                $out[
'Content-Type'] = $_ENV[
'CONTENT_TYPE'];
 
   80                if (substr(
$key, 0, 5) == 
'HTTP_') {
 
   84                    $key = str_replace(
' ', 
'-', ucwords(strtolower(str_replace(
'_', 
' ', substr(
$key, 5)))));
 
   99        $pairs = explode(
'&', 
$input);
 
  101        $parsed_parameters = array();
 
  102        foreach ($pairs as $pair) {
 
  103            $split = explode(
'=', $pair, 2);
 
  107            if (isset($parsed_parameters[$parameter])) {
 
  111                if (is_scalar($parsed_parameters[$parameter])) {
 
  114                    $parsed_parameters[$parameter] = array($parsed_parameters[$parameter]);
 
  117                $parsed_parameters[$parameter][] = $value;
 
  119                $parsed_parameters[$parameter] = $value;
 
  123        return $parsed_parameters;
 
  141        foreach (
$params as $parameter => $value) {
 
  142            if (is_array($value)) {
 
  146                sort($value, SORT_STRING);
 
  147                foreach ($value as $duplicate_value) {
 
  148                    $pairs[] = $parameter . 
'=' . $duplicate_value;
 
  151                $pairs[] = $parameter . 
'=' . $value;
 
  157        return implode(
'&', $pairs);
 
An exception for terminatinating execution or to throw for unit testing.
Class to provide OAuth utility methods.
static split_header($header, $only_allow_oauth_parameters=true)
static urldecode_rfc3986($string)
static urlencode_rfc3986($input)
static build_http_query($params)
static parse_parameters( $input)
if((!isset($_SERVER['DOCUMENT_ROOT'])) OR(empty($_SERVER['DOCUMENT_ROOT']))) $_SERVER['DOCUMENT_ROOT']