YamlRouteServiceProvider
Silex Service provider for using YAML routing files, (*1)
, (*2)
Requirements
silex 2.x, (*3)
Installation
The best way to install YamlRouteServiceProvider is to use a Composer:, (*4)
php composer.phar require junker/yaml-route-service-provider
Examples
use Junker\Silex\Provider\YamlRouteServiceProvider;
$app->register(new YamlRouteServiceProvider('routes.yml'));
# or
$app->register(new YamlRouteServiceProvider('routes.yml', ['cache_dir' => '/tmp/routes_cache']));
Routes config example:, (*5)
# routes.yml
home:
path: /
defaults: { _controller: 'Acme\Controller\AppController::indexAction' }
articles.list:
path: /articles
defaults: { _controller: 'Acme\Controller\ArticlesController::indexAction' }
articles.view:
path: /articles/{slug}
defaults: { _controller: 'Acme\Controller\ArticlesController::viewAction' }
Controller example:, (*6)
# Acme\Controller\ArticlesController.php
use Silex\Application;
use Symfony\Component\HttpFoundation\Request;
use Symfony\Component\HttpFoundation\Response;
namespace Acme\Controller;
class ArticlesController
{
public function indexAction(Request $request, Application $app)
{
...
return new Response($articles);
}
public function viewAction(Request $request, Application $app, $slug)
{
...
return new Response($article);
}
}
Documentation
Symfony Routing, (*7)