1. Go to this page and download the library: Download vaibhavpandeyvpz/vidyut 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/ */
vaibhavpandeyvpz / vidyut example snippets
use Vidyut\Pipeline;
use Sandesh\ServerRequestFactory;
use Sandesh\ResponseFactory;
// Create a new pipeline
$pipeline = new Pipeline();
// Add middleware using callables
$pipeline->pipe(function ($request, $delegate) {
if ($request->getUri()->getPath() === '/login') {
$response = (new ResponseFactory())->createResponse();
$response->getBody()->write('Login Page');
return $response;
}
return $delegate->handle($request);
});
// Add a final handler (404)
$pipeline->pipe(function () {
$response = (new ResponseFactory())->createResponse();
$response->getBody()->write('Page not found');
return $response->withStatus(404);
});
// Handle a request
$request = (new ServerRequestFactory())
->createServerRequest($_SERVER['REQUEST_METHOD'], $_SERVER['REQUEST_URI'], $_SERVER);
$response = $pipeline->handle($request);
use Vidyut\Pipeline;
$pipeline = new Pipeline();
// Middleware can be callables
$pipeline->pipe(function ($request, $delegate) {
// Process request
$response = $delegate->handle($request);
// Modify response
return $response->withHeader('X-Custom', 'value');
});
// Or MiddlewareInterface instances
$pipeline->pipe(new MyMiddleware());
// Handle requests
$response = $pipeline->handle($request);
$pipeline = new Pipeline([
function ($request, $delegate) {
// First middleware
return $delegate->handle($request);
},
function ($request, $delegate) {
// Second middleware
return $delegate->handle($request);
},
function () {
// Final handler
return (new ResponseFactory())->createResponse(200);
},
]);
class AuthenticationMiddleware implements MiddlewareInterface
{
public function process(ServerRequestInterface $request, RequestHandlerInterface $handler): ResponseInterface
{
// Check authentication
if (!$this->isAuthenticated($request)) {
return (new ResponseFactory())->createResponse(401);
}
return $handler->handle($request);
}
}
$pipeline->pipe(new AuthenticationMiddleware());
$middleware = new class {
public function handle(ServerRequestInterface $request, RequestHandlerInterface $delegate): ResponseInterface
{
return $delegate->handle($request);
}
};
$pipeline->pipe([$middleware, 'handle']);
$pipeline->pipe(function () {
// Return immediately, next middleware won't be called
return (new ResponseFactory())->createResponse(403, 'Forbidden');
});
$pipeline = new Pipeline()
->pipe($middleware1)
->pipe($middleware2)
->pipe($middleware3);
Loading please wait ...
Before you can download the PHP files, the dependencies should be resolved. This can take some minutes. Please be patient.