【发布时间】:2013-02-05 02:58:58
【问题描述】:
我正在将一个 txt 文件上传到服务器,但我想先用一点 RegEx 对其进行格式化。我如何将它发送到 PHP 脚本,更改其内容,然后上传?
我从$_FILES["userinput"]["name"] 得到它的文件名,然后用file_get_contents() 保存它的内容,然后编辑它。但是现在我如何将这个编辑的字符串移动到服务器而不是原始的、未编辑的文件。
我正在考虑创建一个新的 .txt 文件并用字符串的内容填充它然后上传,但这似乎不是很有效。有没有办法只修改尝试上传的文件?
【问题讨论】:
-
这不是“官方”上传文件的方式。以“官方”方式查看this document and example。
-
我可能误解了你的问题,但是 PHP 在服务器上运行,而不是在客户端上运行。因此,为了在文件上传之前“编辑”文件,这必须在客户端上完成。您的 PHP 页面无法做到这一点。您可以上传文件,然后对其进行修改并保存/移动/删除它。不过,同样——您不能从服务器端代码编辑客户端上的文件。
-
@mrunion 您可以使用服务器端代码很好地编辑上传的文件。
-
@Passerby 如果您要对文件进行操作,我看不出先将其读入内存然后再写入的问题。
-
是的,我知道@Waleed。基于此引用
How would I have it sent to the PHP script, change its contents, then upload it?,他想在上传之前对其进行更改。除非先上传,否则服务器端 PHP 无法做到这一点。
标签: php