我正在开发一个Symfony 2 WebApp,它使用PayPal Rest API
来创建和接受PayPal付款。
为了能够将每个用户重定向到其语言的PayPal页面,必须为每种语言/区域设置创建一个体验配置文件。
每个Experience Profile
只需创建一次。例如,创建US
区域设置的配置文件后,可以使用同一区域设置的每个客户重新使用此配置文件:
- 客户在我的页面上输入他的地址并输入XY
- 我的页面检查
XY
区域设置的配置文件是否存在 - 为
XY
区域设置创建新的配置文件并将其存储或重复使用现有配置文件
每个配置文件都有一个唯一的 ID。 因此,我正在寻找一种存储区域设置/ID 对的方法。一个简单的解决方案是 JSON 文件。但是在Symfony结构中存储这个文件的什么地方呢?
每当来自新国家/地区的用户付款时,都会即时创建个人资料。因此,这些数据是在运行时创建的,因此它不属于我认为Symfony的标准config
目录。我什至不知道这些文件夹是否应该由我的代码访问/写入。
所以:存储此类文件的正确位置是什么。
编辑:正如@JimL在评论中指出的那样,当然可以将数据存储在数据库中。但是,我正在处理的付款捆绑包应该用于不同的项目,因此尽可能与项目的其余部分分开。
这里的目标是将数据存储在文件中,而不是存储在数据库中。当然,数据库的效率要高得多,但在这种特殊情况下,一个简单的文件就足够了。
问题是:在哪里存储此文件?第一个想法是使用/MyBundle/Resources/config
因为这个目录包含所有其他配置文件。但是,对于在运行时更改的文件,这是否也是正确的位置?
3.x的标准Symfony目录结构是:
.app/应用程序配置、模板和翻译。
.bin/可执行文件(例如.bin/控制台)。
来源/项目的 PHP 代码。
测试/自动测试(例如单元测试)。标准目录结构为:
var/生成的文件(缓存、日志等)。
供应商/第三方依赖项。
蹼/Web 根目录。
您可以将其放在自定义目录下的标准 var 目录中。请记住权限。
有关 var 目录的更多一般信息:http://www.linfo.org/var.html