1
6
你有没有想过把它们放在
由于您将在您的PHP应用程序中反复使用它们,所以这将是最理想的方法。如果要将数据库存储在数据库中,这也避免了进行数据库调用的需要。
更新:我假设您希望通过网页编辑这些设置,并且不希望多个数据库查询,因为这些设置将更改,但不会太频繁?
我个人采用的一种方法是序列化appsettings表并将其存储在
|
2
19
对于一个小而简单的站点,我只需要将config放到一个php文件中。保持简单。PHP可能不会比它解析PHP更快地解析任何东西。如果使用APC,编译后的字节码甚至会被缓存——尽管字节码随后会针对每个请求重新执行。对于一个小的配置文件,这个字节码执行应该花费很少的时间;对于一个非常大的文件,可能需要更长的时间。 对于具有大配置的高流量站点,在APC中缓存配置数据(例如作为单个数组)是一个好主意——至少,您可以节省 正在执行 config.php文件中的语句。值得注意的是,Facebook做到了这一点。当您每秒处理许多请求时,点击磁盘读取每个请求的配置文件(使用parse-ini-u文件、XML解析器等)是不可能的。 对于我当前的项目,我们托管许多站点,每个站点都有自己的配置。每个站点都有一个数据库和一个配置文件;但是,确保始终将正确的配置文件与正确的数据库一起使用可能会成为一个难题。此外,更改需要在两个地方进行更改——db和config。忘记一个或另一个总是造成问题,而且发生得太频繁了。 我们将配置移到数据库中,这样就不可能将数据库从正确的配置中分离出来,任何代码更改都只需要更新数据库。来自config表的数据也被积极地缓存在apc中,因此我们很少查询它。 因此,回顾一下:
|
3
2
我们只是使用
在包含的PHP文件中。将值放入数组有助于解决名称冲突。 |
4
2
不过,我知道您希望将内容保存在MySQL表中,这可能意味着需要在多个位置存储所需的配置。例如,我确信您希望将数据库服务器和名称存储在某个字符串中。这意味着将它们放在include或.ini文件中,因为您无法从数据库中读取它们(如何在不知道这些内容的情况下连接到数据库)。那么,您将把数据库连接信息保存在include或.ini文件中,其余的设置保存在数据库中?我想这是可行的,但我喜欢将所有设置保存在一个文件中(config.php或application.in i或其他任何文件)。这使得维护IMO更容易。 -唐 |
5
2
刚和IRC上的几个人聊完这件事。我查看了WordPress是如何处理这个问题的,在我提取了一个SQL副本的转储之后。我想我将使用这个布局并对列重命名一点。但想法是…
|
6
0
我通常在index.php文件中设置“必需”设置,以便:
在我的配置文件中:
|
7
0
一个不错的方法是通过数据库,每页获取一次常用的设置。有点像
如果您决定将它们全部缓存,而不是为每个页面提取数据,那么您可能需要考虑一种方法来通知脚本重新加载设置——或者您必须手动告诉它这样做,这样在更改某些设置之后就不会陷入旧设置的困境。 |
8
0
前面提到的是真的。我更喜欢这一个,但我主要使用另一种方法来存储我的配置。 我从不使用数据库来存储我的设置,因为这样会产生大量的数据传输,这会使应用程序更加不安全——在我看来。此外,一些应用程序主机(如亚马逊的AWS和谷歌的云平台)将读/写操作限制在数据库中。 因此,我主要使用这种方法: 首先,我创建了一个文件config/settings.php,内容如下:
当您想在index.php文件中使用它时,请在其中添加以下行:
我希望这能为你或其他人添加一些信息。 |
9
0
我喜欢Microsoft.NET的
用法
|
10
0
我正在使用一个将其设置存储在数据库中的系统。 简而言之,我的建议是:不要这样做! 在数据库中存储设置意味着,每当我们必须移动数据库时,例如从生产到开发,我们也必须更新所有设置,否则开发人员系统可能会开始发送电子邮件(确实发生了--制作了头版新闻…)或与生产系统交互(也发生了--SA由备份保存…) 所以,不,永远不要将配置存储在数据库中! 当您将设置存储在一个文件中时,您可以在本地环境(dev、test、prod)中随意移动数据库,始终确保将在相应的环境中从文件中提取设置。 更新 :再多考虑一下,我可能会选择一个表(没有服务器信息或集成信息的非致命信息,或者如果它不是特定于环境的,会杀死您的任何其他信息)和一个.ini文件(或多个)的组合。 规则是.ini文件中的一个键总是覆盖表中存储的任何内容(为了防止上述灾难,甚至可能使该键从任何UI“只读”)。 如果您想获得额外的幻想,您甚至可以添加值类型;布尔值表示为一个复选框,日期与日期选择器,甚至选择框与分隔的选项值,当然,ints将必须是数字,即使表可能存储为字符串。 然后,如果读取设置变慢,我将研究使用某种形式的基于内存的缓存。 |
Jacco · 未能格式化我的日期以在php中正确工作 1 年前 |
jay ram · 如何在URL核心php中从API获取JSON? 1 年前 |
Ishwarya A · php电子表格在浏览器中显示多张excel 1 年前 |