Slim 4 Set Environment

Thanks

<?php


namespace App\Middleware;

use Psr\Http\Message\ResponseInterface;
use Psr\Http\Message\ServerRequestInterface as Request;
use Psr\Http\Server\MiddlewareInterface;
use Psr\Http\Server\RequestHandlerInterface as RequestHandler;
use Slim\Psr7\Environment;
use Slim\Psr7\Uri;

class CronMiddleware implements MiddlewareInterface
{
    public function process(Request $request, RequestHandler $handler): ResponseInterface
    {
        if (php_sapi_name() === 'cli') {
            $data = Environment::mock([
                'REQUEST_URI' => '/' . pathinfo($_SERVER['SCRIPT_NAME'], PATHINFO_FILENAME),
                'HTTP_HOST' => getenv("HTTP_HOST"),
                'HTTPS' => getenv("HTTPS")
            ]);

            $uri = new Uri($data["REQUEST_SCHEME"], $data["HTTP_HOST"], $data["SERVER_PORT"], $data["REQUEST_URI"]);
            $request = $request->withUri($uri);
        }

        return $handler->handle($request);
    }
}