2017 © Pedro Peláez
 

library slim3-annotation

Module route using annotation

image

dilsonjlrjr/slim3-annotation

Module route using annotation

  • Tuesday, March 6, 2018
  • by dilsonjlrjr
  • Repository
  • 1 Watchers
  • 5 Stars
  • 199 Installations
  • PHP
  • 1 Dependents
  • 0 Suggesters
  • 3 Forks
  • 0 Open issues
  • 10 Versions
  • 6 % Grown

The README.md

slim3-annotation

Define routes and controllers with annotations for Slim 3, (*1)

Installation

Via Composer, (*2)

composer require dilsonjlrjr/slim3-annotation

Initialization

In file public/index.php add:, (*3)

<?php
$pathController = __DIR__ . '/../Controller';

\Slim3\Annotation\Slim3Annotation::create($app, $pathController, '');

The attribute $app is an instance of \Slim\App., (*4)

The attribute $pathController is the location of the controllers in the application., (*5)

Annotations Route

Defining Controller - Example

<?php
/**
 * @Route("/prefix")
 */
class ClassController {

    /**
     * @Get(name="/rota2/{id}", alias="rote.id")
     */
    public function method() {
    }
}

In creating a controller you can define grouping of routes, verbs, routes, aliases and middlewares., (*6)

Routes

Get - Example

<?php
/**
 * @Get(name="/rota2", alias="rote.id")
 */
public function method() {
}

Post - Example

<?php
/**
 * @Post(name="/rota2/{id}", alias="rote.id")
 */
public function method() {
}

Put - Example

<?php
/**
 * @Put(name="/rota2/{id}", alias="rote.id")
 */
public function method() {
}

Delete - Example

<?php
/**
 * @Put(name="/rota2/{id}", alias="rote.id")
 */
public function method() {
}

The alias use is optional., (*7)

Regular expressions can be used in the creation of routes. All route controls can be seen in the Slim framework documentation: Router., (*8)

Route Groups

<?php
/**
 * @Route("/prefix")
 */
class ClassController {

    /**
     * @Get(name="/rota2/{id}", alias="rote.id")
     */
    public function method() {
    }
}

Route groups only work on the controller header., (*9)

In the example above the route will be created as below:, (*10)

http://localhost/prefix/rota2/1

Middleware

<?php
/*
 * @Get(name="/rota2", alias="rote.id", middleware={"Test\Middleware\ExampleMiddleware"})
 */
public function method() {
}

/**
 * @Get(name="/rota3", alias="rote.id", middleware={"Test\Middleware\ValidateMiddleware", "Test\Middleware\ExampleMiddleware"})
 */
public function method() {
}

A route can incorporate several middlewares. How to create a middleware is available in the Slim framework documentation: Middleware., (*11)

The Versions

06/03 2018

dev-master

9999999-dev

Module route using annotation

  Sources   Download

MIT

The Requires

 

The Development Requires

06/03 2018

1.0.2

1.0.2.0

Module route using annotation

  Sources   Download

MIT

The Requires

 

The Development Requires

03/01 2018

1.0.1

1.0.1.0

Module route using annotation

  Sources   Download

MIT

The Requires

 

The Development Requires

13/11 2016

1.0.0

1.0.0.0

Module route using annotation

  Sources   Download

MIT

The Requires

 

23/10 2016

0.6

0.6.0.0

Module route using annotation

  Sources   Download

MIT

The Requires

 

19/10 2016

0.5

0.5.0.0

Module route using annotation

  Sources   Download

MIT

The Requires

 

17/10 2016

0.4

0.4.0.0

Module route using annotation

  Sources   Download

MIT

The Requires

 

17/10 2016

0.3

0.3.0.0

Module route using annotation

  Sources   Download

MIT

The Requires

 

17/10 2016

0.2

0.2.0.0

Module route using annotation

  Sources   Download

MIT

The Requires

 

14/10 2016

0.1

0.1.0.0

Module route using annotation

  Sources   Download

MIT

The Requires