8000 Deprecated: Dumbo\Dumbo::detectEnvironment(): Implicitly marking parameter $serverVars as nullable is deprecated · Issue #73 · notrab/dumbo · GitHub
[go: up one dir, main page]
More Web Proxy on the site http://driver.im/
Skip to content
Deprecated: Dumbo\Dumbo::detectEnvironment(): Implicitly marking parameter $serverVars as nullable is deprecated #73
Open
@abda11ah

Description

@abda11ah

Some errors on PHP 8.4.2 (FrankenPHP docker)

taken example :

<?php

require __DIR__ . "/../vendor/autoload.php";

use Dumbo\Dumbo;
use Dumbo\HTTPException;

$app = new Dumbo();
$user = new Dumbo();

$userData = [
    [
        "id" => 1,
        "name" => "Jamie Barton",
        "email" => "jamie@notrab.dev",
    ],
];

$user->get("/", function ($c) use ($userData) {
    return $c->json($userData);
});

$user->get("/:id", function ($c) use ($userData) {
    $id = (int) $c->req->param("id");

    $user =
        array_values(array_filter($userData, fn($u) => $u["id"] === $id))[0] ??
        null;

    if (!$user) {
        return $c->json(["error" => "User not found"], 404);
    }

    return $c->json($user);
});

$user->post("/", function ($c) use ($userData) {
    $body = $c->req->body();

    if (!isset($body["name"]) || !isset($body["email"])) {
        return $c->json(["error" => "Name and email are required"], 400);
    }

    $newId = max(array_column($userData, "id")) + 1;

    $newUserData = array_merge(["id" => $newId], $body);

    return $c->json($newUserData, 201);
});

$user->delete("/:id", function ($c) use ($userData) {
    $id = (int) $c->req->param("id");

    $user =
        array_values(array_filter($userData, fn($u) => $u["id"] === $id))[0] ??
        null;

    if (!$user) {
        return $c->json(["error" => "User not found"], 404);
    }

    return $c->json(["message" => "User deleted successfully"]);
});

$app->get("/greet/:greeting", function ($c) {
    $greeting = $c->req->param("greeting");
    $name = $c->req->query("name");

    return $c->json([
        "message" => "$greeting, $name!",
    ]);
});

$app->route("/users", $user);

$app->use(function ($context, $next) {
    $context->set("message", "Dumbo");
    return $next($context);
});

$app->use(function ($c, $next) {
    $c->header("X-Powered-By", "Dumbo");

    return $next($c);
});

$app->get("/redirect", function ($c) {
    $message = $c->get("message");

    return $c->redirect("/greet/hello?name=$message", 301);
});

$app->get("/", function ($c) {
    $message = $c->get("message");

    return $c->html("<h1>Hello from $message!</h1>", 200, [
        "X-Hello" => "World",
    ]);
});

$app->get("/error", function ($c) {
    $customResponse = $c->html("<h1>Something went wrong</h1>", 404);
    throw new HTTPException(
        statusCode: 404,
        message: "Something went wrong",
        customResponse: $customResponse
    );
});

$app->run();

Deprecated: Dumbo\Dumbo::detectEnvironment(): Implicitly marking parameter $serverVars as nullable is deprecated, the explicit nullable type must be used instead in /app/vendor/notrab/dumbo/src/Dumbo.php on line 507

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions

      0