PHP code example of shindakioku / request-hydrator

1. Go to this page and download the library: Download shindakioku/request-hydrator 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/ */

    

shindakioku / request-hydrator example snippets




namespace App\Requests\Users;

use RequestHydator\App\Dto\DtoHydrator;

class CreateUser extends DtoHydrator
{
    public function rules(): array
    {
        return [
            'username' => '



use RequestHydrator\App\RequestHydrator;

namespace App\Http\Controllers;

class UsersController 
{
    private RequestHydrator $requestHydrator;

    public function __construct(RequestHydrator $requestHydrator)
    {
        $this->requestHydrator = $requestHydrator;
    }
    
    public function create()
    {
        return $this->requestHydrator->queries(new CreateUser)
                ->left(fn($validationErrors) => ...)
                ->right(fn(CreateUser $user) => $this->register->execute($user));
    }
}



use RequestHydrator\App\Request\Request;
use \PhpSlang\Option\Option;

class MyGreatRequest implements Request
{
    public function queries(array $keys = []): Option
    {
        return Option::of($_GET);
    }

    public function headers(array $keys = []): Option
    {
        return Option::of(\getallheaders());
    }
    
    public function body(array $keys = []): Option
    {
        return Option::of($_POST);
    }
}