代码之家  ›  专栏  ›  技术社区  ›  Tom

从一个PHP框架迁移到另一个PHP框架

  •  4
  • Tom  · 技术社区  · 14 年前

    我正在与一家网络公司合作,这家公司正在接近一个点,它可能需要重新考虑产品作为V2--因为它的一些V1基础和原则已经扩展到几乎所有的东西,从数据模型到用户界面。出于各种原因,这种演进可能涉及从CakePHP(V1是用它构建的)到Symfony或Zend的迁移。

    我想问一些有经验的意见,人们如何管理这样一个网站的过渡,有重大的流量和产生收入。我不想就不同PHP框架的pro&con展开讨论,也不想讨论为什么需要进行这种迁移。相反,我非常感兴趣的是,是否有一些实用的替代方案来代替在V1旁边几个月从零开始构建一个V2,并在这个紧张的时期锁定宝贵的编码时间。这种替代方法的一个例子可能是在较长时间内将应用程序分部分迁移。

    我很感激那些可能管理或参与这种转变的人的任何观点。

    提前谢谢。

    2 回复  |  直到 14 年前
        1
  •  3
  •   Jeremy Kauffman    14 年前

    Symfony使得几乎在过程中的每一个层次上都很容易脱离框架,从而很容易与其他框架集成。我会这样做:

    1. 设置并安装Symfony。
    2. 把现有的CAKEPHP项目作为一个插件放到SyfFoin中。
    3. 将插件设置为具有一个catch all路由,该路由接受参数并将其作为蛋糕PHP请求处理。现在您的所有CakePHP页面都在Symfony中工作。这可能是最棘手的一步,可能涉及解决一些自动加载或其他碰撞问题。
    4. 现在可以有选择地迁移CakePHP模型、控制器和视图。

    这种方法的一个主要好处是,它允许您维护敏捷开发过程。你可以在整个过程中一次移植网站的小部分,并在运行时测试它们。

        2
  •  3
  •   TomáÅ¡ Fejfar    14 年前

    如果您要迁移到Zend,可以开始逐个使用Zend类来帮助您完成基本任务。对于ZF,您可以很好地使用任何模型类。因此,只需认为“大爆炸”行动将需要控制器/视图。事实上,您还可以将现有视图与ZF集成。但我认为这是一个过度杀戮,不会持续很长时间。。。

    • 切换到zend类来执行基本任务,如RSS生成、电子邮件、验证等,这将在下一步中为您提供帮助。
    • 使 大爆炸 将(m)VC转换为ZF,离开模型