1. Go to this page and download the library: Download zephyrus-framework/core 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/ */
zephyrus-framework / core example snippets
use Zephyrus\Controller\Controller;
use Zephyrus\Routing\Attribute\Get;
use Zephyrus\Routing\Attribute\Post;
use Zephyrus\Http\Request;
use Zephyrus\Http\Response;
class UserController extends Controller
{
#[Get('/users')]
public function index(): Response
{
return Response::json(['users' => []]);
}
#[Get('/users/{id}')]
public function show(int $id): Response
{
return Response::json(['id' => $id]);
}
#[Post('/users')]
public function store(Request $request): Response
{
$data = $request->body()->all();
return Response::json(['created' => true], 201);
}
}
#[Root('/admin')]
class AdminController extends Controller {}
#[Root('/users')]
class AdminUserController extends AdminController
{
#[Get('/list')] // resolves to /admin/users/list
public function list(): Response { ... }
}
use Zephyrus\Http\MiddlewareInterface;
use Zephyrus\Http\Request;
use Zephyrus\Http\Response;
class AuthMiddleware implements MiddlewareInterface
{
public function process(Request $request, callable $next): Response
{
if ($request->headers()->bearerToken() === null) {
return Response::json(['error' => 'Unauthorized'], 401);
}
return $next($request);
}
}
#[Middleware('auth')]
#[Get('/account')]
public function account(): Response { ... }
use Zephyrus\Validation\FormValidator;
use Zephyrus\Validation\Rules;
$form = new FormValidator([
'email' => [Rules::empty
]);
// In a controller (throws ValidationException → auto 422):
$this->validate($form, $request->body()->all());
use Zephyrus\Core\KernelBuilder;
use Zephyrus\Http\Request;
use Zephyrus\Routing\Router;
$router = (new Router())
->discoverControllers('App\\Controllers', 'app/Controllers/');
$kernel = KernelBuilder::create()
->withRouter($router)
->withMiddleware(new CsrfMiddleware())
->withMiddleware(new SecureHeadersMiddleware())
->build();
$request = Request::fromGlobals();
$response = $kernel->handle($request);
$response->send();