php - 同一 PHP 组件的精简版和完整版

标签 php preprocessor

我想创建同一 PHP 组件的精简版和完整版。当然,我希望两者共享一个共同的代码库 - 因此,如果我发现错误或添加功能,我只需要在一个地方更新它。

在编译语言中,更好的方法是只有一个项目,具有多个目标——每个版本一个。在这种情况下,我将使用预处理器宏来识别代码中的产品版本,从而实现基于版本的逻辑决策。

使用 PHP 解决这个问题的最佳方法是什么?当然,完整版的具体代码不能出现在精简版的PHP文件中,否则精明的开发者可能会轻松解锁这些功能。

最佳答案

最好的方法是使用 OOP。

例如,创建类的基本版本:

class BasicComponent
{
    ... add basic functionality here
}

创建类的扩展版本:

class FancyComponent extends BasicComponent
{
    ... add fancy stuff here
}

仅部署基本版本,或也部署高级版本。


还有很多其他方法可以使用 OOP 来实现此目的。我可以想到一个可以实例化许多功能的工厂,其中每个功能都是一个类,并且您只需使用组件的基本版本部署其中的几个功能。

关于php - 同一 PHP 组件的精简版和完整版,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29491097/

相关文章:

php - 格式化json数据。如何合并具有与键相同值的json数组?

mfc - AFX_DESIGN_TIME 的用途是什么以及它的定义位置?

c++ - 参数包构造函数优于其他构造函数调用

c++ - 定义宏后的哈希符号?

php - yaml/symfony2 : Override configurations

php - 使用 file_put_contents 下载图像

python - 反序列化棉花糖中的嵌套字段

javascript - Gulp CJSX 渲染编译错误

javascript - 如何设置表格中单选按钮选择的限制?

php - session 变量在本地主机上工作,但在网络服务器上不起作用