单例-在简单的基于PHP的CMS中使用它们
我读过很多关于单身汉的书,大多数人都认为他们是不好的习惯,并且尽可能地避免他们。大多数人这么说是因为很难调试使用它们的应用程序 现在,创建一个简单的CMS,我尝试了几种方法,它们似乎是我的最佳选择单例-在简单的基于PHP的CMS中使用它们,php,singleton,Php,Singleton,我读过很多关于单身汉的书,大多数人都认为他们是不好的习惯,并且尽可能地避免他们。大多数人这么说是因为很难调试使用它们的应用程序 现在,创建一个简单的CMS,我尝试了几种方法,它们似乎是我的最佳选择 配置数据 该文件在应用程序启动时加载,我看不出为什么在整个应用程序中调用配置数据时不使用单例模式 请求数据 请求数据应该存储来自php服务器变量(POST、GET、COOKIE)的所有信息,以便在整个应用程序中使用singleton读取和写入(例如COOKIE)数据 响应缓冲区 我想使用响应类(作为单
我的建议是学习最重要的模式,并在特定环境中使用对您有意义的任何模式。我个人避免使用可能重复的模式,因为它们会使应用程序更难测试。由于这在很大程度上是一种观点,我想说这个问题不是建设性的。请求数据已经是超全局的,所以我不明白为什么需要将其放在单例中。也就是说,单例是不好的,因为它们破坏了封装。通常,使用它们只是因为程序员不知道如何在应用程序的不同层之间共享资源。这正是依赖注入存在的原因,也是为什么在几乎所有情况下,“我应该使用singleton”的答案实际上是“不,使用DI容器”@KevinM1作为请求,我只想有更干净的代码来访问和编写全局变量:)我刚刚阅读了DI概念,乍一看,它们似乎与singleton相同,具有创建多个实例的选项。但在发表任何声明之前,我会通读一遍。@shannethat我没有说我的意见!我给出了一些建设性的例子,我希望在其中使用它们,并问我为什么不使用它们作为例子。谢谢你的回答。我会调查的。虽然singleton看起来像是为我的第三个示例制作的,我可以在其中访问、修改整个应用程序的页面输出(响应)。