16 if (is_array($input)) {
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)))));
97 if (!isset($input) || !$input)
return array();
99 $pairs = explode(
'&', $input);
101 $parsed_parameters =
array();
102 foreach ($pairs as $pair) {
103 $split = explode(
'=', $pair, 2);
104 $parameter = self::urldecode_rfc3986($split[0]);
105 $value = isset($split[1]) ? self::urldecode_rfc3986($split[1]) :
'';
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);
if((!isset($_SERVER['DOCUMENT_ROOT'])) OR(empty($_SERVER['DOCUMENT_ROOT']))) $_SERVER['DOCUMENT_ROOT']
static split_header($header, $only_allow_oauth_parameters=true)
static build_http_query($params)
static urldecode_rfc3986($string)
static urlencode_rfc3986($input)
static parse_parameters( $input)
Create styles array
The data for the language used.
Class to provide OAuth utility methods.