Skip to content

Instantly share code, notes, and snippets.

@derrabus
Last active February 5, 2018 15:12
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save derrabus/854741fae7aab638227aea13b40b70f5 to your computer and use it in GitHub Desktop.
Save derrabus/854741fae7aab638227aea13b40b70f5 to your computer and use it in GitHub Desktop.
Silex Controller with Application Dependency
<?php
namespace Acme\MyApp;
use Silex\Application;
use Silex\Provider\ServiceControllerServiceProvider;
use Silex\Provider\TwigServiceProvider;
$app = new Application();
$app->register(new TwigServiceProvider());
$app->register(new ServiceControllerServiceProvider());
$app['my_controller'] = function($app) {
return new Controller\MyController($app);
};
$app->get('/my_route', 'my_controller:myAction');
<?php
namespace Acme\MyApp\Controller;
use Silex\Application;
class MyController
{
private $app;
public function __construct(Application $app)
{
$this->app = $app;
}
public function myAction(): string
{
// Insert controller logic here.
return $this->app['twig']
->render('my_template.html.twig', $parameters);
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment