Assign a value to a query param, assigning a NULL value will remove the query param.

@param string $name
@param mixed $value
@return UriBuilder
321116
public function queryParam($name, $value)
	{
		if($value === NULL)
		{
			unset($this->query[(string)$name]);
		}
		else
		{
			$this->query[(string)$name] = $value;
		}
		
		return $this;
	}
1028911
final protected function addUrlParam(&$link, $name, $value)
    {
        $base = $name . '=' . $value;

        if (false !== \strpos($link, '?')) {
            $last = \substr($link, -1);

            if ('?' === $last || '&' === $last) {
                $link .= $base;
            } else {
                $link .= '&' . $base;
            }
        } else {
            $link .= '?' . $base;
        }
    }
383961
public static function insert(String $name = NULL, $value = NULL) : Bool
    {
        $name  = self::$settings['name']  ?? $name;
        $input = self::$settings['input'] ?? false;
        $value = self::$settings['value'] ?? $value;

        self::$settings = [];

        return Method::$input($name, $value);
    }
480302
public function setParameterGet($name, $value = null)
	{
		// Verifying if is array
		if (is_array($name)) {
			foreach ($name as $k => $v) {
				$this->setParameterGet($k,$v);
			}
		} else {
			$parray = &$this->paramsGet;
				
			if (is_null($value)) {
				if (isset($parray[$name])) unset($parray[$name]);
			} else {
				$parray[$name] = $value;
			}
		}
	
		return $this;
	}
793908
public function addParam($name, $value): self
    {
        if (!isset($this->params[$name])) {
            $this->setParam($name, $value);
        }

        return $this;
    }
481407
public HttpServerRequestActionBuilder queryParam(String name, String value) {
        httpMessage.queryParam(name, value);
        return this;
    }
241826
public function setParam($name, $value, $replace = true)
    {
        if (is_array($name)) {
            if (!isset($this->components[self::QUERY])) {
                $this->components[self::QUERY] = [];
            }
            TreeTools::setByPath($this->components[self::QUERY], $name, $value);
        } else {
            if (isset($this->components[self::QUERY][$name]) && !$replace) {
                return $this;
            }
            $this->components[self::QUERY][$name] = $value;
        }
        return $this;
    }
557893
public function setParameterGet($name, $value = null)
    {
        if (is_array($name)) {
            foreach ($name as $k => $v) {
                $this->_setParameter('GET', $k, $v);
            }
        } else {
            $this->_setParameter('GET', $name, $value);
        }

        return $this;
    }
143534
public function addDefaultQueryParameter($name, $value)
    {
        if (!isset($this->query[$name])) {
            $this->query[$name] = $value;
        }

        return $this;
    }
808334
public function addUriParam($name, $value)
    {
        if (in_array($name, [
            'q',
            'df',
            'analyzer',
            'analyze_wildcard',
            'default_operator',
            'lenient',
            'explain',
            '_source',
            '_source_exclude',
            '_source_include',
            'stored_fields',
            'sort',
            'track_scores',
            'timeout',
            'terminate_after',
            'from',
            'size',
            'search_type',
            'scroll',
            'allow_no_indices',
            'ignore_unavailable',
            'typed_keys',
            'pre_filter_shard_size',
            'ignore_unavailable',
        ])) {
            $this->uriParams[$name] = $value;
        } else {
            throw new \InvalidArgumentException(sprintf('Parameter %s is not supported.', $value));
        }

        return $this;
    }
1307945
public function setQuery($name, $value = null)
    {
        if (!is_array($name)) {
            $this->gets[$name] = $value;
        } else {
            $this->gets = $name + $this->gets;
        }
        return $this;
    }
292502
public void addParam(String name, String value) {
        ObjectUtil.checkNotNull(name, "name");
        if (hasParams) {
            uriBuilder.append('&');
        } else {
            uriBuilder.append('?');
            hasParams = true;
        }
        appendComponent(name, charsetName, uriBuilder);
        if (value != null) {
            uriBuilder.append('=');
            appendComponent(value, charsetName, uriBuilder);
        }
    }
832019
public AuthorizeUrlBuilder withParameter(String name, String value) {
        assertNotNull(name, "name");
        assertNotNull(value, "value");
        parameters.put(name, value);
        return this;
    }
642251
public function offsetSet($name, $value)
    {
        if (is_null($name)) {
            throw new \InvalidArgumentException('The argument name cannot be null.');
        }

        $this->setArgument($name, $value);
    }
932980
public function setRequestParam(string $name, $value): self
    {
        $this->_requestParams[$name] = $value;

        return $this;
    }
662097
public function setParam(string $name, $value): Request
    {
        if (is_object($value)) {
            if (property_exists($value, '__toString')) {
                $value = $value->__toString();
            } else {
                $class = get_class($value);
                throw new HttpException("Can not set param={$name} when instance of {$class} can't be converted to string");
            }
        }

        $this->params[$name] = $value;
        return $this;
    }
610989
public function setDefaultValue($name, $value)
    {
        if (!$this->hasParameter($name)) {
            $this->setParameter($name, $value);
        }

        return $this;
    }