在CakePHP中,如何对特定的文本文件进行以下操作,并对其进行缓存?
基本上目前我有一个用另一种语言编写的文本文件。它将被存储为一个元素,并在需要时被调用作为文本提供 我希望使用以下内容操作此文件:在CakePHP中,如何对特定的文本文件进行以下操作,并对其进行缓存?,cakephp,caching,str-replace,Cakephp,Caching,Str Replace,基本上目前我有一个用另一种语言编写的文本文件。它将被存储为一个元素,并在需要时被调用作为文本提供 我希望使用以下内容操作此文件: 用存储该变量名的php数组值替换所有现有变量。因此,如果变量看起来像#foo,它将变成$variables['foo'] 从整个文件中创建一个数组,使每一行成为数组中的一行 结果是 return array( 'first line of code which has a variable called ' . $variables['foo'] . 'in it
return array(
'first line of code which has a variable called ' . $variables['foo'] . 'in it',
'second line...'
);
最简单的方法是什么?有没有缓存进程的方法,或者我应该将新文件保存并存储在可以访问它的地方
谢谢大家!
str_replace()
(文档:)替换所有发生的事件explode()
:我建议您使用,一个内置的CakePHP助手。
要区分不同变量名的不同缓存,请确保使用可区分不同变量名的参数调用控制器函数。例如:
public function generate_script($varname){
// some code
}
如果在调用controller方法时不知道判别变量(例如,在controller方法内部确定),那么您应该查看Ok,因此您的解决方案与我的意思略有不同,但事实上也同样有效,并且可能更容易一些。至于缓存部分,您应该理解脚本中会有多个变量,所有变量都会被替换,所以我不确定这是否会起作用。不过,我会查看您建议的文档。关于缓存:您的目标之一是为每种情况找到一个唯一的缓存键。因此,您应该想出一种生成密钥的标准方法。例如:将所有变量名称按字母顺序排列,并将其视为键。按照同样的思路,您可以考虑标准化方法的调用方式,因此URL对于多个变量名也是唯一的和可缓存的。