【问题标题】:Write to file in PHP with a variable as the filename使用变量作为文件名在 PHP 中写入文件
【发布时间】:2012-02-14 05:18:31
【问题描述】:

我有一个将给定字符串写入文本文件的脚本...

我有通过 PHP 写入 txt 文件的经验....

我想在提交表单时写入文件,并且我有脚本正在工作以写入文件“ users/user_txt/$username.txt ”。

但它会将文件名保存为 $username.txt。

这是代码:

$fp = fopen('users/user_txt/$username.txt', 'a+');
$fwrite = fwrite($fp, "," . $log_write);

这会创建一个空白文本文件并附加它,或者在不存在文件时创建文件...

但是,它将文件名保存为/$username.txt

我正在从表单中获取变量“$username”,这个回显是正确的...

但我需要它来实际创建文件名:

DJ-PIMP.txt

如果我在表单上提交我的用户名 DJ-PIMP...

假设我填写表格并输入用户名dave123

我需要这样的脚本写入文件:

$fp = fopen('users/user_txt/dave123.txt', 'a+');

我将如何编码,以便在我提交表单时(一旦提交表单,变量 $username 将是“dave123”)。

【问题讨论】:

标签: php forms variables filenames


【解决方案1】:

您上面的代码示例使用单引号,它按字面意思表示所有内容。使用:

$fp = fopen("users/user_txt/$username.txt",'a+'); $fwrite = fwrite($fp, "," . $log_write);

或者

$fp = fopen('users/user_txt/'.$username.'.txt', 'a+'); $fwrite = fwrite($fp, "," . $log_write);

【讨论】:

  • $fp = fopen('users/user_txt/'.$username.'.txt', 'a+');
  • Paul 感谢代码框编辑,我的机器人发布了答案,所以没有格式化选项... DJ PIMP 大声笑不知道为什么双引号解决方案会给出错误,它们应该是等效的
猜你喜欢
  • 2014-04-17
  • 2021-04-12
  • 2016-08-01
  • 1970-01-01
  • 2013-10-12
  • 2015-07-15
  • 2013-10-03
  • 2018-09-01
  • 1970-01-01
相关资源
最近更新 更多