I am exploring the Silex framework. I am trying to gently evolve a very nice app from “old school PHP” to “new school PHP”. I have chosen Silex (atop Symfony) as my first framework to try. I like Silex so far because it helps me without lecturing me. I cannot rewrite my whole app overnight – I need to evolve to a Silex App, one feature at a time.
This code uses the Symfony PhpBridgeSessionStorage – and it makes me very happy.
<?php // http://localhost:8888/silex/hello/bob use Symfony\Component\HttpFoundation\Session\Session; use Symfony\Component\HttpFoundation\Session\Storage\PhpBridgeSessionStorage; require_once "vendor/autoload.php"; session_start(); $session = new Session(new PhpBridgeSessionStorage()); $session->start(); $app = new Silex\Application(); $app['session'] = $session; $app->get('/hello/{name}', function ($name) use ($app) { echo("<pre>\n"); // New Session if ( $app['session']->has('y') ) { $app['session']->set('y', $app['session']->get('y')+1); } else { $app['session']->set('y', 20); } print_r($app['session']->all()); // Read and write old session if ( isset($_SESSION['x'])) { $_SESSION['x']++; } else { $_SESSION['x'] = 42; } print_r($_SESSION); echo("</pre>\n"); return "<p>Hello $name</p>\n"; }); $app->run();