Edit File by line

Deprecated: str_replace(): Passing null to parameter #2 ($replace) of type array|string is deprecated in /home/sportsfever/public_html/filemanger/function.php on line 93
/home/sportsfe.../httpdocs/wp-conte.../plugins/wordpres.../vendor_p.../guzzleht.../psr7/src
File: Query.php
<?php
[0] Fix | Delete
[1] Fix | Delete
declare (strict_types=1);
[2] Fix | Delete
namespace YoastSEO_Vendor\GuzzleHttp\Psr7;
[3] Fix | Delete
[4] Fix | Delete
final class Query
[5] Fix | Delete
{
[6] Fix | Delete
/**
[7] Fix | Delete
* Parse a query string into an associative array.
[8] Fix | Delete
*
[9] Fix | Delete
* If multiple values are found for the same key, the value of that key
[10] Fix | Delete
* value pair will become an array. This function does not parse nested
[11] Fix | Delete
* PHP style arrays into an associative array (e.g., `foo[a]=1&foo[b]=2`
[12] Fix | Delete
* will be parsed into `['foo[a]' => '1', 'foo[b]' => '2'])`.
[13] Fix | Delete
*
[14] Fix | Delete
* @param string $str Query string to parse
[15] Fix | Delete
* @param int|bool $urlEncoding How the query string is encoded
[16] Fix | Delete
*/
[17] Fix | Delete
public static function parse(string $str, $urlEncoding = \true) : array
[18] Fix | Delete
{
[19] Fix | Delete
$result = [];
[20] Fix | Delete
if ($str === '') {
[21] Fix | Delete
return $result;
[22] Fix | Delete
}
[23] Fix | Delete
if ($urlEncoding === \true) {
[24] Fix | Delete
$decoder = function ($value) {
[25] Fix | Delete
return \rawurldecode(\str_replace('+', ' ', (string) $value));
[26] Fix | Delete
};
[27] Fix | Delete
} elseif ($urlEncoding === \PHP_QUERY_RFC3986) {
[28] Fix | Delete
$decoder = 'rawurldecode';
[29] Fix | Delete
} elseif ($urlEncoding === \PHP_QUERY_RFC1738) {
[30] Fix | Delete
$decoder = 'urldecode';
[31] Fix | Delete
} else {
[32] Fix | Delete
$decoder = function ($str) {
[33] Fix | Delete
return $str;
[34] Fix | Delete
};
[35] Fix | Delete
}
[36] Fix | Delete
foreach (\explode('&', $str) as $kvp) {
[37] Fix | Delete
$parts = \explode('=', $kvp, 2);
[38] Fix | Delete
$key = $decoder($parts[0]);
[39] Fix | Delete
$value = isset($parts[1]) ? $decoder($parts[1]) : null;
[40] Fix | Delete
if (!\array_key_exists($key, $result)) {
[41] Fix | Delete
$result[$key] = $value;
[42] Fix | Delete
} else {
[43] Fix | Delete
if (!\is_array($result[$key])) {
[44] Fix | Delete
$result[$key] = [$result[$key]];
[45] Fix | Delete
}
[46] Fix | Delete
$result[$key][] = $value;
[47] Fix | Delete
}
[48] Fix | Delete
}
[49] Fix | Delete
return $result;
[50] Fix | Delete
}
[51] Fix | Delete
/**
[52] Fix | Delete
* Build a query string from an array of key value pairs.
[53] Fix | Delete
*
[54] Fix | Delete
* This function can use the return value of `parse()` to build a query
[55] Fix | Delete
* string. This function does not modify the provided keys when an array is
[56] Fix | Delete
* encountered (like `http_build_query()` would).
[57] Fix | Delete
*
[58] Fix | Delete
* @param array $params Query string parameters.
[59] Fix | Delete
* @param int|false $encoding Set to false to not encode, PHP_QUERY_RFC3986
[60] Fix | Delete
* to encode using RFC3986, or PHP_QUERY_RFC1738
[61] Fix | Delete
* to encode using RFC1738.
[62] Fix | Delete
*/
[63] Fix | Delete
public static function build(array $params, $encoding = \PHP_QUERY_RFC3986) : string
[64] Fix | Delete
{
[65] Fix | Delete
if (!$params) {
[66] Fix | Delete
return '';
[67] Fix | Delete
}
[68] Fix | Delete
if ($encoding === \false) {
[69] Fix | Delete
$encoder = function (string $str) : string {
[70] Fix | Delete
return $str;
[71] Fix | Delete
};
[72] Fix | Delete
} elseif ($encoding === \PHP_QUERY_RFC3986) {
[73] Fix | Delete
$encoder = 'rawurlencode';
[74] Fix | Delete
} elseif ($encoding === \PHP_QUERY_RFC1738) {
[75] Fix | Delete
$encoder = 'urlencode';
[76] Fix | Delete
} else {
[77] Fix | Delete
throw new \InvalidArgumentException('Invalid type');
[78] Fix | Delete
}
[79] Fix | Delete
$qs = '';
[80] Fix | Delete
foreach ($params as $k => $v) {
[81] Fix | Delete
$k = $encoder((string) $k);
[82] Fix | Delete
if (!\is_array($v)) {
[83] Fix | Delete
$qs .= $k;
[84] Fix | Delete
$v = \is_bool($v) ? (int) $v : $v;
[85] Fix | Delete
if ($v !== null) {
[86] Fix | Delete
$qs .= '=' . $encoder((string) $v);
[87] Fix | Delete
}
[88] Fix | Delete
$qs .= '&';
[89] Fix | Delete
} else {
[90] Fix | Delete
foreach ($v as $vv) {
[91] Fix | Delete
$qs .= $k;
[92] Fix | Delete
$vv = \is_bool($vv) ? (int) $vv : $vv;
[93] Fix | Delete
if ($vv !== null) {
[94] Fix | Delete
$qs .= '=' . $encoder((string) $vv);
[95] Fix | Delete
}
[96] Fix | Delete
$qs .= '&';
[97] Fix | Delete
}
[98] Fix | Delete
}
[99] Fix | Delete
}
[100] Fix | Delete
return $qs ? (string) \substr($qs, 0, -1) : '';
[101] Fix | Delete
}
[102] Fix | Delete
}
[103] Fix | Delete
[104] Fix | Delete
It is recommended that you Edit text format, this type of Fix handles quite a lot in one request
Function