使用PHP上传了一个txt文件 - 在上传文件之前更改内容?

时间:2013-02-05 02:58:59

标签: php

我正在将txt文件上传到服务器,但我想先用一点RegEx格式化它。我如何将它发送到PHP脚本,更改其内容,然后上传?

我从$_FILES["userinput"]["name"]获取文件名,然后使用file_get_contents()保存其内容,然后进行编辑。但是现在我如何将这个编辑过的字符串移动到服务器而不是原始未编辑的文件。

我正在考虑创建一个新的.txt文件并用字符串的内容填充它然后上传它,但这看起来效率不高。有没有办法只修改试图上传的文件?

1 个答案:

答案 0 :(得分:2)

在PHP上传文件之前,它会保存为临时文件,该文件包含文件的内容,当您上传文件时,它基本上传了您的临时文件。因此,您需要做的就是更改名称为$_FILES['userinput']['tmp_name'];的文件内容,当您上传它时,将获取修改后的临时文件并上传。
编辑文件很简单,以下是如何执行此操作的示例:

$filevalue = file_get_contents($_FILES['userinput']['tmp_name']);
$newfilevalue = PUT YOUR CODE HERE!
file_put_contents($_FILES['userinput']['tmp_name'], $newfilevalue);

注意:如果我帮忙,请点击绿色勾号或1点向上按钮!