ScriptFUSION\Porter\Net\UrlBuilder::buildUrl PHP Метод

buildUrl() публичный Метод

public buildUrl ( $endpoint, array $params = [], $baseUrl = null )
$params array
    public function buildUrl($endpoint, array $params = [], $baseUrl = null)
    {
        $uri = UriFactory::factory($endpoint);
        if ($baseUrl && !$uri->isAbsolute()) {
            // Convert relative URL to absolute URL using base URL.
            $uri->resolve($baseUrl);
        }
        // Merge query parameters.
        $uri->setQuery(array_merge($this->options->getQueryParameters(), array_merge($uri->getQueryAsArray(), $params)));
        return "{$uri}";
    }

Usage Example

Пример #1
0
 public function testBuildQuery()
 {
     $builder = new UrlBuilder((new HttpOptions())->setQueryParameters(['foo' => 'tertiary']));
     $url = 'http://bar/baz?';
     self::assertSame($url . 'foo=primary', $builder->buildUrl($url . 'foo=secondary', ['foo' => 'primary']));
     self::assertSame($url . 'foo=secondary', $builder->buildUrl($url . 'foo=secondary'));
     self::assertSame($url . 'foo=tertiary', $builder->buildUrl($url));
 }