This bundle generates a symfony route from each .php file on the given legacy_path
folder, so you can access your old scripts through the symfony frontcontroller as they where actually present.
Additionally the wrapper injects the symfony DI-Container into $_SERVER['SYMFONY_CONTAINER']
, so you can slowly refactor the legacy app, by extracting services into symfony services but
use them in the legacy code, as well.
Inspired from Modernizing with Symfony given by @derrabus
composer require basster/legacy-bridge-bundle
In your config.yml place:
basster_legacy_bridge:
legacy_path: '/full/path/to/my/legacy/project/files'
# optional prepend script (see http://php.net/manual/en/ini.core.php#ini.auto-prepend-file)
prepend_script: '/full/path/to/my/legacy/autoPrependFile.php' # can be ommited
# optional append script (see http://php.net/manual/en/ini.core.php#ini.auto-append-file)
append_script: '/full/path/to/my/legacy/autoAppendFile.php' # can be ommited
<?php // e.g. my-old-stuff.php
/** @var \Symfony\Component\DependencyInjection\ContainerInterface $container */
$container = $_SERVER['SYMFONY_CONTAINER'];
$myService = $container->get('my.service.id');
This bundle is under the MIT license. See the complete license in the bundle:
Resources/meta/LICENSE