PHP code example of tobento / service-requester

1. Go to this page and download the library: Download tobento/service-requester library. Choose the download type require.

2. Extract the ZIP file and open the index.php.

3. Add this code to the index.php.
    
        
<?php
require_once('vendor/autoload.php');

/* Start to develop here. Best regards https://php-download.com/ */

    

tobento / service-requester example snippets


use Tobento\Service\Requester\Requester;
use Tobento\Service\Requester\RequesterInterface;
use Nyholm\Psr7\Factory\Psr17Factory;

// Any PSR-7 server request
$serverRequest = (new Psr17Factory())->createServerRequest(
    method: 'GET',
    uri: 'https://example.com',
);

$requester = new Requester($serverRequest);

var_dump($requester instanceof RequesterInterface);
// bool(true)

var_dump($requester->method());
// string(3) "GET"

var_dump($requester->isSecure());
// bool(false)

var_dump($requester->isContentType('application/json'));
// bool(false)

var_dump($requester->isReading());
// bool(true)

var_dump($requester->isPrefetch());
// bool(false)

var_dump($requester->isAjax());
// bool(false)

var_dump($requester->isJson());
// bool(false)

var_dump($requester->wantsJson());
// bool(false)

use Tobento\Service\Collection\Collection;

var_dump($requester->json() instanceof Collection);
// bool(true)

use Tobento\Service\Collection\Collection;

var_dump($requester->input() instanceof Collection);
// bool(true)

use Psr\Http\Message\UriInterface;

var_dump($requester->uri() instanceof UriInterface);
// bool(true)

use Psr\Http\Message\ServerRequestInterface;

var_dump($requester->request() instanceof ServerRequestInterface);
// bool(true)

use Tobento\Service\Requester\AcceptHeader;
use Tobento\Service\Requester\AcceptHeaderItem;

var_dump($requester->acceptHeader() instanceof AcceptHeader);
// bool(true)

var_dump($requester->acceptHeader()->has('application/json'));
// bool(true)

var_dump($requester->acceptHeader()->get('application/json'));
// null|AcceptHeaderItem

// returns all items.
$items = $requester->acceptHeader()->all();

// returns the first item found or null.
$firstItem = $requester->acceptHeader()->first();

// returns true if first item is application/json, otherwise false.
$requester->acceptHeader()->firstIs('application/json');

// filter items returning a new instance.
$acceptHeader = $requester->acceptHeader()->filter(
    fn(AcceptHeaderItem $a): bool => $a->quality() > 0.5
);

// sort items returning a new instance.
$acceptHeader = $requester->acceptHeader()->sort(
    fn(AcceptHeaderItem $a, AcceptHeaderItem $b) => $b->quality() <=> $a->quality()
);

// sorts by highest quality returning a new instance.
$acceptHeader = $requester->acceptHeader()->sortByQuality();