4

我有一个遗留应用程序,我想转移到 Symfony2。这个应用程序不是在 MVC 中构建的,它没有 PSR-0 兼容性,它非常像一个遗留应用程序,因为 '/search.php' 指向一个文件 'search.php' 并且菜单、页眉和页脚都包含在内不同的文件共享。

如果我能以某种方式快速而肮脏地将这个应用程序插入到 Symfony2 中,然后开始一次一个地将部分移动到 Symfony2 应用程序架构中,那将是理想的。我真的不想做一些瀑布式的尝试来移植整个事情,然后在 3-6 个月内进行一些大规模的更新。谁能推荐一种执行本机 php 脚本的方法,该脚本将包括 Symfony2 控制器中的 mysql 查询或其他一些最佳方法来执行此操作?我目前正在考虑可能包括 php 或 twig 模板中的文件。谢谢!

4

1 回答 1

5

考虑在服务器级别进行。您的 Web 服务器应该能够将部分 URL 路由到新网站,并将其余部分路由到旧网站(至少 Nginx 能够做到)。继续进行重写后,您只需要更改 URL 重写并将其他 URL 路由到新应用程序。

在 Symfony 控制器中执行此操作也应该相当容易(不过我还没有尝试过)。您将需要一个后备路线,该路线将调用类似于以下内容的操作:

public function legacyAction()
{
    // decide which file to include
    $legacyFile = '/path/to/legacy-app/search.php';

    ob_start();

    include($legacyFile);

    $content = ob_get_clean();

    return new Response($content);
}

这可能过于简单,但应该展示这个想法。

于 2012-09-11T17:51:07.747 回答