- ·上一篇文章:在PHP中全面阻止SQL注入式攻击之一
- ·下一篇文章:跟我来学PHP5:session会话的使用和分析
构建可配置PHP应用程序的正确方式
什么是配置及怎样配置
在配置过多的配置选项与配置不足间找一个适当的中间点是一件困难的事。可以肯定的是,任何数据库配置(例如,数据库名称、数据库用户用及密码)都应该是可配置的。除此之外,我还有一些基本的推荐配置项。
在高级设置中,每一个特性都应该有一个独立的启用/禁用选项。根据其对应用程序的重要性来允许或禁用这些选项。例如,在一个Web论坛应用程序中,延时特性在缺省状态下是启用的。但电子邮件通知在缺省状态下却是禁用的,因为这似乎需要定制。
用户界面(UI)选项全应该设置到一个位置上。界面的结构(例如,菜单位置、额外的菜单项、链接到界面特定元素的URL、使用的logo,诸如此类)全应该设置到一个单一位置上。我强烈地建议不要将字体、颜色或样式条目指定为配置项。这些都应该通过层叠样式表(CascadingStyleSheets,CSS)来设置,且配置系统应该指定使用哪个CSS文件。CSS是设置字体、样式、颜色等等的一种有效且灵活的方式。有许多出色的CSS工具,您的应用程序应该很好地利用CSS,而不是试图自行设置标准。
在每一个特性中,我推荐设置3到10个配置选项。这些配置选项应该以一种意义明显的方式命名。如果配置选项能够通过UI设置,在文本文件、XML文件及数据库中的选项名称应该直接同界面元素的标题相关。另外,这些选项全应该有明确的缺省值。
总的来说,下面这些选项应该是可配置的:电子邮件地址、CSS所使用的东西、从文件中引用的系统资源的位置以及图形元素的文件名。
对于图形元素,您也许想要创建一个名为皮肤的独立的配置文件类型,该类型中包含了对配置文件的设置,包括CSS文件的位置、图形的位置及这些类型的东西。然后,让用户在多种皮肤文件中进行挑选。这使得对应用程序外观和感觉的大规模更改变得简单。这也同样为用户提供了一个机会,使应用程序能够在不同的产品安装间更换皮肤。本文并不涵盖这些皮肤文件,但您在这里学到的基础知识将会使对皮肤文件的支持变得更加简单。
结束语
可配置性对于任何PHP应用程序来说都是至关重要的一个部分,一开始就应该成为设计的中心部分。我希望本文能够对您实现配置架构提供一些帮助,并对应该允许什么样的配置选项有所指导。
