2013-12-18 47 views
0

例如,我有一个简单的形式与POST目标到PHP文件:

<form action="language_foo.php" method="post"> 
<input type="text" name="fname" /> 
<input type="text" name="age" /> 
<input type="Submit" name="Submit"> 
</form> 

在language_foo文件,我有:

$lang = "$_lang['item.desc']" = $_POST['fname']; 

如何节省用户输入与确切相同的结构,例如:

$lang = "$_lang['item.desc']" = "Jane"; 

为了另一个PHP文件?我可以做file_put_contents,但它只会把“Jane”存档。 有什么建议吗?

+4

为什么在*地球上*你想这样做?你试图解决什么问题,因为这似乎不是一个好主意。 –

+1

我不明白你想要完成什么。什么是'$ _lang'?你是否试图将它保存为纯文本 - 如果是这样,为什么你不逃脱它?更好的是:你想要做什么? –

+0

事情是,我想在MODX中制作某种翻译系统。上面的PHP是为网站创建词典的例子。 “$ _lang ['item.desc']”='简';使用不同的语言定义将输出一个正确的字符串为所需的语言所以,这个想法是,给另一个人翻译。这个人打开一个页面,用翻译的文本填充输入,点击“保存”按钮,以及新的翻译文件,例如$ _lang ['item.desc'] ='John';创建在正确的目录中,以便他可以自己查看更改。 –

回答

0

只需file_put_contents以下变量$variable_to_put_in_file

$variable_to_put_in_file = '$lang = "$_lang[\'item.desc\']" = "' . $_POST['fname'] . '";'; 
+0

服务器端代码执行漏洞..坏主意。 – Boann

+0

同意。我不太确定海报想要做什么,但它确实解决了他的问题。 – superphonic

+0

谢谢!这解决了这个问题。关于服务器端代码:是的,这是一个坏主意,我知道,但出于这个原因,所有工作都将在具有适当访问权限的开发人员服务器上完成。 –

0

您是否在寻找serialize()?在填入$_lang数组后,您可以将整个数组序列化为一个字符串,并通过执行file_put_contents(..., serialize($_lang))将其转储到文件中,然后使用$_lang = unserialize(file_get_contents(...))加载它。

相关问题