Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/243.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何将过程RPC PHP重构为面向对象的?_Php_Oop_Refactoring_Legacy_Procedural - Fatal编程技术网

如何将过程RPC PHP重构为面向对象的?

如何将过程RPC PHP重构为面向对象的?,php,oop,refactoring,legacy,procedural,Php,Oop,Refactoring,Legacy,Procedural,我有一个PHP遗留API,需要重构。请求必须包括一个操作(例如“获取一些数据”),该操作是在大量的if/else序列中确定的。我在网上找到的所有重构建议都包括将过程转换为OOP,但在这个应用程序中并没有真正的逻辑操作分组 对于像这样重构一个项目,你有没有一些最佳实践(或好的技巧)?最终目标是完全自动化的测试覆盖。请提供有关您的项目的更多详细信息,例如代码片段,以便我们可以找到重构内容。我将首先用函数调用替换重复的代码,将它们分组到类中。这也将提供对代码的完整了解,这将有助于重新组织它。我不能在这

我有一个PHP遗留API,需要重构。请求必须包括一个操作(例如“获取一些数据”),该操作是在大量的if/else序列中确定的。我在网上找到的所有重构建议都包括将过程转换为OOP,但在这个应用程序中并没有真正的逻辑操作分组


对于像这样重构一个项目,你有没有一些最佳实践(或好的技巧)?最终目标是完全自动化的测试覆盖。

请提供有关您的项目的更多详细信息,例如代码片段,以便我们可以找到重构内容。我将首先用函数调用替换重复的代码,将它们分组到类中。这也将提供对代码的完整了解,这将有助于重新组织它。我不能在这里上传代码,因为它是专有的,但它是这样的:if($\u POST[operation]=5){mysql\u查询(“INSERT-INTO-TABLE-users-VALUES(“.$\u-POST[username]”);echo 1;}否则if($\u-POST[operation]=6){/*…*/}等等。可怕的代码,但我已经确定了数字代码的操作。输入:“插入到用户中",但你明白要点了。请提供关于你的项目的更多细节,比如代码片段,这样我们就可以找到重构的内容。我会先用函数调用替换重复的代码,将它们分组到类中。这也会提供完整的代码知识,这将有助于重新组织它。我不能在这里上传代码,因为它是它是专有的,但它是这样的:if($\u POST[operation]==5){mysql\u查询(“插入到表用户值(“.$\u POST[username]”);echo 1;}否则if($\u POST[operation]==6){/*…*/}等等。可怕的代码,但我已经确定了数字代码的操作。输入:“插入用户”“,但你明白要点了。