当前位置 : 主页 > 手机开发 > 无线 >

将遗留应用程序移动到Symfony2:如何在控制器中执行本机PHP脚本?

来源:互联网 收集:自由互联 发布时间:2021-06-10
我有一个遗留的应用程序,我想转移到Symfony2.这个应用程序不是在MVC中构建的,它没有PSR-0兼容性,它是一个非常遗留的应用程序,’/ search.php’指向文件’search.php’,菜单,页眉和页脚都包含
我有一个遗留的应用程序,我想转移到Symfony2.这个应用程序不是在MVC中构建的,它没有PSR-0兼容性,它是一个非常遗留的应用程序,’/ search.php’指向文件’search.php’,菜单,页眉和页脚都包含不同的文件共享.

如果我能够以某种方式将这个应用程序快速插入到Symfony2中,然后开始将它们一次一个地移动到Symfony2应用程序架构中,这将是理想的.我真的不想做一些瀑布尝试将整个事情移植过来,然后在3-6个月内做一些大规模的更新.任何人都可以推荐一种方法来执行本机PHP脚本,其中包括Symfony2控制器中的mysql查询或其他一些最好的方法吗?我目前正在考虑可能包括php或twig模板中的文件.谢谢!

考虑在服务器级别上执行此操作.您的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);
}

这可能是简单化,但应该证明这个想法.

网友评论