我有兴趣创建一个config.cfc
,我想在不同的组件中使用它。
可以创建一个只返回数组的config.php文件。在其他php文件中,这可以像
一样包含在内use config.php
我可以在任何.cfc组件中简单地包含.cfm文件吗?一个config.cfc只返回一个STRUCT?
答案 0 :(得分:3)
我不确定如何回答你的问题,因为我并不完全明白你要完成的任务。在一个句子中,您需要返回一个数组,在另一个句子中,您需要返回一个结构。如果你想创建一个config.cfc
你的方法可以返回数据类型(数组或结构)。
要回答您的其他问题,是的,您可以在.cfm
中添加.cfc
个文件。我过去做过,虽然这不是最好的做法。
我建议您在config.cfc
中创建所需的方法,然后在通话.cfm
或.cfc
中使用CreateObject()进行使用。
答案 1 :(得分:2)
我见过几个使用.cfm文件作为配置文件的项目,它使用设置值设置Coldfusion结构变量。然后使用cfinclude将加载文件并设置配置变量(通常是结构)。它可以很容易地设置一个数组,虽然我认为结构会更灵活。代码中通常包含一次cfinclude config.cfm文件并将该设置存储在应用程序范围内的逻辑。
另一种选择是使用包含JSON格式的相同类型的.json文件。这是一个开源项目的例子:
https://github.com/tonyjunkes/CFFormProtect-Revamp/blob/master/cfformprotect/config.json
控制代码读取文件并使用deserializeJSON()将其转换为ColdFusion结构。由于它是开源的,你可以下载这个项目,看看它是如何工作的。
是的,您可以从.cfc文件中包含.cfm。